Linux服務器常見的網絡故障排查方法

日常工作中我們有時會遇到服務器網絡不通問題,導致服務器無法正常運行。要想解決服務器網絡故障問題,通常要先進行網絡故障排查,這裏以Linux服務器爲例來看下常用的網絡故障排查方法介紹。

第步、訪問Linux服務器

出現網絡故障問題時,Linux服務器通常不能通過SSH訪問了,這時您需要採用外控制檯訪問。比如您在專用服務器上,則需要訪問IPMI控制檯;在美國VPS服務器上,可能要訪問VNC控制檯進行登錄。這兩種方法都可以在遠程SSH訪問不可用情況下,爲您提供診斷問題的權限。

通過以上兩種方法正常訪問到Linux服務器後,運行以下命令檢查下是否可以訪問Google的公共DNS服務器。PS:目前大多數國外主機商(如BlueHost、RAKsmt等)提供有24小時技術支持服務,當您服務器遇到網絡故障無法正常使用時,也可聯繫主機商及時進行解決。

ping 8.8.8.8

如果通過這個Ping命令,服務器無法到達目的地,這表明網絡配置上存在問題,下面就要查看網絡配置具體是哪裏出現了問題。

第2步、檢查網絡配置故障

首先嚐試通過ping命令(從本地計算機)ping服務器的主IP和網關,確定下Linux服務器是否有網絡連接。

ping {you see’s min IP}

如果您可以成功 ping 服務器的網關 IP,這表明網絡路由是正確的,現在可以進行下一步的故障排除。

登錄後,您可以通過執行以下命令查看到服務器的網絡路由:

oute -n

這將向您展示網絡流量如何到達您的服務器,並將證明流量確實到達了您服務器的網關 IP。

如果由於某種原因,您發現在本地計算機終端上對主服務器 IP 的 ping 嘗試無效,則表明路由主 IP 的特定接口上存在連接問題。

提示:您需要確保啓用網絡接口(例如“eth0”)——要執行此操作並檢查所有配置的接口,您可以運行以下命令:

ip dd

此命令輸出服務器上配置和可用的所有網絡接口,併爲您提供兩種相關狀態之一:“UP”或“DOWN”

如果您碰巧發現分配給您進行故障排除的 IP 的接口顯示“DOWN”狀態,您可以通過發出以下命令將其打開(並使其“UP”):

if down {intefce nme} /* bings n intefce down */

if up {intefce nme} /* bings n intefce up */

例如:if up eth0 /* 啓動接口“eth0” */

如果由於某種原因上述命令無法工作,則很有可能您正在排除故障的接口未處於 if down(和 if up)腳本檢測它的狀態。在這種情況下,請嘗試使用foce 標誌:

if down –foce {intefce nme}

if up {intefce nme}

執行此命令時,它將顯示錯誤,指出腳本未按預期(併成功)運行的原因——最可能的原因是配置文件中的語法錯誤:

①對於使用CentOS 和基於 RHEL 的服務器的用戶,請通過發出以下命令查看您的配置文件:

ct /etc/sysconfig/netwok-scipts/ifcfg-{intefce nme}

②對於使用Ubuntu 和 Debin 服務器的用戶,通過發出以下命令查看您的配置文件:

ct /etc/netwok/intefces

請注意,對於專門在 Ubuntu 8.04 LTS 以上的 Ubuntu 和 Debin 服務器上的客戶端,此命令略有不同,如下所示:

ct /etc/netpln/file.yml

網絡配置文件更改之後,通過運行以下命令來重新啓動網絡服務。

Ubuntu和Debin 8.04 LTS之前版本重啓網絡服務命令:

seice estt netwoking

Ubuntu和Debin 8.04 LTS之後版本重啓網絡服務命令:

netpln pply

基於CentOS和RedHt服務器重啓網絡命令:

seice estt netwok