为什么将单个过程的netstat -lntp
多个响应显示为0.0.0.0:22
& ?:::22
sshd
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1179/sshd
tcp 0 0 :::22 :::* LISTEN 1179/sshd
答案1
最简单的答案是0.0.0.0:22
是 IPv4 地址,:::22
是 IPv6 地址。如果您使用的是 GNUnetstat
版本 1.42(或类似版本),则只需使用-4
如下标志即可获得 IPv4 结果:
netstat -lntp4 22
如果您只想要 IPv6 结果,只需使用-6
如下标志:
netstat -lntp6 22
netstat
在 Mac OS X 等系统使用的 BSD 版本上安装的版本将使用类似这样的命令来处理 IPv4:
netstatnetstat -p tcp -f inet | grep 22
对于 IPv6,这是:
netstatnetstat -p tcp -f inet6 | grep 22