Linux网络状态怎么检测_核心逻辑讲解助你快速掌握【技巧】

8次阅读

linux网络故障排查需按层推进:先查网卡 UP 与 IP 配置(ip a/ip link),再依序 ping 127.0.0.1、本机 IP、网关、8.8.8.8 及域名,继而验 dns 防火墙 路由 路径、端口 连通性与网卡错误计数。

Linux 网络状态怎么检测_核心逻辑讲解助你快速掌握【技巧】

Linux 网络状态检测不是靠猜,而是按层推进、由近及远。核心逻辑就一条:先确认本机能“说话”,再看它“跟谁说”“说得通不通”“说得对不对”。只要顺序不乱,90% 的问题一眼就能定位。

看网卡和 IP 配得对不对

网络连不上,第一反应不该是重启或重装,而是查物理层和网络层基础是否就位。

  • ip a 接口 状态——重点看你要用的网卡(如 ens33 或 eth0)是不是 UP,有没有 inet(IPv4)地址;如果只有 169.254.x.x,说明 DHCP 没拿到地址,属于配置失败
  • ip link show 看链路是否检测到(Link detected: yes),配合网卡灯判断网线、交换机 端口 是否真通
  • ip route showdefault via 行——没有默认 路由,数据包根本不知道往哪发,外网必然不通

测连通性要分四步走

ping 不是随便 ping 一个域名就完事,必须按顺序验证协议 、本地接口、局域网出口、外部服务四个层级。

  • ping 127.0.0.1 -c 4:通不过 = 系统 TCP/IP 协议 异常,不是 网络问题,是系统级故障
  • ping 本机局域网 IP -c 4:不通 =网卡驱动、接口 DOWN、或 IP 配错
  • ping 网关 IP -c 4:不通但前两步都通,问题在网线、交换机、网关设备或 ARP 异常
  • ping 8.8.8.8 -c 4ping baidu.com -c 4 对比:前者通后者不通→DNS 问题;两者都不通→网关之后断了,该上 traceroute

查 DNS 和 防火墙 别跳过

能通 IP 但打不开网页,八成栽在这两个地方。它们不拦“连”,只拦“用”,容易被忽略。

  • cat /etc/resolv.conf 是否有 nameserver 行,且地址可用;临时改成 nameserver 8.8.8.8 再试,立判真假
  • nslookup baidu.comdig baidu.com 直接看解析结果,比 ping 域名更准——因为绕过了系统缓存和 hosts 干扰
  • 查防火墙:sudo iptables -L -n -v(iptables)或 sudo firewall-cmd –list-all(firewalld),重点看 OUTPUT 和 FORWARD 链是否误拦了出站流量

追路径和看端口补最后缺口

前面都通却访问不了某个服务?说明问题不在“通不通”,而在“达不达”或“开不开”。

  • traceroute baidu.commtr -r baidu.com:看到哪一跳开始 * * * 或延迟暴增,就锁定故障节点(比如第三跳超时,大概率是运营商出口或中间 路由器 问题)
  • nc -zv baidu.com 443 测试目标端口是否开放;ss -tuln | grep :80 查本机有没有程序真在监听 80 端口——服务没起、端口被占、绑定错地址,都会导致“连得上却打不开”
  • 怀疑丢包或性能差?cat /proc/net/dev 看 RX-ERR/TX-DRP 是否非零,持续增长说明网卡、驱动或线路有硬伤

基本上就这些。不复杂但容易忽略——关键不是记命令,而是理解每一步在验证哪一层、排除哪类可能。照着顺序敲几遍,下次网络一抖,你心里就有谱了。

站长
版权声明:本站原创文章,由 站长 2025-12-13发表,共计1341字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
1a44ec70fbfb7ca70432d56d3e5ef742
text=ZqhQzanResources