答案:本文介绍在Ubuntu 24.04系统中使用netstat命令监控网络连接的方法,涵盖查看所有活动连接(netstat -a)、显示进程PID与名称(-p参数)、列出监听端口(-l)、查看接口统计信息(-i)、显示路由表(-r)以及结合grep过滤关键连接,帮助用户排查网络问题。

如果您需要监控和分析Linux系统中的网络连接状态,可以使用netstat命令查看当前的连接、端口监听情况以及网络协议统计信息。通过该工具能够帮助您排查网络异常或服务未响应等问题。
本文运行环境:Dell XPS 13,Ubuntu 24.04
一、显示所有活动的网络连接
netstat命令默认只显示部分连接信息,使用特定参数可列出所有正在使用的套接字连接,包括TCP、UDP以及UNIX套接字。
1、打开终端并输入以下命令:netstat -a。
2、观察输出结果中包含的协议类型(如tcp、udp)、本地地址与外部地址、连接状态等字段。
3、若希望仅查看TCP连接,可将命令改为 netstat -at;若仅查看UDP,则使用 netstat -au。
二、显示程序PID和进程名称
为了定位是哪个进程占用了某个端口或建立了某条连接,可以通过启用程序信息显示功能来获取PID和进程名。
1、在终端执行命令:netstat -ap。
2、检查输出列中的“PID/Program name”字段,确认对应的服务进程。
3、如需过滤特定协议,例如TCP连接及其关联进程,使用 netstat -atp。
三、显示监听状态的端口
监听端口通常表示有服务正在等待客户端连接,识别这些端口有助于了解系统开放了哪些网络服务。
1、运行命令:netstat -l 来列出所有监听中的套接字。
2、结合协议筛选,例如查看所有监听的TCP端口:netstat -lt。
3、同时显示服务所属进程,使用 netstat -ltp 命令。
四、显示网络接口统计信息
除了连接信息外,netstat还支持展示各网络接口的数据收发情况,可用于初步判断流量异常。
1、输入命令:netstat -i 查看所有网络接口的基本统计。
2、观察每块网卡的MTU、RX-OK/TX-OK(接收/发送成功包数)、错误包数量等指标。
3、若需更详细的接口通信数据,可结合持续刷新模式:watch netstat -i。
五、显示路由表信息
路由表决定了数据包转发路径,分析该表有助于理解主机如何选择下一跳地址。
1、执行命令:netstat -r 显示内核路由表内容。
2、重点关注“Destination”、“Gateway”、“Genmask”和“Use”列。
3、若要查看完整的数字形式IP地址(不解析为主机名),添加-n参数:netstat -rn。
六、结合grep进行关键连接过滤
当系统连接较多时,直接查看全部输出效率低下,可通过管道配合grep按关键字筛选。
1、例如查找所有与80端口相关的连接:netstat -an | grep :80。
2、进一步限定为只显示ESTABLISHED状态的HTTP连接:netstat -an | grep :80 | grep ESTABLISHED。
3、也可搜索特定IP地址的连接记录,如 netstat -an | grep 192.168.1.100。










