我正在尝试从媒体服务器接收多播数据包。这是示例数据包的wireshark捕获:
Multicast Example http://memecode.com/images/general/multicast-packet.png
似乎没有涉及任何端口,只有源和目标的MAC地址。我见过的大多数源代码示例在接收多播数据包时绑定到特定端口。例如 https://publib.boulder.ibm.com/infocenter/iseries/v5r3/index.jsp?topic=%2Frzab6%2Frzab6x2multicast.htm
我希望能够在Windows和MaxOSX上接收这些数据包(在这两种情况下都是C ++应用程序,即Win32 API和Carbon,尽管Mac端口更重要)。
我该怎么做?
答案 0 :(得分:1)
您只需创建UDP套接字,将其绑定到端口,加入多播组,然后呼叫recvfrom()
。
但是您捕获的数据包看起来不像UDP多播数据包。可能是路由器之间的东西?它没有IP头,更不用说UDP头了,这是IP和端口信息的地方,