Linux网络排查需按层递进:先查本机接口状态(ip addr、ethtool),再逐级ping(127.0.0.1→本机IP→网关→8.8.8.8→baidu.com),接着验证路由(ip route)和DNS(resolv.conf、dig),最后检测端口(nc/nmap)与防火墙(iptables/firewalld)。

Linux网络异常排查,核心是按层递进、由近及远:先确认本机协议栈和接口是否就绪,再逐级验证局域网、网关、外网、DNS和应用端口。不盲目重启,也不跳步查DNS却忽略物理链路。
用 ip addr show 查所有接口状态。重点看三点:接口名(如 eth0、ens33)是否显示 UP;是否有合法 IPv4 地址(非 169.254.x.x 这类链路本地地址);MAC 地址是否正常。若为 DOWN 状态,执行 sudo ip link set eth0 up 启用;若无地址且应走 DHCP,运行 sudo dhclient eth0 尝试获取。也可用 ethtool eth0 看物理链路是否连通(Link detected: yes)。
按顺序执行,中断即定位故障层级:
用 ip route show 确认默认路由是否存在且指向正确网关;若需访问特定网段(如 10.20.0.0/16),检查是否有对应条目,没有可临时加:sudo ip route add 10.20.0.0/16 via 192.168.1.1 测试。DNS 方面,先看 cat /etc/resolv.conf 是否含可用 nameserver(如 114.114.114.114 或 8.8.8.8);再用 dig baidu.com @8.8.8.8 绕过系统配置直连测试,若成功说明本地 DNS 配置或缓存异常;加 +trace 参数(dig +trace baidu.com)可观察解析逐级过程,识别卡在哪一级服务器。
即使网络层通,应用也可能被拦。用 nc -zv 目标IP 端口(如 nc -zv 192.168.1.100 22)测 TCP 端口是否开放;批量扫描可用 nmap -p 22,80,443 目标IP。本机防火墙常是隐形杀手:sudo iptables -L -n -v 查规则,重点关注 OUTPUT 和 FORWARD 链;systemd 系统还可运行 sudo firewall-cmd --list-all。若怀疑是它,临时禁用测试:sudo systemctl stop firewalld(CentOS/RHEL)或 sudo ufw disable(Ubuntu/Debian)。
基本上就这些。流程不复杂,但容易忽略物理层和 DNS 缓存这类“低级”环节。动手前花十秒看灯、看 IP、ping 三次,省下大把时间。
以上就是Linux如何排查网络异常_常见连通性问题定位思路与排错流程【指导】的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号