跑出tcp udp端口

如何解决在单个服务器上运行tcp / udp端口的Windows或Linux系统? 由于SQL连接,用户连接到互联网以及作为网关的作用,我在单个服务器上使用了大约65000个tcp / udp端口。

我build议计划angular色的分离(除非网关要求SQL位于同一主机上) – 而不是因为您的端口用尽。 如果网关不需要SQL和/或持有公司数据,那么在网关节点上的风险相当高。

说到TCP,有很多可用的端口。 你可能(虽然忽略端口共享等事情)只绑定每个地址2 16个端口,你可能有更多的活跃连接每个地址。

您甚至可以使用单个 TCP端口处理数千个连接 – 连接由多个参数定义:

SOURCEIP:源端口:destinationIP:destionationPort。

在这里看到更多 。

一个重要的参数可能是半开连接 – 如果你的某个服务有问题,可能会影响系统上运行的其他服务。 你可以在这里获得更多的信息 。

听起来像一个沉重的负载服务器在一个重要的angular色。

  • 您可以使用多个以太网接口 – 这也可以获得物理扩展。

  • 您可以在任何界面上使用多个IP地址 – 简单的软件解决scheme。

我也build议最终使用代理/ NAT

如果负载太大,请将服务器angular色拆分为其他服务器。

例如,在Windows中,如果虚拟化Windows Server Standard许可证,则可以在虚拟(1:2)中获得两个正在运行的实例,

其他想法给予更多的物理接口或虚拟IP可能在短期内有所帮助,但具有这样的angular色(SQL,网关和用户连接到互联网)不是一个好主意。

在例如,如果用户得到恶意软件,并泛滥您的网关它将放下服务器上的其他服务。

TCP / UDP中只有65,535个可用端口可用。 这是IP(协议)固有的一个限制。

您可以通过将多个IP地址分配给打开所有这些连接的计算机来解决限制。