Debian-Squeeze
找不到網際網路連接中斷的根源
我正在執行 Debian-Squeeze,而我的伺服器 (PowerEdge r410) 正在經歷零星的網際網路連接中斷。我的網站和 SSH 變得完全不可用。據我所知,一切都配置正確 - 當我啟動伺服器時,所有 IP 地址都正確,
ifconfig
並且路由表已正確填充。如果伺服器正在執行,ifdown -a && ifup -a
同樣將所有參數放在正確的位置。該站點可用,並且ssh
按預期工作。上次(今天)發生中斷時,我訪問了機器並登錄。 ping 網關導致 100% 丟包。所以我過去常常
route
確保網關在路由表中。route
在傳遞下面的第一行和第二行之間有 5-10 秒的延遲:192.168.0.0 * 255.255.255.0 U 0 0 0 eth0 default 192.168.0.1 0.0.0.0 UG 0 0 0 eth0
返回此資訊後,我再次
route
ping 網關並獲得 100% 的連接。我立即檢查了我的網站,它也已備份並執行。ping
並且route
是我的網站重新上線之前使用的唯一命令。那是今天早上,現在伺服器又停機了。我已經
cron
配置為ifdown -a && ifup -a
明天凌晨 4 點,所以我們將看看它是否有效。同時,是否有人對可能導致此問題的原因有任何想法?順便說一句,沒有 DHCP,一切都是靜態的。
/etc/網路/介面:
auto lo iface lo inet loopback allow-hotplug eth0 iface eth0 inet static address 192.168.0.121 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1 dns-nameservers 192.168.0.10 dns-search mysite.com
如果
route
速度很慢,請嘗試使用route -n
. 這會關閉 DNS 查找(在最好的情況下這很慢,並且在網路問題期間,需要很長時間才能超時)。至於您的連接問題,請檢查連結是否正確打開。我看到了由伺服器和路由器錯誤地協商雙工操作引起的間歇性連接問題。如果一個設置為自動,而另一個設置為手動(全雙工或半雙工),則可能會出現競爭條件,導致大量封包遺失,最終導致鏈路崩潰。有關詳細資訊,請參見此處。
更新:這是解釋雙工不匹配的更好連結,因為 wiki 頁面不包括全部內容: