日常工作中我們有時會遇到服務器網絡不通問題,導致服務器無法正常運行。要想解決服務器網絡故障問題,通常要先進行網絡故障排查,這里以Linux服務器為例來看下常用的網絡故障排查方法介紹。
第1步、訪問Linux服務器
出現網絡故障問題時,Linux服務器通常不能通過SSH訪問了,這時您需要采用外控制臺訪問。比如您在專用服務器上,則需要訪問IPMI控制臺;在美國VPS服務器上,可能要訪問VNC控制臺進行登錄。這兩種方法都可以在遠程SSH訪問不可用情況下,為您提供診斷問題的權限。
通過以上兩種方法正常訪問到Linux服務器后,運行以下命令檢查下是否可以訪問Google的公共DNS服務器。PS:目前大多數國外主機商提供有24小時技術支持服務,當您服務器遇到網絡故障無法正常使用時,也可聯系主機商及時進行解決。
ping 8.8.8.8
如果通過這個Ping命令,服務器無法到達目的地,這表明網絡配置上存在問題,下面就要查看網絡配置具體是哪里出現了問題。
第2步、檢查網絡配置故障
首先嘗試通過ping命令(從本地計算機)ping服務器的主IP和網關,確定下Linux服務器是否有網絡連接。
ping {your server’s main IP}
如果您可以成功 ping 服務器的網關 IP,這表明網絡路由是正確的,現在可以進行下一步的故障排除。
登錄后,您可以通過執行以下命令查看到服務器的網絡路由:
route -n
這將向您展示網絡流量如何到達您的服務器,并將證明流量確實到達了您服務器的網關 IP。
如果由于某種原因,您發現在本地計算機終端上對主服務器 IP 的 ping 嘗試無效,則表明路由主 IP 的特定接口上存在連接問題。
提示:您需要確保啟用網絡接口(例如“eth0”)——要執行此操作并檢查所有配置的接口,您可以運行以下命令:
ip addr
此命令輸出服務器上配置和可用的所有網絡接口,并為您提供兩種相關狀態之一:“UP”或“DOWN”
如果您碰巧發現分配給您進行故障排除的 IP 的接口顯示“DOWN”狀態,您可以通過發出以下命令將其打開(并使其“UP”):
if down {interface name} /* brings an interface down */
if up {interface name} /* brings an interface up */
例如:if up eth0 /* 啟動接口“eth0” */
如果由于某種原因上述命令無法工作,則很有可能您正在排除故障的接口未處于 if down(和 if up)腳本檢測它的狀態。在這種情況下,請嘗試使用force 標志:
if down –force {interface name}
if up {interface name}
執行此命令時,它將顯示錯誤,指出腳本未按預期(并成功)運行的原因——最可能的原因是配置文件中的語法錯誤:
①對于使用CentOS 和基于 RHEL 的服務器的用戶,請通過發出以下命令查看您的配置文件:
cat /etc/sysconfig/network-scripts/ifcfg-{interface name}
②對于使用Ubuntu 和 Debian 服務器的用戶,通過發出以下命令查看您的配置文件:
cat /etc/network/interfaces
請注意,對于專門在 Ubuntu 18.04 LTS 以上的 Ubuntu 和 Debian 服務器上的客戶端,此命令略有不同,如下所示:
cat /etc/netplan/file.yml
網絡配置文件更改之后,通過運行以下命令來重新啟動網絡服務。
Ubuntu和Debian 18.04 LTS之前版本重啟網絡服務命令:
service restart networking
Ubuntu和Debian 18.04 LTS之后版本重啟網絡服務命令:
netplan apply
基于CentOS和RedHat服務器重啟網絡命令:
service restart network
審核編輯黃宇
-
Linux
+關注
關注
87文章
11345瀏覽量
210386 -
服務器
+關注
關注
12文章
9303瀏覽量
86060 -
網絡故障
+關注
關注
0文章
29瀏覽量
8513
發布評論請先 登錄
相關推薦
評論