Linux 网络故障排查:从网卡到路由的完整思路 - 夜莺博客

Linux 网络故障排查:从网卡到路由的完整思路

服务器无法连通时,盲目重启或乱改配置只会让问题更复杂。本文提供一套生产环境可复用的 Linux 网络故障排查思路:先判断是本机问题还是网络设备问题,再按"网线网卡 → SELinux/防火墙 → IP 网关 → ping → 路由 → DNS → 数据包追踪"逐层缩小范围,附 ethtool、ping、tracepath 等命令的详细参数说明。

一、网线和网卡检查

先看网卡灯:服务器网卡绿灯常亮正常,交换机绿灯闪烁表示在传数据。用 ethtool 检查链路是否物理连通:

ethtool ens33                  # 查看链路状态(Link detected: yes)
ethtool -i ens33               # 驱动信息
ethtool -p ens33 10            # 让网卡 LED 闪烁定位物理位置
ethtool -S ens33               # 收发包统计
ethtool -s ens33 speed 1000 duplex full autoneg on port tp   # 修改速率/双工/自协商

二、SELinux 与防火墙

SELinux 与 iptables/firewalld 是最容易产生干扰的两项,先确认服务端口是否被防火墙拦截、SELinux 是否 enforcing。

三、IP 地址与网关

用 ip addr / ifconfig 查看网卡地址,nmcli 管理网络连接,确认默认网关配置正确。

四、ping 连通性测试

ping -c 3 -i 0.5 -n -s 1024 -I 192.168.2.220 192.168.2.220
# -c 次数 -i 间隔 -n 不解析主机名 -s 包大小 -I 源地址

五、路由检查

route -n          # 查看路由表与网关
ip route          # 现代推荐用法

六、DNS 检查

检查 /etc/hosts 与 /etc/resolv.conf,用 nslookup、dig、host 验证域名解析是否正常。

七、数据包追踪

tracepath -b www.baidu.com -l 1000 -m 5
# -4/-6 协议版本 -l 初始包大小 -m 最大 TTL -n 不查主机名

tracepath 已替代旧 traceroute,可逐跳显示路径与 PMTU 发现结果;配合 mtr 可观察每跳丢包率。

八、硬件故障

以上都正常仍不通时,考虑网卡/交换机端口/线缆等硬件故障,必要时更换硬件验证。

相关阅读

Linux 性能排障见本站 Linux Performance Troubleshooting: Tools and Commands;高阶命令实战见 Linux 运维高阶命令实战:五大场景故障排查指南;FortiGate 排障命令见 FortiGate FortiOS CLI Troubleshooting: Cheat Sheet

原文链接:https://www.cnblogs.com/yihr/p/17778962.html