最近发现一个奇怪的问题,一台服务器上部署的网站,用外网访问是正常的,但是使用公司内网访问就访问不上,不仅网站访问不上,连服务器有时候都连接不上。
原因是在内核优化时启用了net.ipv4.tcp_tw_recycle参数
这个参数是默认关闭的,之所以打开是由于这个参数开启后,可以使TCP连接中TIME-WAIT sockets的快速回收,但是在NAT网络下,导致大量的TCP连接建立错误、
所以在公司内部有时候能访问,有时候访问不上
1.先确定参数
依次执行如下命令,查看当前内核配置,确认该参数值为“1”。
cat /proc/sys/net/ipv4/tcp_tw_recycle
cat /proc/sys/net/ipv4/tcp_timestamps
2.在/etc/sysctl.conf配置文件添加如下内容。
net.ipv4.tcp_tw_recycle=0
net.ipv4.tcp_timestamps=0
3.执行如下命令,使配置生效。
sysctl -p
修改完成后,在公司中访问就正常了
记录下,对于网上提供的调优参数还是要多注意