Linux下如何查看网络连接状态 netstat命令快速检查网络连接情况

netstat 是 linux 系统中用于查看网络连接状态的常用工具,其基本用法包括:1. 查看所有活跃连接使用 netstat -tuln;2. 查看特定协议连接如 tcp 用 netstat -tl、udp 用 netstat -ul;3. 显示进程信息需加 -p 参数并配合 sudo;4. 使用 netstat -s 可查看详细的网络统计信息。掌握这些命令可有效排查网络问题和监控服务运行。

Linux下如何查看网络连接状态 netstat命令快速检查网络连接情况

linux系统中,查看网络连接状态是排查网络问题、监控服务运行情况的常见操作。netstat 是一个非常实用的命令行工具,可以用来显示网络连接、路由表、接口统计信息等。虽然现在有些发行版默认不安装 netstat(被 ss 命令取代的趋势),但如果你还在使用它或想快速掌握基本用法,这篇文章能帮你快速上手。

Linux下如何查看网络连接状态 netstat命令快速检查网络连接情况


查看所有活跃的网络连接

最常用的命令之一就是查看当前所有的活动网络连接:

Linux下如何查看网络连接状态 netstat命令快速检查网络连接情况

netstat -tuln
  • -t:表示 TCP 协议
  • -u:表示 UDP 协议
  • -l:列出监听中的连接(LISTEN 状态)
  • -n:以数字形式显示地址和端口号(不进行 DNS 解析)

这个命令会输出类似下面的内容:

Proto Recv-Q Send-Q Local Address           Foreign Address         State       tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      tcp6       0      0 :::80                   :::*                    LISTEN      udp        0      0 0.0.0.0:5353            0.0.0.0:*                          

你可以看到哪些端口正在监听,比如 ssh(22)、http(80)等。如果发现你不熟悉的端口在监听,可能需要进一步检查安全性。

Linux下如何查看网络连接状态 netstat命令快速检查网络连接情况


查看特定协议的连接(TCP 或 UDP)

如果你想只关注某一种协议,比如 TCP:

netstat -tl

或者 UDP:

netstat -ul

这样可以减少干扰,更容易定位问题。例如,DNS 查询通常是基于 UDP 的,所以查看 UDP 连接时可能会看到 53 端口相关的信息。


显示进程信息(结合权限)

有时候你不仅想知道哪个端口在监听,还想了解是哪个程序在使用它。这时候可以用:

sudo netstat -tulnp
  • -p:显示进程 ID 和名称(需要 root 权限)

输出示例:

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1234/sshd

通过这种方式,你可以知道某个服务是否正常启动,或者是否有异常进程占用了关键端口。


检查连接状态和统计信息

除了查看连接本身,你还可以查看网络连接的状态统计:

netstat -s

这会显示 TCP、UDP、IP 等协议的详细统计数据,比如收到的数据包数量、丢包情况等。适合用于分析网络性能或排查潜在问题。


总的来说,netstat 是个简单但功能强大的工具,虽然现在很多系统开始推荐使用 ss 或 ip 命令替代它,但在排查网络连接问题时,它的直观性还是很有帮助的。只要记住几个常用参数组合,就能快速定位大部分基础问题。

基本上就这些,熟练之后几分钟就能搞定一次全面的网络连接检查。

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享