Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> Linux 教學

Linux 網路連線故障診斷實戰:從 ifconfig 到路由表的分層排查法

編輯:Linux 教學

嚴格按手冊配置,Linux 仍可能無法上網——網路配置本質複雜,經驗往往比手冊更管用。本文提煉一線實戰經驗,構建分層排查體系,從網卡基礎配置到路由優先級,助管理員快速定位並恢復網路。

第一招:ifconfig 一眼看穿網卡基礎配置

無法上網時,首要動作執行 ifconfig(或 ip addr),重點驗證三大核心項:

1. IP 獲取狀態(DHCP vs 靜態)

  • DHCP 模式:檢查 IP 是否落在 DHCP 池規劃網段。若顯示 0.0.0.0 → 無法聯繫 DHCP Server(線路斷、Server 掛、地址池耗盡)
  • 靜態 IP:逐項核對 IP/子網掩碼/預設閘道/DNS,重點排查 IP 衝突、網段錯誤

2. 網卡介面狀態

  • 輸出含 UP BROADCAST RUNNING → 驅動載入正常、介面啟用
  • 無輸出或缺 UP → 驅動未載入、介面被關閉、硬體故障
  • 手動啟用:/etc/rc.d/init.d/network restart(需 root 權限)
  • 重啟無效 → 重插網卡/換槽/換卡排查硬體

3. Linux vs Windows ifconfig 差異提醒

  • Windows ipconfig /all 才顯示 DNS;Linux ifconfig 直接顯示完整配置(無 /all 參數)
  • 網路服務重啟指令需 root 權限,普通用戶會被拒絕

第二招:路由表檢查——多網卡場景的隱形殺手

單網卡通常無路由問題;雙/多網卡跨網段時,預設閘道優先級決定生死。

實戰案例:雙網卡 SSH 對外不通

環境:

  • eth0: 10.10.1.239/24(對外映射 SSH)
  • eth1: 192.168.200.30/24(內網資料同步)

現象:外部無法 SSH 連入,網卡/IP/服務均正常。

排查:route -n 顯示:

Destination     Gateway         Genmask         Flags Metric Ref Use Iface
10.10.1.0       0.0.0.0         255.255.255.0   U     0      0   0   eth0
192.168.200.0   0.0.0.0         255.255.255.0   U     0      0   0   eth1
0.0.0.0         192.168.200.1   0.0.0.0         UG    0      0   0   eth1  ← 預設閘道指向內網!

根因:回包走 eth1 內網閘道,無法到達外網。

修復:

route del default
route add default gw 10.10.1.254

外部 SSH 即刻恢復。

第三招:DNS 解析鏈驗證

兩大關鍵檔案控制解析順序:

  • /etc/host.conf(傳統):order hosts,bind → 先查 /etc/hosts,再查 /etc/resolv.conf 指定 DNS
  • /etc/nsswitch.conf(現代標準,優先級更高):hosts: files dns → 同邏輯,功能更強

排查思路:確認解析順序 → 檢查 /etc/resolv.conf DNS Server 可達性 → dig/nslookup 實測解析結果。

第四招:服務埠與防火牆/SELinux 雙重檢查

  1. 服務埠開放驗證:telnet IP PORT 或本機 netstat -ntl 確認 LISTEN 狀態
  2. 服務配置檢查:如 sshd_config 中 PermitRootLogin no 導致 root 禁登 → 改 yes 重載服務
  3. iptables 策略:iptables -L -n 檢查 INPUT/OUTPUT 鏈。預設 DROP 需顯式放行:
    iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT
    iptables -A OUTPUT -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT
  4. SELinux 快速定位:setenforce 0 暫時關閉驗證。故障消失 → 微調布林值/策略,而非永久關閉

第五招:區域網連通性環檢

ping 127.0.0.1      # 本機協議棧
ping <本機IP>       # 介面可達
ping <區域網他機>   # 二層互通
ping <閘道IP>       # 三層出口

逐層驗證,精準斷點。

總結:六步分層排查法

  1. 物理層(線/卡/交換機)
  2. 介面/IP/路由層(ifconfig、route)
  3. DNS 解析層(resolv.conf、nsswitch.conf)
  4. 服務埠層(telnet/netstat + 服務配置)
  5. 存取控制層(iptables + SELinux)
  6. 區域網互通層(Ping 環檢)

按圖索驥,99% 網路故障可在這六步內精準定位解決。平時多記基線、多演練,關鍵時刻手不抖、心不慌。

Copyright © Windows教程網 All Rights Reserved