如何查看linux端口状态
如何查看linux端口状态详细介绍
在 Linux 中查看端口状态可以通过多种工具实现,以下是常用的几种方法:
1.
使用 netstat 命令(经典工具)
netstat 用于显示网络连接、路由表、网络接口状态等信息。
常用选项:
-t:查看 TCP 端口-u:查看 UDP 端口-l:仅显示处于监听(Listening)状态的端口-n:以数字形式显示 IP 和端口号(避免 DNS 解析)-p:显示对应的进程和进程号(需 root 权限)
示例:
bash
:80
2.
使用 ss 命令(推荐,更高效)
ss 是新一代网络统计工具,比 netstat 更高效,功能更强大。
常用选项:
-t:TCP 协议-u:UDP 协议-l:监听状态-n:数字形式-p:显示进程-a:所有状态(包括监听和非监听)
示例:
bash
ss
ss :8080
ss
3.
使用 lsof 命令(通过文件描述符查看)
lsof 用于列出打开的文件和网络连接,包括端口。
常用选项:
-i:显示网络连接-P:不解析端口名称(避免 DNS 解析)-n:以数字形式显示 IP 和端口:端口号:指定端口(如:80)
示例:
bash
:80
4.
使用 nmap 命令(网络扫描工具)
nmap 可扫描本地或远程主机的端口状态。
示例:
bash
nmap .0.1
nmap -100 .0.1
5.
查看特定服务的端口(以 Apache 为例)
如果已知服务名称,可通过服务状态或配置文件查看:
bash
systemctl status apache2
ss apache
总结:
- 监听端口:优先使用
ss -tln或netstat -tln,简洁高效。 - 关联进程:用
ss -tlnp或lsof -i :端口,快速定位端口占用者。 - 远程扫描:
nmap适用于检测远程主机端口是否开放。
根据需求选择合适的工具即可。