Windows 服务器中,如果对外发起大量连接时,可能会出现端口耗尽的情况,原因如下:
一、动态端口较少。
二、TCP默认的Time Wait Delay时间为2分钟。
- 查看端口是否耗尽
netsh interface ipv4 show tcpstats
netsh int ipv4 show dynamicport tcp
- 增加动态端口数
# start是起始端口号,num为数量,该命令意思为从1025开始到61025结束,共60000个端口
netsh int ipv4 set dynamicport tcp start=1025 num=60000
- 修改注册表,设置Time Wait时间(最小为30s),然后重启服务器
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Tcpip/Parameters
新增值 TcpTimedWaitDelay,类型REG_DWORD , 设置为十进制30