|
|
sysctl: cannot stat /proc/sys/net/ipv4/tcp_tw_recycle : No such file or directory( l1 W0 A4 G* S
' ^7 ?; m6 P* ]3 \7 |
9 r( t' z2 I8 p: B0 I y最近发现一个奇怪的问题,一台服务器上部署的网站,用外网访问是正常的,但是使用公司内网访问就访问不上,不仅网站访问不上,连服务器有时候都连接不上。( g# N. _6 r# E9 h6 T
原因是在内核优化时启用了net.ipv4.tcp_tw_recycle参数
' u) Y% g; N5 ]: ~! ^这个参数是默认关闭的,之所以打开是由于这个参数开启后,可以使TCP连接中TIME-WAIT sockets的快速回收,但是在NAT网络下,导致大量的TCP连接建立错误、
- F. E2 H+ Y* h/ @所以在公司内部有时候能访问,有时候访问不上
6 f/ n6 G$ o/ ~& ^! b& I1.先确定参数
% m5 O6 N0 z! `( ?0 h# a依次执行如下命令,查看当前内核配置,确认该参数值为“1”。
7 M& b0 U/ o8 |. [' o$ k1 T# f7 i6 V# Q+ {# k) j/ j2 G8 ]
cat /proc/sys/net/ipv4/tcp_tw_recycle! D" \8 _! J, u2 z
cat /proc/sys/net/ipv4/tcp_timestamps
, F( h6 i. L% C/ R% a( e' ?7 Z6 E* v e/ k
2.在/etc/sysctl.conf配置文件添加如下内容。" z) Y" h: E2 Y: G. F; \
# v4 h5 B) _+ `: A6 g
net.ipv4.tcp_tw_recycle=0
" {! H! s4 e% t2 W) i6 Snet.ipv4.tcp_timestamps=07 Z1 p. J! ^8 n* | F1 `
8 m* T# K2 b @5 ^8 |# J
3.执行如下命令,使配置生效。
' a( c" y1 o' j0 o
4 q) E7 i9 |& `8 d: b0 o2 Tsysctl -p6 t+ f$ M) x) {
2 X1 ]& f E( W4 Y- I8 X: H- u
修改完成后,在公司中访问就正常了
2 ^+ b5 B6 m, F; K记录下,对于网上提供的调优参数还是要多注意
8 E+ ]9 w: i0 s! t5 e% Y+ R) G2 [ `& h5 X* @, n2 S
6 ^) Q9 H& A; Y n+ @7 C9 {& e
|
|