1
Chigogo OP 。。。
|
2
atc 2016-01-06 20:15:30 +08:00 via Android
够用的,路由器对外端口号不是一个内网主机独占,可以共用
|
3
wy315700 2016-01-06 20:16:54 +08:00
对称 NAT
|
4
ayouwei 2016-01-06 20:17:08 +08:00
端口并不能扩展, 但是 IP 可以。
如果并发连接数超过 65535 , 需要增加公网 IP 解决 |
5
abcbit 2016-01-06 20:21:51 +08:00
你以為運營商 nat 怎麼解決的?就是 100.64.0.0/10 所用的技術
一個 ip 只有 65535 個端口,不夠用只能擴展 ip 。但實際上家用 nat 下的端口佔用沒那麼誇張,一般情況足夠用 |
6
ChangeTheWorld 2016-01-06 20:24:38 +08:00
多公网 IP 负载均衡,数据包打上回流标记确保源 /目标地址 一致,运营商的 NAT 就是这么玩的
|
7
yexm0 2016-01-06 20:25:55 +08:00 via Android
同好奇移动的大内网是怎么做到那么多用户共用那几个 ip 的。
|
8
ayouwei 2016-01-06 20:35:35 +08:00 2
@yexm0 因为绝大部分连接是短连接, ms 级别就可以完成数据传输, 连接关闭之后端口就可以分配给其它新连接使用; 在某一个时刻连接数达到端口数上限的概率就小了。 如果有 10 个 IP , 那么并发上限就是 65W , 正常用户行为很难同时搞出这么多连接
需要保持长连接的场景较少 |
9
jasontse 2016-01-06 21:11:58 +08:00 via iPad
192.168.1.2:52631 -> *:45296 -> 1.1.1.1:80
192.168.1.3:78996 -> *:45296 -> 2.2.2.2:80 端口是可以根据不同远程主机复用的,实在不够了就只能加出口 IP 负载均衡。 |
10
jasontse 2016-01-06 21:14:23 +08:00 via iPad
另外路由器上 655360 个以太网端口也是有挑战的, MAC 地址表没这么大。
|
11
msg7086 2016-01-06 23:30:12 +08:00
公网端口通过对方 IP 来映射,达到多个连接复用单个端口的效果。
如果不复用的话需要增加出口 IP 来增加连接数。 很多大企业的网络接入都会提供多个公网 IP 地址,实际上就有这个效果。 |
12
rrfeng 2016-01-06 23:31:53 +08:00
[如果说,路由器端在硬件上扩充端口数]
你是在逗我= = |
13
ming2281 2016-01-06 23:43:39 +08:00
有多个进程没有关系,反正每台电脑分配一个私有网络地址(看这个 ip 池子有多大), 路由器最多到 ip 层, 只管转发 ip 报文就行, tcp 层的事情它管不着, 所以进程的事情与它无关(这是主机应当考虑的问题)
有多台电脑没有关系,路由器所能连接电脑做了上限(这个连接数应当是进行过充分考虑的,不必担心) |
14
webjin 2016-01-07 06:47:59 +08:00 via Android
@ming2281NAT 工作在几层?
|
15
auser 2016-01-07 08:41:35 +08:00 via Android
生产系统上正在这么用
SNAT 端口搭配目的 IP 和协议一起用 这样的话 基本上不会存在不够用的问题 |
16
mhycy 2016-01-07 08:59:14 +08:00
题主犯了个很常见的错误。
网络上,一个通讯需要 4 个信息进行标记 本地 IP:本地端口 <-> 对端 IP:对端端口 很显然在本地 IP ,对端 IP ,对端端口不变的时候,可用链路=端口的可用数 理论上对于一个对端服务器 IP 的一个端口, NAT 单 IP 同一时间的可用链路是 65535 即便是 QQ 这也是大学城等级的使用量了 |
17
Chigogo OP @ayouwei 你这个在理
@abcbit 也许吧但是企业如果同开着 100 台电脑和 100 台手机,连接数还是相当可观的。弄不好就不够了呢? @ChangeTheWorld 在理 @jasontse 192.168.1.2:52631 -> *:45296 -> 1.1.1.1:80 192.168.1.3:78996 -> *:45296 -> 2.2.2.2:80 这么搞得起来? @jasontse 不会的, @rrfeng 我说的是运输层端口,不是交换机物理端口。好吧,按照你那么理解…… @msg7086 多 IP 分流我能理解,但是“公网端口通过对方 IP 来映射”,不太好理解 @ming2281 NONONONO ,路由器是用到运输层端口的 @auser 稍微讲讲呗。我今天在想这个问题,我们公司可能就几十台电脑,但如果是大企业,好几层楼的,本地局域网用 B 类保留地址,那么还是必须解决这个问题的。书上习题总假设说企业会得到一个地址段,尼玛如今怎么可能好吗?就一个 IP 看来是很难做的。 |
21
jasontse 2016-01-07 09:33:40 +08:00 via iPad
@Chigogo
五元组,源地址 / 源端口 / 协议 / 目标地址 / 目标端口,只要有一项不同它就是另一组。 |
22
lyh3222 2016-01-07 09:38:37 +08:00
然后, UDP 和 TCP 是分开的,所以可以看成是 65536*2 个端口号
|