2011-01-11 136 views
0

我有一个在Windows上运行的系统。 我在那个系统中有一个进程,在同一台机器上等待一个udp消息的另一个进程。信息本身并不重要(垃圾),但重要的是我得到了信息本身的事件。UDP端口0.0.0.0

问题是,我似乎从另一个本地程序获得UDP消息,我不知道从哪里。我在收到的UDP消息中添加了有关发件人的信息。我看到我从有效的本地端口获取消息,但也从地址0.0.0.0获取消息。

我无法理解0.0.0.0。有没有人有想法?

+1

`0.0.0.0`不是端口,它是一个地址 – skaffman 2011-01-11 15:10:21

回答

0

因为它是一个udp消息并使用异步类型,所以在阅读从另一个程序到达的消息时,我无法知道何时停止阅读,何时阅读消息并获得0.0.0.0这意味着我读取了所有内容来自操作系统的UDP缓冲区。

0

即使通过网络,没有分配IP地址的计算机也可以发送此类数据包 - 请参阅在DHCP中类似的机制,其中DHCP discovery数据包的发送源地址为0.0.0.0

在本地计算机上,是否可以在已启动但没有IP的接口上发送(并接收)数据包地址?

此外,这可能意味着“广播” - if this article on e2是正确的,它是一个制作广播数据包的废弃方法,但显然它从未被删除。