網路故障場景排查技巧,作為維運一定要遇事不慌!
2025.08.06
                    
                    今天就來分享Linux網路排查的常見故障場景及使用的指令工具。
當你的伺服器連不上、介面報錯、頁面載入慢、連接埠打不開…你可能第一時間會問:
“到底哪出了問題?”
別慌!看看下面6 大常見網路故障場景,告訴你如何用Linux 指令快速定位問題、高效排查故障!
本文只講伺服器網路排查思路,不講網路設備排查,那是網工的活。

1. 伺服器存取不了公網了
(1) 現象
- ping www.baidu.com 無回應
 - curl 報錯 Could not resolve host
 
(2) 排查指令
ip a              # 查看是否有 IP 地址
ip route          # 查看是否有默认网关
ping 8.8.8.8      # 判断是否能 ping 通外网 IP
cat /etc/resolv.conf  # 检查 DNS 设置- 1.
 - 2.
 - 3.
 - 4.
 
(3) 分析指引
- ip a 看到沒有IP?網路卡可能沒啟用,重新啟動下網路卡
 - ping IP 通但網域不通 → DNS 問題,檢查 /etc/resolv.conf 或使用 dig
 - DNS 伺服器寫成內網位址卻沒服務?改成 8.8.8.8 試試!
 
也有可能內網環境限制訪問,這些指令都沒用,趕緊找網路工程師,他幹的。
2. 服務正常但連不上
(1) 現象
- 網頁/介面請求逾時
 - 程式無法連接到某個連接埠
 
(2) 排查指令
netstat -lntup             # 检查服务是否监听端口,或者用ss
netstat -lntup | grep 8080 # 查是否是你要的程序
iptables -L -n      # 检查是否被防火墙挡了
firewall-cmd --list-all   # 如果防火墙是firewalld就用这个,ubuntu使用ufw做防火墙
telnet localhost 8080  # 测试本地端口,如果通再从其他服务器测试该端口- 1.
 - 2.
 - 3.
 - 4.
 - 5.
 
(3) 分析指引
- 服務沒監聽埠?程式沒起來or 設定錯誤
 - 監聽127.0.0.1 但別人訪問不了?改為監聽 0.0.0.0
 - 防火牆攔了?記得 firewall-cmd 或 ufw 檢查,還有雲端伺服器的安全性群組
 
都沒啥問題,那就重啟,最後大殺招。
3. 同一區域網路不能互ping
(1) 現象
- A ping B 不通,但B 能ping 網關
 - 內網通訊失敗
 
(2) 排查指令
ip a   # 查看IP
ip route   # 查看路由
ping <对方 IP>    # 互ping
arp -a    # 看看ARP缓存
tcpdump -i eth0 icmp    # 抓到看看
cat /etc/hosts.deny    # 查看是否被限制访问- 1.
 - 2.
 - 3.
 - 4.
 - 5.
 - 6.
 
(3) 分析指引
- 子網路遮罩錯了→ 路由計算出錯
 - 查看ARP 快取確認是否解析了MAC
 - 抓包看有沒有ICMP 請求發出或回應(tcpdump)
 - hosts.deny檔案也有可能攔截
 
還有就是網路工程師禁ping了,怎麼排查都沒用,找他,甩鍋技能得用上。
4. 網站訪問慢,頻繁卡頓
(1) 現象
- 使用者頻繁回饋網站慢、回應慢
 - 日誌報 504 Gateway Timeout
 
(2) 排查指令
ping www.lige.com -c 4  # 先ping一下,测试连通性
traceroute www.liege.com   # 跟踪路由,看看经过哪些设备
curl -w "@curl-format.txt" -o /dev/null -s http://your_site  # curl检测
netstat -antp | grep ESTABLISHED | wc -l- 1.
 - 2.
 - 3.
 - 4.
 
curl-format.txt 可以列印請求耗時詳情(TTFB、連線時間等)。
(3) 分析指引
- ping 很高延遲?線路問題
 - traceroute 某一跳延遲高/超時?網路瓶頸點
 - curl 看的是DNS → 連線→ 首包時間
 
終極殺招,重啟服務看看效果,不行開發優化。
5. 服務監聽正常,但外部存取不了!
(1) 現象
- 服務正常監聽,但別人訪問不了
 - curl localhost OK,但curl 公網IP 不通
 
(2) 排查指令
netstat -lntup | grep 端口  # 查看端口监听情况
curl localhost:端口  # 本地端口检测
curl 公网IP:端口      # 外网检测
iptables -L
firewalld-cmd --list-all   # 防火墙检测
telnet IP  端口   # 访问处telnet检测端口,也有可能是域名访问- 1.
 - 2.
 - 3.
 - 4.
 - 5.
 - 6.
 
(3) 分析指引
- 程式監聽 127.0.0.1,公網訪問不了?
 - 防火牆忘開放埠?
 - 雲端服務商的安全群組也要記得檢查!
 
6. 想測試頻寬是不是太慢?
(1) 現象
- 上下跑帶寬跑不滿
 - 用戶訪問慢,但伺服器沒壓力
 
(2) 排查指令
iperf3 -s  # 一台服务器作为服务端
iperf3 -c <服务端 IP>- 1.
 - 2.
 
(3) 分析指引
- 內網測速看網路線/交換器瓶頸
 - 跨區域測速可排除營運商/跨境網路問題
 
場景跟排查指令對照圖:
場景  | 推薦指令  | 
無法存取公網  | ip , ping, ip route, dig  | 
介面逾時/服務不可達  | ss , telnet, iptables  | 
區域網路機器無法互通  | arp , ping, tcpdump  | 
網站訪問慢  | traceroute , curl, netstat  | 
服務外部無法存取  | ss , firewalld, curl  | 
網路頻寬測試  | iperf3  | 
會用指令≠ 會排查問題。懂場景,用指令解決問題,才是高手!