Tcp
從 netstat -a 中刪除 tcp 條目
我有一個相當奇怪的問題,無論我做什麼或搜尋,我都無法糾正它,現在決定最初在這裡尋求幫助。
我有一個伺服器集群,大約有 10 個集群在一起。
幾週前,其中一台伺服器停止與主伺服器通信。經過調查,我發現從伺服器無法ping通主伺服器,但主伺服器仍然可以ping和從伺服器通信,但它們不再集群。
我認為這是主伺服器某處的防火牆問題,並蒐索了導致此問題的可能規則。最終,我完全刷新了規則並重新編寫了它們,但即使在刷新之後,slave 仍然無法 ping master 並且有 100% 的封包遺失。
經過進一步調查,在 netstat 中的 MASTER 上發現了一個奇怪的條目 -a 顯示從本地偵聽,即使該條目不應該存在。
Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:4084 0.0.0.0:* LISTEN tcp 0 0 xxxxx.xxxxxxxxx.xx:5941 0.0.0.0:* LISTEN tcp 0 0 dex.xxxxxxx.co.u:domain 0.0.0.0:* LISTEN
第三個條目是從屬伺服器,它是一個遠端伺服器,所以如果我沒記錯的話,不應該在本地地址下。據我所知,這似乎是鎖定的原因。又來了。
]# netstat -ntlp | grep 9954 tcp 0 0 xx.99.1x7.x:53 0.0.0.0:* LISTEN 9954/dnsmasq ~]# netstat -ntlp | grep 53 tcp 0 0 xx.99.1x7.x:53 0.0.0.0:* LISTEN
我需要幫助來刪除此條目,以便從站可以再次 ping 主站。我試過了
tcpkill host xxx.xxxxxxxx.com tcpkill host xx.99.1x7.x
但這些都無法刪除條目或允許 ping。
有什麼我錯過的嗎?主伺服器尚未重新啟動,因為它是生產伺服器。任何建議將不勝感激。
這意味著您的從站地址在您的主站中配置為本地地址。主伺服器不會 ping 從伺服器,它會在從伺服器的本地地址上 ping 自己。從站無法 ping 主站,因為主站假定返回地址是本地的,並且不會將答案發送回從站。
用於
ip addr
查看本地地址。您可以使用 刪除地址ip addr del slave-ip dev device
,但您必須找出設置地址的位置,以防止再次發生這種情況。