qemu-system-aarch64 + linux + busybox:设置ipv6多播路由?

时间:2018-10-10 17:41:50

标签: linux-kernel multicast qemu arm64 busybox

我有一个qemu-system-aarch64实例,其运行带有busybox的linux-3.10.105。

对于ipv4,我发现此配置行可以仅使用可用的环回设备来启用多播:

ip route add 224.0.0.0/4 dev lo

现在我也想为ipv6启用它,但是将该命令更改为ipv6多播范围的幼稚方法不起作用。

/ # ip route add ff00::/8 dev lo
/ # ip -6 route
unreachable ff00::/8 dev lo  metric 1024  error -101

我要调用的函数是:

setsockopt(sockfd_ipv4, IPPROTO_IP, MCAST_JOIN_GROUP, &group_ipv4, sizeof(group_ipv4))
setsockopt(sockfd_ipv6, IPPROTO_IPV6, MCAST_JOIN_GROUP, &group_ipv6, sizeof(group_ipv6))

虽然第一个发出ipv4命令后运行正常,但是第二个返回ENODEV(就像如果我不发出命令,第一个返回ENODEV)。

某些情况:多播并不一定要工作。这个Linux版本在IP多播的初始化代码中有一个错误,我想使用gdb进行研究。因此,我所需要的只是一个设置,认为它可以多播而无需实际到达任何东西。

因此,只要它们使ENODEV错误消失,其他不使用路线的想法就会有所帮助。

0 个答案:

没有答案