gpt4 book ai didi

windows - 无法绑定(bind)到多播地址 (Windows)

转载 作者:可可西里 更新时间:2023-11-01 09:31:20 25 4
gpt4 key购买 nike

我正在尝试编写一个使用 Windows 套接字监听多个多播组的应用程序。

我遇到的问题是,当我去绑定(bind)套接字时,如果我尝试绑定(bind)到多播组地址和端口,则会失败并返回 WSAEADDRNOTAVAIL。如果我改为绑定(bind)到 INADDR_ANY 和端口,那么我仍然可以接收发往同一端口的其他不相关流量。

当我在 Linux 中实现同样的东西时,我没有遇到任何绑定(bind)到多播地址的问题(事实上,我看到它推荐了几个地方以避免端口获得不相关的流量)。

这只是不适用于 Windows 套接字吗?我假设我可以通过使用 WSARecvFrom 并查看 header 来自行过滤流量,但如果存在的话,我宁愿使用一个简单的解决方案。

此外,它在 Windows Server 2008 上运行。

最佳答案

虽然doc for bind() 并没有说这个不受支持,它确实在评论中说:

For multicast operations, the preferred method is to call the bind function to associate a socket with a local IP address and then join the multicast group....

也许这个方案会产生更好的结果?

关于windows - 无法绑定(bind)到多播地址 (Windows),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6140734/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com