在 Linux 系统中,你可以使用多种方法来查看当前运行的端口及其对应的进程。以下是一些常用的方法:
使用 netstat
netstat
是一个网络统计工具,可以显示网络连接、路由表、接口统计等信息。
bash复制代码
sudo netstat -tuln |
-t
:显示 TCP 端口-u
:显示 UDP 端口-l
:显示监听状态的端口-n
:以数字形式显示地址和端口号
使用 ss
ss
是 netstat
的现代替代品,功能更强大且性能更好。
bash复制代码
sudo ss -tuln |
参数与 netstat
类似:
-t
:显示 TCP 端口-u
:显示 UDP 端口-l
:显示监听状态的端口-n
:以数字形式显示地址和端口号
使用 lsof
lsof
是一个列出当前系统打开文件的工具,由于网络套接字在 Unix 系统中也被视为文件,因此 lsof
也可以用来查看网络端口。
bash复制代码
sudo lsof -i -P -n |
-i
:显示与网络相关的文件-P
:显示端口号而不是服务名-n
:显示 IP 地址而不是主机名
使用 nmap
nmap
是一个网络扫描工具,可以用来扫描本地或远程主机的开放端口。
bash复制代码
sudo nmap -sT -O localhost |
-sT
:进行 TCP 连接扫描-O
:尝试检测操作系统类型(可选)
查看特定端口的进程
如果你知道某个端口号,并想查看哪个进程在使用它,可以使用以下命令:
bash复制代码
sudo lsof -i :<端口号> |
例如,查看端口 80:
bash复制代码
sudo lsof -i :80 |
或者:
bash复制代码
sudo netstat -tulnp | grep :<端口号> |
例如,查看端口 80:
bash复制代码
sudo netstat -tulnp | grep :80 |
这些方法可以帮助你查看 Linux 系统上当前运行的端口及其相关信息。选择哪种方法取决于你的具体需求和习惯。