NAT网关 - 最大连接限制

Modified on: Sun, 22 Sep 2019 23:00:02 +0800

我知道足够的网络是危险的。 NAT的细节低级细节并不是我特别了解的。

我今天早些时候偶然发现自己正在讨论将一堆节点放在NAT网关后面。 (1个公共IP地址和X个私有LAN地址)。我在TCP协议中调用了源位和目标端口字段的16位限制,(http:/ /www.ietf.org/rfc/rfc793.txt - 第15页)并提到它会限制我们大约65,000个连接(65536)。 - 我对这个答案不再那么自信了。你能帮我详细说明一下吗?

据我所知,我们这边的传入端口(服务器端口)可以接受与sourceIP x SourcePort组合一样多的连接。让我们暂时折扣那些,并专注于源自局域网的连接,通过NAT网关,以及随机端口上的随机主机结束。

在普通的[Linux]系统上,我相信每个源IP的端口限制为1个。如果我们假装我们生活在一个简单的世界中,每个系统只有1个IP地址,那么“普通系统”将被限制为绝对最大值为65536个连接。

1)在TCP中,单个源IP是否限制为65536 MAX理论输出连接?

2)或者每个远程主机的实际限制是65536个连接?

2) [另写方式]:可以将相同的源端口用于其他remoteHostIP:RemotePort组合吗?

例如:(以下是否可以?)

Source IP   |Source Port |Remote IP|Remote Port   
192.168.0.20:36500   -->    8.8.8.8:23
192.168.0.20:36500   -->    8.8.4.4:23

3)对于“非常规系统”[思科路由器充当NAT网关],问题1和2的答案是否有所不同?

Ex:一个专门的网络设备,它有一个面向公众的IP和最多约65,000个Lan IP [或更多]?是否存在魔法,或者总是回答问题2:是的? (或没有)

4)上述问题都假定为有状态TCP连接。这个故事与UDP这样的无状态连接有什么不同吗?

最终:

5)我们的局域网是否会通过一个公共IP地址限制在65536(或其他一些理论限制)与外界的并发连接?

谢谢! :)


出于这个问题的目的,我们支持非常BEEFY和全新的Cisco Nexus设备(我认为7000系列)。除非可以专门量化,否则忽略内存/等限制可能更好。

最佳答案

如果我错了,请纠正我,但这是我理解的方式。限制是每个客户端/服务器/端口。所以鉴于此。

1)在TCP中,单个源IP是否限制为65536 MAX理论输出连接?

没有。我相信它相对于同一目的地IP的最大理论值为65536。

Windows工作站(非服务器版本)具有限制,使得此数字更少。 Linux有资源限制,但它们通常不受普通用户的影响,您可以轻松调整它们。

当你开始增加64K附近的数字时,你可能会达到其他资源限制。

由于资源有限,消费级路由器可能会有更低的限制。

2)或者每个远程主机的实际限制是65536个连接?

3)对于“非常规系统”[思科路由器充当NAT网关],问题1和2的答案是否有所不同?

没有

4)上述问题都假定为有状态TCP连接。这个故事与UDP这样的无状态连接有什么不同吗?

UDP是无连接的。所以这与UDP无关。

5)我们的局域网是否会通过一个公共IP地址限制在65536(或其他一些理论限制)与外界的并发连接?

没有


在状态防火墙跟踪连接并提供其他跟踪功能的情况下,是的,这些模块本身可能有限制。操作系统没有说明使用哪种防火墙/ NAT路由器,因此我们甚至无法推测它目前可能施加的限制。

作者:,Matt

相关问答

添加新评论