为什么我的 Netstat 没有返回所需的输出并且只是挂断了?

为什么我的 Netstat 没有返回所需的输出并且只是挂断了?

我的远程 Linux 计算机能够 ping 互联网上的 IP 地址,但相同的操作无法获取该 IP 的 netstat 报告。

ping a.b.c.d
64 bytes from a.b.c.d: icmp_seq=1 ttl=64 time=0.509 ms
64 bytes from a.b.c.d: icmp_seq=2 ttl=64 time=0.249 ms
64 bytes from a.b.c.d: icmp_seq=3 ttl=64 time=0.273 ms
64 bytes from a.b.c.d: icmp_seq=4 ttl=64 time=0.357 ms

但 netstat 无法获得输出,

netstat -an a.b.c.d | grep <some port>

它只是挂起,甚至没有返回我的提示,而我已经确定它应该列出的连接。

答案1

netstat 不接受IP 地址参数。这仅有的非选项参数是一个延迟,并且并非在所有版本中都是如此。

该命令将

打印网络连接、路由表、接口统计信息、伪装连接和多播成员资格

对于本地机器。它无法访问其他计算机的数据,只能与其运行的计算机建立连接。这可能需要一段时间才能完成,并且会因延迟而永远循环。

如果您对有关从您的计算机到您可以使用的特定其他 IP 地址的连接的信息感兴趣grep。请注意,netstat在任何情况下都已弃用,并且它的替代品ss对该用例有更好的内置支持。

相关内容