在环回接口上模拟多播

问题描述

| 我正在用ruby编写一个网络应用程序,该应用程序应该使用UDP多播。 我的问题是我想在localhost上运行多个实例以进行测试,但是仅当我将套接字绑定到实际网络接口时,多播才有效。 是否有某种方法可以为环回接口启用多播,以便所有127.0.0.x都能收到我发送的消息? 目前,我可以通过以下方式启用多播:
ip = IPAddr.new(\'234.56.78.9\').hton + IPAddr.new(\'0.0.0.0\').hton
socket.setsockopt(Socket::IPPROTO_IP,Socket::IP_ADD_MEMBERSHIP,ip)
#socket.bind \'127.0.0.1\',1234 ##does not receive multicast :(
socket.bind \'0.0.0.0\',1234
另外,我注意到,如果我将套接字绑定到127.0.0.4并发送一条消息,无论如何,数据包中的源ip始终是127.0.0.1 ...是否有办法设置源IP,以便它显示将套接字绑定到的相同IP?     

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)