Linux网络状态怎么检测_高频场景实战指导更易上手【指导】

3次阅读

linux网络排查需分层操作:物理层用ip a、operstate、ethtool确认链路;协议层分段ping(127.0.0.1→网关→8.8.8.8→域名);应用层用ss/netstat查端口、systemctl查服务、telnet/nc测连通;疑难问题用tcpdump抓包分析。

Linux网络状态怎么检测_高频场景实战指导更易上手【指导】

Linux网络状态检测不靠猜,靠命令组合和逻辑判断。核心是分层排查:物理层→协议层→应用层,每层用对应工具快速验证。

看网卡是否在线、IP配对没

先确认网卡有没有被识别、是否启用、IP是否正确分配。常用命令:

  • ip a(推荐):查看所有接口状态、IP、UP/DOWN标记,比ifconfig更现代
  • cat /sys/class/net/eth0/operstate:直接读取物理链路状态(up/down)
  • ethtool eth0:查双工、速率、连接是否建立(需root),特别适合怀疑网线或交换机端口问题

常见误区:看到ip a里有IP就以为通了——其实可能只是配置成功,链路没通。务必结合operstate或ethtool确认“物理连通”。

测通不通:从本地到远端分段验证

别一上来就ping百度,要像修水管一样分段堵点:

  • ping 127.0.0.1:验证本机协议是否正常
  • ping 网关IP(如192.168.1.1):验证局域网可达性,失败大概率是网卡、网线、交换机或网关问题
  • ping 8.8.8.8:绕过dns,验证外网IP层连通性
  • ping www.baidu.com:最后一步,验证DNS解析+全链路

如果卡在某一步,就聚焦那一层。比如能ping通网关但ping不通8.8.8.8,重点查路由表(ip route)或防火墙iptables -L -nnft list ruleset)。

查端口和服务:应用层是否真在听

网络通≠服务可用。常见场景:Web打不开、ssh连不上、数据库拒绝连接。

Linux网络状态怎么检测_高频场景实战指导更易上手【指导】

神笔马良

神笔马良 – ai让剧本一键成片。

Linux网络状态怎么检测_高频场景实战指导更易上手【指导】 320

查看详情 Linux网络状态怎么检测_高频场景实战指导更易上手【指导】

  • ss -tuln | grep :22:查22端口有没有进程监听(-t TCP, -u udp, -l listening, -n 数字端口)
  • netstat -tulnp | grep :3306:同上,兼容老系统(需安装net-tools)
  • systemctl is-active sshd:确认服务进程是否运行中
  • telnet 192.168.1.100 80nc -zv 192.168.1.100 443:从客户端侧测试端口是否可连(模拟真实访问)

注意:ss比netstat更快更轻量;若ss没结果,先确认服务是否启动,再查是否绑定在127.0.0.1(只本机可连)而非0.0.0.0(全网可连)。

抓包定位诡异问题:不是所有故障都报错

当ping通、端口开着,但业务仍异常(如http超时、TLS握手失败),就得看实际收发了什么包:

  • tcpdump -i eth0 host 1.1.1.1 -w debug.pcap:抓指定主机通信,保存为文件供wireshark分析
  • tcpdump -i any port 53 -nn:监控DNS请求响应,排查解析慢或失败
  • sudo ss -i:显示TCP连接的详细指标(重传、RTT、丢失率),适合怀疑网络质量差

小技巧:加-nn跳过DNS反解,避免干扰;抓包前先用ping或curl复现问题,再立刻抓,避免信息过载。

基本上就这些。熟练掌握这四类操作,90%的Linux网络问题都能快速定位。关键是别跳步——先确认物理连通,再查IP路由,然后验端口,最后抓包。顺序对了,效率翻倍。

text=ZqhQzanResources