我想列出连接到特定 IP 和端口的进程。有什么命令可以实现这个目的吗?
答案1
和lsof
:
lsof -nPi @192.168.1.123:443
(-t
如果您只需要进程 ID,请添加)。
它还列出了绑定到该地址的套接字。
使用ss
(来自iproute2
Linux):
ss state established dst 192.168.1.123 'dport = :443'
与 PSMisc 的fuser
:
fuser -n tcp ,192.168.1.123,443
fuser -n udp ,192.168.1.123,443
但请注意,它(至少是此处的版本 22.21)不会报告 IPv6 映射的 IPv4 地址,您需要单独查询这些地址:
fuser -n tcp ,::FFFF:C0A8:017B,443
(::FFFF:C0A8:017B
是 192.168.1.123 的 IPv6 映射版本)。
答案2
看一眼ss
哪个可以替代旧的netstat
例如:
ss -atp
作为 root,将列出服务器上所有当前的 TCP 连接以及进程名称和 PID。
man ss
以获得更多选择。
此致