按“ping→traceroute→端口→DNS→接口/路由/防火墙”五步排查,90%网络问题5分钟内可定位:先分层ping验证连通性,再用mtr/traceroute查路径中断点,接着用ss/nc测端口服务,然后绕过DNS直连测试解析,最后检查网卡状态、路由表和防火墙规则。

Linux网络不通,别急着重装系统或重启服务器。按“ping → traceroute → 端口 → DNS → 接口/路由/防火墙”这个顺序排查,90%的问题能在5分钟内定位清楚。
不是随便ping一个网址就完事,要分层验证:
ping 127.0.0.1 —— 不通说明TCP/IP协议栈异常,可能是内核模块损坏或netfilter配置错ping $(ip route | grep default | awk '{print $3}') —— 若丢包或超时,问题出在本机到局域网出口之间,检查网线、交换机端口、网卡UP状态(ip link show)、ARP缓存(arp -a)ping 8.8.8.8 和 ping baidu.com —— 前者通后者不通,基本锁定DNS问题;两者都不通,说明路由或上游网络异常当ping网关或外网失败时,用路径分析快速定位故障节点:
mtr -r -c 10 google.com(比traceroute更稳定,自带统计);若无mtr,用 traceroute -n google.com(加-n跳过DNS解析,提速)能ping通≠服务可用。常见误区是“IP通了就以为SSH/HTTP能连”,其实端口可能被拦、服务未启、或监听绑定错了地址:
ss -tuln | grep :22(看SSH)、ss -tuln | grep :80(看Web)nc -zv 192.168.1.100 22 或 telnet 192.168.1.100 80 —— 显示“Connected”才表示端口通且服务响应Connection refused,说明端口开着但没服务监听;如果卡住或timeout,才是防火墙/安全组/路由拦截DNS问题常被误判为“网络不通”。比如能ping通8.8.8.8但打不开网页,极大概率是DNS层面故障:
cat /etc/resolv.conf,确保有可用nameserver(如nameserver 114.114.114.114)dig @8.8.8.8 baidu.com +short 或 nslookup github.com 223.5.5.5
dig +trace baidu.com —— 从根域名服务器开始逐级下推,看到哪一级返回空或NXDOMAIN,就能精准定位污染、劫持或配置错误点以上都正常?那问题往往藏在底层配置里:
ip addr show,确认目标网卡是UP且有正确IP;若显示state DOWN,用 ip link set eth0 up 启用ip route show,检查default via是否存在、下一跳IP是否可达、是否有冲突的静态路由覆盖了默认路径systemctl stop firewalld 临时关闭;iptables用户运行 iptables -L -n -v 查看INPUT链是否DROP了ICMP或目标端口以上就是Linux网络不通怎么排查_ping到traceroute完整流程【技巧】的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号