0.0.0.0:PORT如何以及从何而来?

时间:2013-11-15 14:55:32

标签: networking network-programming connection localhost netstat

我陷入了两难境地 每台机器上都有一个IP地址,0.0.0.0:0也称为“所有可用接口”IP

所以我的问题是这样的 - 我需要使用来自netstat的格式化输出来映射本地主机上的连接,我应该如何考虑在0 *:0或0 *上列出:PORT?我的意思是:

如果S1正在侦听0.0.0.0:1000,而S2正在侦听192.168.0.1:1000会发生什么? 是否会被S1拦截到S1的连接(反之,S1截获的S1) 我知道0.0.0.0不是任何连接的端点,但请考虑:

如果S2连接,S1会听到指向此地址的数据包吗?

如果s1正在侦听所有接口:1000包括192.168.1.0:1000那么连接到192.168.0.1:1000将导致

感谢您的所有答案!

1 个答案:

答案 0 :(得分:0)

  

如果S1正在侦听0.0.0.0:1000,而S2正在侦听192.168.0.1:1000会发生什么?

你描述的情况是不可能的。无论哪一个出现都会阻止第二个绑定。在TCP中重用端口的唯一方法是,如果两个地址不同,则都不是0.0.0.0。

[Windows排除。 Windows允许它,如果你能弄清楚MSDN中的描述会发生什么,你做得比我好。]