在Linux系统中,查看网络端口开启情况是一个常见的需求,通常可以通过以下几种方法来实现:
netstat
命令netstat
是一个网络统计工具,可以显示网络连接、路由表、接口统计等。
netstat -tuln
-t
显示TCP连接。-u
显示UDP连接。-l
仅显示监听套接字。-n
不解析服务名,直接显示端口号。示例输出:
Active Internet connections (only servers)
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:123 0.0.0.0:*
ss
命令ss
是一个更现代且高效的工具,用来获取socket统计信息。
ss -tuln
-t
显示TCP连接。-u
显示UDP连接。-l
显示监听状态。-n
不解析服务名。示例输出:
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:22 *:*
LISTEN 0 128 :::80 :::*
lsof
命令lsof
列出当前系统打开的文件,包括网络端口。
sudo lsof -i -n -P | grep LISTEN
-i
显示网络相关的文件。-n
不解析主机名。-P
不解析端口号。示例输出:
sshd 1234 root 3u IPv4 12345 0t0 TCP *:22 (LISTEN)
nginx 5678 www-data 8u IPv4 23456 0t0 TCP *:80 (LISTEN)
原因:
解决方法:
sudo
提升权限。net-tools
包含 netstat
:net-tools
包含 netstat
:解决方法:
grep
过滤特定端口信息:grep
过滤特定端口信息:通过上述方法,你可以有效地查看Linux系统中网络端口的开启情况,并根据需要进行相应的管理和故障排查。
领取专属 10元无门槛券
手把手带您无忧上云