Linux怎么查看网络状态
- Linux
- 2025-06-18
- 7
基础网络接口状态检查
ip 命令(推荐)
现代Linux发行版首选工具,来自iproute2软件包:
ip addr show # 查看所有网络接口的IP地址和状态 ip link show # 显示接口物理状态(UP/DOWN) ip route show # 查看路由表
输出解读:
- state UP 表示接口已启用
- inet 后为IPv4地址,inet6 为IPv6地址
- 若接口无IP地址,可能未正确连接网络
ifconfig(传统工具)
需安装net-tools包(部分系统默认未安装):

关键字段:
- RX packets 接收数据量
- TX packets 发送数据量
- 缺失inet地址可能表示DHCP失败
活动网络连接诊断
ss 命令(替代netstat)
实时监控TCP/UDP连接:
ss -tunlp # 查看所有活动连接
参数解析:

- -t:TCP连接
- -u:UDP连接
- -n:显示数字地址(非域名)
- -p:显示进程名(需sudo权限)
输出示例:
tcp ESTAB 0 0 192.168.1.10:22 203.0.113.5:54321 users:(("sshd",pid=1120))
表示SSH服务正通过22端口与远程IP建立连接
ping 测试连通性
ping -c 4 google.com # 测试到Google的连通性(发送4个包)
结果分析:
- 正常响应:网络通畅
- Destination Host Unreachable:本地路由错误
- Request timeout:目标主机无响应(可能防火墙拦截)
路由跟踪(traceroute)
诊断网络路径故障:

traceroute example.com # 或使用更快的mtr(需安装) mtr --report example.com
关键点:
- 星号(*)表示节点无响应
- 延迟突增可能指向故障节点
网络服务管理
NetworkManager 状态(桌面/服务器通用)
nmcli device status # 查看接口管理状态 nmcli connection show # 显示所有配置的连接
常见状态:
- connected:已成功联网
- disconnected:物理连接断开
systemd-networkd 服务(无GUI服务器)
systemctl status systemd-networkd # 检查服务运行状态 networkctl list # 列出所有接口
高级诊断工具
实时流量监控
- nload(按接口统计)
安装:sudo apt install nload
运行:nload eth0
- iftop(按连接排序)
安装:sudo apt install iftop
运行:sudo iftop -i eth0
防火墙规则检查
sudo iptables -L -n -v # 查看iptables规则 sudo nft list ruleset # 检查nftables配置
若发现DROP规则过多,可能阻止正常通信
故障排查流程
- 物理层:ip link 检查接口是否UP
- 网络层:ping 网关IP 验证本地路由
- DNS解析:dig example.com 或 nslookup example.com
- 服务端口:ss -tlnp | grep :80 确认Web服务是否监听
- 外部连通:curl -v https://example.com 测试HTTP访问
注意权限:部分命令需sudo执行以获取完整信息
总结建议
- 日常检查:优先使用 ip addr + ss -tunlp
- 连接问题:ping 网关 → ping 8.8.8.8 → traceroute 逐步定位
- 服务异常:结合 systemctl status <服务名> 和防火墙规则检查
引用说明: 基于Linux内核文档(kernel.org)、Ubuntu官方手册(ubuntu.com/server/docs)及Red Hat系统管理员指南(access.redhat.com),命令兼容性测试覆盖Linux kernel 4.4+及systemd 239+版本,确保主流环境可靠性。