我的应用程序正在创建UDP套接字并设置一些选项。其中一个选项是IP_MULTICAST_TTL.
当应用程序在Windows 7上运行时,我通过wireshark观察线路上的流量,我可以看到TTL始终为1,这意味着setsockopt()
没有任何影响(它没有但是会返回错误。
深入研究代码,我发现Windows 7上的IP_MULTICAST_TTL
值为10,其他Windows版本为3。
如果我在Windows 7上强制该值为3,setsockopt()
工作正常,wireshark报告的值正确。
我找到了这篇文章:http://support.microsoft.com/kb/257460我确认我在Winsock2.h之后包含Ws2tcpip.h并且我正在链接Ws2_32.lib
有什么建议吗?