网络故障排查常用命令速查手册

发布于2026-08-17 11:47 阅读11次 整理网络故障排查最常用的命令工具,涵盖 ping、traceroute、nslookup、netstat、tcpdump 等,说明每个命令的适用场景和关键参数,附典型故障的分析思路,帮助快速定位网络问题。
# 网络故障排查常用命令速查手册
## 前言
网络问题排查讲究"分层定位":先看物理连通,再看 IP 配置,然后是路由、DNS、端口、应用。每一层都有对应的命令。本文按排查顺序整理最常用的命令和参数。
## 第一层:连通性 ping
```bash
# 基本连通性测试
ping 192.168.1.1
# 指定次数
ping -c 4 baidu.com # Linux
ping -n 4 baidu.com # Windows
# 持续 ping,观察丢包
ping -t 8.8.8.8 # Windows 持续
ping 8.8.8.8 # Linux 默认持续,Ctrl+C 停止
# 指定包大小(测 MTU)
ping -s 1400 -M do 8.8.8.8 # Linux
ping -l 1400 -f 8.8.8.8 # Windows
```
判断:
- 通 → 网络层没问题,往上查
- 不通 → 检查网线/网卡/交换机端口/IP 配置
## 第二层:路由 traceroute
```bash
# 跟踪路由路径
traceroute baidu.com # Linux
tracert baidu.com # Windows
# 用 ICMP 而非 UDP(穿透防火墙)
traceroute -I baidu.com
# 指定最大跳数
traceroute -m 20 baidu.com
```
看输出中每一跳的延迟,定位是哪一跳丢包或超时。出现 * 号可能是中间设备不响应,不一定是故障。
## 第三层:DNS 解析
```bash
# 查询域名解析
nslookup baidu.com
# 指定 DNS 服务器查询
nslookup baidu.com 8.8.8.8
# dig 更详细
dig baidu.com
dig @8.8.8.8 baidu.com +short
# 反向解析
dig -x 8.8.8.8
```
判断 DNS 是否正常:域名解析不出 IP,但直接 ping IP 通 → DNS 问题。
## 第四层:端口与连接
```bash
# 查看监听端口
netstat -tunlp # Linux
netstat -ano # Windows
# 查看所有连接
ss -tunap # Linux 推荐用 ss
# 测试端口是否开放
telnet 192.168.1.10 8080
nc -zv 192.168.1.10 8080 # netcat
# 查看路由表
ip route show # Linux
route print # Windows
```
## 第五层:抓包分析 tcpdump
```bash
# 抓取某网卡所有流量
tcpdump -i eth0
# 抓指定端口
tcpdump -i eth0 port 80
# 抓指定主机
tcpdump -i eth0 host 192.168.1.10
# 保存到文件供 Wireshark 分析
tcpdump -i eth0 -w capture.pcap
# 只抓 TCP 握手包
tcpdump -i eth0 "tcp[tcpflags] & tcp-syn != 0"
```
Windows 下没有 tcpdump,可以用 Wireshark 图形界面抓包。
## 第六层:网络配置检查
```bash
# Linux 查看 IP 配置
ip addr show
ip link show
# Windows
ipconfig /all
# 测试本地回环
ping 127.0.0.1
# 查看网关
ip route show default
```
## 典型故障分析思路
### 场景1:上不了网
```bash
ping 127.0.0.1 # 1. 回环通 → 网卡驱动正常
ping 192.168.1.1 # 2. 网关通 → 内网正常
ping 8.8.8.8 # 3. 公网 IP 通 → 路由正常
ping baidu.com # 4. 域名不通 → DNS 问题
```
按这四步,能快速圈定问题在哪一层。
### 场景2:某服务连不上
```bash
telnet 目标IP 端口 # 1. 测端口通不通
ss -tunlp # 2. 看服务有没有在监听
iptables -L -n # 3. 检查防火墙规则
tcpdump -i eth0 port 端口 # 4. 抓包看流量走向
```
## 小结
网络排查的核心是分层:连通性 → 路由 → DNS → 端口 → 应用,逐层用对应命令确认。记住 ping、traceroute、nslookup、ss、tcpdump 这几个工具,加上清晰的排查思路,大部分网络问题都能自己定位。