端口号是计算机网络中标识特定应用程序或服务的数字。查看已使用的端口号对于故障排除、网络安全和性能优化至关重要。在 Linux 操作系统中,有多种 可以查看已使用的端口号。
使用 netstat 命令
netstat 命令是查看网络连接和端口号的最常用工具之一。要使用 netstat 列出已使用的端口号,请运行以下命令:
shell
netstat -anp
- -a 选项显示所有连接,包括侦听地址。
- -n 选项以数字格式显示地址和端口号。
- -p 选项显示程序相关信息。
输出将类似于以下内容:
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN -
tcp 0 0 192.168.1.100:61124 192.168.1.101:80 TIME_WAIT -
tcp 0 0 192.168.1.100:56459 192.168.1.101:443 TIME_WAIT -
tcp 0 0 192.168.1.100:53223 192.168.1.101:443 TIME_WAIT -
使用 lsof 命令
lsof 命令可以列出所有打开的文件和网络连接,包括端口号。要使用 lsof 查看已使用的端口号,请运行以下命令:
shell
lsof -i
输出将类似于以下内容:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 812 mysql 10u IPv4 0x2ba3dd47c525a6e3 0t0 TCP *:mysql (LISTEN)
sshd 842 root 3u IPv4 0x2ba347d40e8b3313 0t0 TCP *:ssh (LISTEN)
使用 ss 命令
ss 命令是 netstat 的更高级版本,它提供了更全面的网络信息。要使用 ss 查看已使用的端口号,请运行以下命令:
shell
ss -anpt
输出将类似于以下内容:
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 0.0.0.0:80 0.0.0.0:*
ESTABLISHED 0 0 192.168.1.100:61124 192.168.1.101:80
CLOSE_WAIT 0 0 192.168.1.100:56459 192.168.1.101:443
TIME_WAIT 0 0 192.168.1.100:53223 192.168.1.101:443