當前位置:才華齋>網路>網路診斷>

診斷網路連通性六大Linux命令

網路診斷 閱讀(1.73W)

如果網路連線失敗,服務也會失敗,使用者將面臨連續性中斷。因此,管理員必須擁有合適的工具和命令來分析與解決網路連線問題。 幾乎所有Linux例項都需要網路連線以提供服務。下面有六個可用的Linux網路命令來確認連通性。

診斷網路連通性六大Linux命令

  Ip

Linux網路命令中的瑞士軍刀,ip命令,旨在配合子命令工作,如ip link管理和監控網路連線,ip addr 管理IP地址,以及ip route 管理路由表。你可以使用ip link show、ip addr show或ip route show來檢視目前的連線狀態、地址配置和路由配置。更進一步,可以使用 ip addr add dev eth0 來臨時分配一個IP地址到eth0網路介面上。

ip 命令還提供了更高階的選項。例如,ip link set promisc on 臨時設定網路介面為混雜模式,允許其捕捉所有網路上收到的資料包——不止那些註明了屬於自己媒體訪問控制地址(MAC地址)的資料包。ip命令與其子命令適合用於排除網路連線問題,但在重啟伺服器後,之前這些配置都會失效。

  tcpdump

tcpdump是個Linux網路命令,可以讓資料中心管理員分析網路活動。這個包嗅探工具可以捕獲通過特定網口的流量。如果不帶任何引數,如tcpdump -i eth0,命令將顯示大量路過的資料包。另一種常見選項是使用 -w,如 tcpdump -i eth0 -w ,可以將結果寫入檔案,管理員後期可以使用Wireshark應用程式進行分析。

  Wireshark

Wireshark是款圖形化工具,管理員可以用來分析和嗅探網路資料包。tcpdump能夠通過標準輸出顯示捕獲的網路流量,管理員可以使用Wireshark的提供的圖形使用者介面通過滑鼠點選的方式,檢視網路通訊流。這個多用途工具可以執行實時資料包捕獲,也可以閱讀由其他工具建立的資料檔案,如tcpdump。

  ethtool

如果你還在使用傳統的物理網絡卡,不是虛擬機器,你會喜歡ethtool的。這個工具允許管理員監控和設定網絡卡的不同屬性。例如,使用ethtool -i eth0 檢視eth0介面的硬體資訊,或者通過 ethtool -S eth0 獲得關於eth0接收包的狀況統計。命令 ethtool -p eth0可以讓網絡卡上的指示燈閃爍,可以用來指示需要與eth3口交換線纜的網口,是個很好的'技巧。但在此之前,請確認在用的是eth3,而不是其他網路介面。

使用ethtool時,請牢記你不可能始終都得到有用的資訊,因為網絡卡驅動決定你能看到的內容。

  ncat

一般來說,管理員會使用telnet來確認特定埠的連線,驗證服務的某個特定埠是否可用。Ncat——是netcat古老工具的現代替代品。

舉例來說,可以通過ncat 某主機地址 80 命令來建立往某主機80埠的連線,ncat同樣還有更多高階功能,如建立兩主機之間的連線。使用ncat -l 4444可以用ncat在主機上監聽4444埠,接著在另外一臺主機上使用 ncat某主機地址4444 來建立兩臺主機之間的連線。工具本身而言,不是很有用,但利用管道命令,可以實現更多選項。例如,在一臺主機上使用命令 ncat -l 4444 > somefile ,在另一臺主機上輸入 echo hello | ncat hostname 4444,可以將其他主機上通過網路傳來的命令寫入本主機的檔案中。

  dhclient

如果你使用動態主機配置協議來獲得網路上的IP地址,每個結點都需要在啟動後能夠聯網。但是,如果DHCP伺服器在客戶端啟動時無法訪問,你會獲得一個169.254範圍的無效地址,而且不會自動嘗試獲取新地址。為避免此問題,使用dhclient命令立即申請新地址。例如可以使用Linux網路命令dhclient eth0 立即更新主乙太網裝置IP地址。

一些Linux網路命令已經發生了巨大的變化,但還有一些,如ifconfig,沒有變化。該工具已經有些過時,而且不再顯示相關資訊。要解決網路連線問題,請大家考慮上述六項命令。