
在Linux系统中,netstat 是一个网络统计工具,可以用来查看网络连接、路由表、接口统计信息以及端口占用情况。虽然部分新系统推荐使用 ss 或 lsof,但 netstat 依然广泛使用且功能强大。
1. 检查是否安装 netstatnetstat 属于 net-tools 软件包,在一些现代发行版(如 Ubuntu 20.04+、CentOS 8)中可能默认未安装。
检查命令:netstat --version
若提示命令未找到,需先安装:
- Ubuntu/Debian: sudo apt install net-tools
- CentOS/RHEL: sudo yum install net-tools 或 sudo dnf install net-tools
2. 查看端口占用的基本命令
使用以下命令查看当前所有监听和已建立的连接端口:
netstat -tuln
- -t:显示 TCP 连接
- -u:显示 UDP 连接
- -l:仅显示监听状态的端口(LISTEN)
- -n:以数字形式显示地址和端口号(不解析主机名和服务名)
这个命令能快速列出系统中哪些端口正在被监听。
3. 查看具体端口被哪个进程占用
要查看是哪个进程占用了某个端口,需要加上 -p 参数(显示进程PID和名称):
netstat -tulnp
- -p:显示占用端口的进程信息(需 root 权限查看其他用户的进程)
例如,查看 80 端口被谁占用:
Post AI
博客文章AI生成器
50
查看详情
netstat -tulnp | grep :80
输出示例:
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1234/nginx
说明:PID 为 1234 的 nginx 进程正在监听 80 端口。
4. 常见使用场景与技巧
以下是一些实用组合:
- 只看 TCP 监听端口:netstat -tnlp
- 只看 UDP 使用情况:netstat -ulnp
- 查看特定端口(如 22):netstat -an | grep :22
- 查看某个进程名相关的连接:netstat -anp | grep ssh
注意:由于 netstat 在部分新系统中已被标记为过时,建议了解替代命令:
- 用 ss -tulnp 替代 netstat(更快,功能类似)
- 用 lsof -i :端口号 查看端口占用,例如:lsof -i :80
基本上就这些。netstat 虽然老,但直观易懂,适合快速排查端口占用问题。掌握几个常用参数组合,日常运维足够使用。
以上就是Linux怎么使用netstat查看端口占用的详细内容,更多请关注知识资源分享宝库其它相关文章!
相关标签: linux centos nginx 端口 ubuntu 工具 路由 dnf linux系统 nginx 接口 udp linux ubuntu centos ssh debian 大家都在看: 如何在Linux命令行中进行系统监控? 如何在Linux中设置文件ACL Linux setfacl精细权限控制 Linux怎么限制服务的资源占用 Linux如何检查软件包更新的时间和日志 Linux命令行删除用户的正确方式






发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。