ubuntu把组播功能分为三个层次:0,1,2。2为既可发送也可接收组播数据包,1为能发送但不能接收,0为禁用。2为运行所有的组播功能即allmulti,可通过ifconfig查看allmulti是否运行,running allmulti则表示可接收组播数据包,否则不能。启用allmulti方法为:
ifconfig eth0 allmulti
禁用方法为:
ifconfig eth0 -allmulti
What does "IP_ADD_MEMBERSHIP: No such device" mean?
It means that the tool is trying to use multicast but the network interface doesn't support it There are two likely causes:·Your machine doesn't have multicast support enabled. For example, on Linux and FreeBSD it is possible to compile a kernel which doesn't support multicast.
·You don't have a route for multicast traffic. Some systems don't add this by default, and you need to run:
route add -net 224.0.0.0 netmask 224.0.0.0 eth0 (or similar). If you wish to use RAT in unicast mode only, it is possible to add the multicast route on the loopback interface.