linux系统
一、通过修改以下系统参数来解决(/etc/sysctl.conf):
-
sysctl -w net.ipv4.tcp_fin_timeout=15 #调低端口释放后的等待时间,默认为60s为15~,修改30s
-
sysctl -w net.ipv4.tcp_timestamps=1 #修改tcp/ip协议配置, 通过配置/proc/sys/net/ipv4/tcp_tw_resue, 默认为0,修改为1,释放TIME_WAIT端口给新连接使用
-
sysctl -w net.ipv4.tcp_tw_recycle=1 #修改tcp/ip协议配置,快速回收socket资源,默认为0,修改为1:
-
sysctl -w net.ipv4.tcp_tw_reuse = 1 #允许端口重用
修改后 /sbin/sysctl -p 用该命令生效
二、
1、查看liunx支持的客户端连接端口范围
cat /proc/sys/net/ipv4/ip_local_port_range
2、使用以下命令增加本地端口范围
echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range
参考网上资源1