当前位置:首页>Linux>Linux基础 | netstat 命令详解

Linux基础 | netstat 命令详解

  • 2026-09-09 01:26:15
Linux基础 | netstat 命令详解

在 Linux 网络排障中,有一类问题非常常见:

服务明明启动了,但访问不了

端口到底有没有在监听?

是程序问题,还是网络问题?

这时候,一个老牌但依然好用的命令就该登场了——netstat。

今天这篇文章,我们从netstat 能干什么 → 常用参数 → 实战场景,系统讲清它的使用方式。

一、netstat 是干什么的?

netstat 全称network statistics,主要用于查看:
网络连接状态
端口监听情况
路由信息
网络接口统计
一句话总结它的核心价值:从操作系统层面,看清“谁在用网络、用的是什么端口”。

二、netstat 的安装与确认

在部分新系统中,netstat 默认未安装。
1️⃣ 安装(CentOS / Rocky)
yum install -y net-tools
2️⃣ 验证是否可用
netstat -h
能看到帮助信息,说明安装成功。

三、最常用的 netstat 命令组合

1️⃣ 查看所有端口监听情况(必会)
netstat -tuln
参数解释:
-t:TCP
-u:UDP
-l:监听状态
-n:以数字形式显示端口
示例输出:
2️⃣ 查看端口对应的进程(排障利器)
netstat -tulnp
示例输出:
tcp  0  0 0.0.0.0:80  0.0.0.0:*  LISTEN  1234/nginx
这一步可以直接回答:到底是谁占用了这个端口?

四、查看当前网络连接状态

1️⃣ 查看所有 TCP 连接
netstat -tn
示例:
tcp  ESTABLISHED 192.168.1.10:22 192.168.1.20:54321
常见状态含义:
  • LISTEN:监听中
  • ESTABLISHED:已建立连接
  • TIME_WAIT:连接刚断开
2️⃣ 判断服务器是否被大量连接
netstat -ant | wc -l
可快速判断当前连接数量,常用于排查异常流量。

五、一个真实排障案例

场景:服务启动了,但访问失败
排查步骤:
1️⃣ 服务状态正常
systemctl status nginx
2️⃣ 查看端口是否监听
netstat -tuln | grep 80
如果没有任何输出,说明:服务可能没有成功绑定端口,问题在程序层。
如果端口存在,再结合防火墙、网络进一步排查。

六、查看路由与接口信息(了解即可)

查看路由表
netstat -rn
查看网卡统计
netstat -i
在复杂网络问题中,这些信息有时非常关键。

七、netstat 与 ss 的关系

你可能听过一句话:netstat 已过时,用 ss。
事实是:
ss 更快、更现代
netstat 更直观、更好记
在实际工作中:会看 netstat,就已经能解决 80% 的网络排障问题。

八、写在最后

关于 netstat,你至少要掌握:

netstat -tuln 看端口

netstat -tulnp 找进程

用它判断“端口问题还是程序问题”。
在 Linux 网络工具链中,netstat 是:连接“服务状态”和“网络访问”的关键桥梁。
如果这篇文章对你有帮助,欢迎点赞、收藏、转发,我们下篇继续聊 Linux基础 —— ss命令的使用。

最新文章

随机文章