pptpd ***傳輸"大包,大長度,大字節"致使數據傳輸,失敗數據不加載,內容不顯示.

現象:nginx

發現公司後臺經過×××有的能夠顯示,有的不能顯示,不能返回任何數據.不通過×××就沒問題.服務器


排查:tcp

點擊某些頁時,感受是沒任何反應;看後臺日誌發現每次請求都是到達服務器的.
ide

通過查看nginx日誌,發現這2個請求的 字節大小不一樣,大概超過1000多的就打不開.
spa

27.115.1.1 - - [27/Sep/2014:12:12:53 +0800] "GET /admin/game_setting/ HTTP/1.1" 200 1659 "http://1.1.1.1:1688/admin/left/" "Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Firefox/31.0"日誌

27.115.1.1 - - [27/Sep/2014:12:13:11 +0800] "GET /admin/makeconfig/ HTTP/1.1" 200 654 "http://1.1.1.1:1688   /admin/left/" "Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Firefox/31.0"ip

firebug直接顯示流產了,返回字節爲0get


解決:it

這個時候問題的答案就有了.是網卡之間的MTU(最大傳輸單元)問題.有的服務器之間若是不一致,就會出現這類問題.
io

直接在***機器上netstat -i 觀察下各網卡的MTU值是多少,還有ppp0的值.

我這裏直接指定mss(最大報文長度)的長度(之前作***的時候都設置了,此次竟然忘記了,換服了才發現這個問題.)

/sbin/iptables -A FORWARD -p tcp --syn -s ***地址池IP.0/24 -j TCPMSS --set-mss 1356 

iptables裏必需要有的2條#service iptables statu

Chain POSTROUTING (policy ACCEPT)num  target     prot opt source               destination         1    MASQUERADE  all  --  192.168.100.0/24     0.0.0.0/0 Chain FORWARD (policy ACCEPT)num  target     prot opt source               destination         1    TCPMSS     tcp  --  192.168.100.0/24     0.0.0.0/0           tcp flags:0x17/0x02 TCPMSS set 1356


(好久沒在這裏發文章了,難道是變懶了,呵呵... 想一想每次有問題都是問百度谷歌,這要感謝前輩們的貢獻.今天這個問題不是很好找,因此仍是發出來分享給須要的朋友)

相關文章
相關標籤/搜索