網絡syno數據包

 關於syn爲什麼沒有迴應的問題真是鬱悶了好久。
現象就是在客戶端發出syn包的時候,服務器端對客戶端的syn包不做任何迴應。
在網上逛了逛,終於找到有人也發生了這樣的情況,發生的原因解釋如下:
當客戶端發出的syn包帶有時間戳的情況下,經過NAT轉換後,如果使用的端口被之前使用過,而且時間戳大於本次syn包中的時間戳。系統將會直接丟棄。造成本次鏈接無法正常完成TCP/IP的3次握手。【該功能和rfc1323有關,後面有鏈接】
解決的方法很簡單,分爲兩種:
在客戶端:關閉rfc1323
在服務端:設置sysctl.conf裏面tcp_timestamps=0也可以只用命令sysctl -w net.ipv4.tcp_timestamps=0
靠,我就差一點就定位到時間戳
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章