最近更新时间:2025-12-30 11:21:16
网络连通性是云服务器运行的基础保障,当业务出现访问异常、延迟增大或连接中断时,快速定位网络问题是运维人员的重要技能。本教程将介绍如何使用Linux内置工具进行系统性的网络诊断与故障排查。
Linux系统提供了丰富的网络诊断工具,以下是常用工具的快速参考:
工具名称 | 主要功能 | 适用场景 |
|---|---|---|
ping | 测试主机连通性 | 基础网络连通性测试 |
traceroute | 追踪数据包路径 | 定位网络路由问题 |
mtr | 实时路由追踪 | 持续监控网络质量 |
nslookup/dig | DNS解析查询 | 域名解析问题排查 |
netstat/ss | 网络连接状态查看 | 端口监听、连接状态检查 |
telnet/nc | 端口连通性测试 | 服务端口可访问性验证 |
tcpdump | 网络数据包捕获 | 深度协议分析、流量监控 |
iperf3 | 网络带宽测试 | 带宽性能测量 |
安装网络诊断工具套件。
yum install -y iputils traceroute mtr bind-utils net-tools基础环境检查。
# 检查网络接口配置
ip addr show
# 或使用传统命令
ifconfig -a
# 检查路由表
ip route show
# 或
route -n
# 检查DNS配置
cat /etc/resolv.conf用户反馈无法访问XX网站,现象如下:
测试TCP/IP协议栈是否正常。
结论:TCP/IP 协议栈正常。若异常,需检查系统网络配置或重启网络服务。
测试网关是否正常。
结论:网关连通性正常。若异常,检查网关设备是否在线(如路由器、交换机),或本地防火墙是否拦截 ICMP 包。
外网连通性测试(公共 DNS)。
结论:外网连通性正常。若异常,检查网关是否有外网访问权限(如路由器 NAT 配置、宽带欠费)。
目标域名Ping测试。
问题:目标域名 ping 完全丢包,初步怀疑 DNS 解析或路由问题。
nslookup 解析测试(故障点)
问题:本地 DNS 服务器(198.18.254.30)返回 NXDOMAIN(域名不存在),说明 DNS 解析失败
排查方向:
a. 检查 DNS 配置文件是否存在无效服务器:cat /etc/resolv.conf。
b. 更换公共 DNS 服务器。
c. 清除本地 DNS 缓存。
DNS 解析恢复后,若仍无法访问网站,执行mtr命令追踪路由路径。
mtr -rwc 20 目标网址场景 1:完全正常(无丢包、低延迟)。
Start: 2025-12-13T10:00:00+0800
HOST: localhost.localdomain Loss% Snt Last Avg Best Wrst StDev
1.|-- 192.168.1.1 0.0% 20 1.2 1.5 1.0 2.0 0.3
2.|-- 10.0.0.1 0.0% 20 5.1 5.5 4.8 6.2 0.4
3.|-- 223.112.0.1 0.0% 20 10.2 11.0 9.8 12.5 0.6
4.|-- 180.76.0.1 0.0% 20 15.1 16.2 14.5 18.0 0.8
5.|-- 目标服务器IP 0.0% 20 18.2 19.0 17.5 20.5 0.7结论:网站路由全链路可达,无丢包、低延迟;若仍无法访问,建议排查网站内部异常(如目标端口未开放、应用故障),可通过tennet目标网址的80 测试端口连通性。
场景2:中间路由丢包(防火墙过滤 ICMP,端口仍通)。
Start: 2025-12-13T10:05:00+0800
HOST: localhost.localdomain Loss% Snt Last Avg Best Wrst StDev
1.|-- 192.168.1.1 0.0% 20 1.1 1.3 1.0 1.8 0.2
2.|-- 10.0.0.1 0.0% 20 5.0 5.3 4.9 6.0 0.3
3.|-- ??? 100.0% 20 0.0 0.0 0.0 0.0 0.0 # 丢包100%
4.|-- ??? 100.0% 20 0.0 0.0 0.0 0.0 0.0 # 丢包100%
5.|-- 目标服务器IP 0.0% 20 25.1 26.0 24.5 28.0 0.7 # 目标服务器可达结论:中间运营商 / 路由节点开启了 ICMP 包过滤(防火墙策略),导致 mtr的 ICMP 包被丢弃,但业务端口(如 80、443)的 TCP 包不受影响,网站实际可达;若无法访问,建议排查应用层问题。
场景3:目标服务器丢包。
Start: 2025-12-13T10:10:00+0800
HOST: localhost.localdomain Loss% Snt Last Avg Best Wrst StDev
1.|-- 192.168.1.1 0.0% 20 1.2 1.4 1.0 2.0 0.3
2.|-- 10.0.0.1 0.0% 20 5.2 5.5 4.9 6.1 0.4
3.|-- 223.112.0.2 0.0% 20 10.5 11.2 9.9 12.8 0.7
4.|-- 目标服务器IP 50.0% 20 50.1 60.5 45.0 80.0 10.2 # 目标丢包50%结论:目标服务器丢包率达 50%,可能是服务器负载过高(CPU / 内存占满)、带宽瓶颈或防火墙限流。
建议:1. 检查服务器资源使用情况(top命令);2. 查看应用日志是否有连接拒绝记录;3. 联系网站运维团队排查服务器状态。
场景4:全程丢包。
Start: 2025-12-13T10:15:00+0800
HOST: localhost.localdomain Loss% Snt Last Avg Best Wrst StDev
1.|-- 192.168.1.1 0.0% 20 1.1 1.3 1.0 1.9 0.2
2.|-- 10.0.0.1 0.0% 20 5.1 5.4 4.8 6.0 0.3
3.|-- 223.112.0.3 100.0% 20 0.0 0.0 0.0 0.0 0.0
4.|-- ??? 100.0% 20 0.0 0.0 0.0 0.0 0.0
...
30.|-- ??? 100.0% 20 0.0 0.0 0.0 0.0 0.0结论:目标服务器所在网络与本地网络不通,可能是跨运营商限制、地域访问策略拦截或路由配置缺失;
建议:1. 测试其他运营商 DNS 或更换网络环境重试;2. 联系本地 IDC 或运营商排查路由策略;3. 若为企业内网,检查跨网段路由配置。
遵循 “从本地到远程、从底层到上层” 的顺序:先验证本地协议栈(ping 127.0.0.1)→ 网关 → 外网 IP → DNS 解析 → 路由 → 端口 → 应用,避免盲目排查。
工具组合使用:基础故障用 ping+nslookup 快速定位;复杂路由问题用 mtr来判断。
DNS 解析优先级:NXDOMAIN错误优先检查 DNS 配置,更换公共 DNS 通常能快速解决。
ICMP 包过滤陷阱:部分服务器 / 运营商会过滤 ICMP 包(ping/mtr包但端口通),此时需以telnet/nc的端口测试结果为准,不可仅凭 ICMP 丢包判定网络中断。
纯净模式
