糯米文學吧

位置:首頁 > 網絡 > 網絡診斷

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

如果網絡連接失敗,服務也會失敗,用户將面臨連續性中斷。因此,管理員必須擁有合適的工具和命令來分析與解決網絡連接問題。 幾乎所有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,沒有變化。該工具已經有些過時,而且不再顯示相關信息。要解決網絡連接問題,請大家考慮上述六項命令。