最新消息(2025年8月):Linux内核6.10版本进一步优化了网络栈性能,部分端口查询工具响应速度提升约15%,安全专家提醒,随着物联网设备激增,定期检查服务器端口占用情况比以往更加重要。
作为Linux系统管理员或开发者,经常会遇到"端口被占用"的报错,或是需要确认某个服务是否正常监听,掌握快速查看端口占用的方法,能让你在故障排查时事半功倍,以下是五种实用命令,从基础到进阶,总有一款适合你。
虽然逐渐被新工具取代,但仍是多数Linux发行版的预装组件:
netstat -tulnp
-t
显示TCP端口 -u
显示UDP端口 -l
仅列出监听中的端口 -n
直接显示端口号(不解析为服务名) -p
显示占用端口的进程信息 适用场景:快速检查本机所有活跃监听端口,尤其适合旧系统环境。
由Linux内核团队开发,速度更快、信息更详细:
ss -tulnp
参数与netstat类似,但支持更丰富的过滤条件,例如查看所有已建立的TCP连接:
ss -t state established
优势:响应速度比netstat快3倍以上,特别适合高负载服务器。
不仅能看端口,还能查文件、进程等资源占用:
lsof -i :22 # 查看22端口占用情况
或列出所有网络连接:
lsof -i
亮点:
lsof -i | grep "nginx"
) 虽然主要用于网络探测,但本地端口检查同样出色:
nmap -sT -p- localhost
-sT
TCP全连接扫描(需root权限) -p-
扫描所有65535个端口 注意:部分企业环境可能限制nmap使用,建议事先确认合规性。
适用于通过systemd管理的服务:
systemctl list-sockets --all | grep "LISTEN"
适用场景:快速确认哪些系统服务正在监听端口,尤其适合排查自启动服务。
ss -tulnp | grep "80"
ps -p $(lsof -t -i:22) -o cmd
watch -n 2 "ss -tulnp"
小贴士:如果发现不明端口占用,建议立即用journalctl -u 服务名
检查相关日志。
掌握这五种方法,无论是日常维护还是紧急排障,你都能像老司机一样游刃有余,记得根据实际场景灵活组合使用——简单查询用ss/lsof,深度分析上nmap,系统服务交给systemctl,总有一款能帮你快速锁定问题!
本文由 澹台韵 于2025-08-02发表在【云服务器提供商】,文中图片由(澹台韵)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://vps.7tqx.com/wenda/516136.html
发表评论