[CentOS-virt] Issues with routing IPv6 to KVM Guests

Wed Sep 19 23:29:14 UTC 2012
Joe Pruett <joey at q7.com>

On 09/14/2012 03:16 PM, David Hackl wrote:
> IPv6 is enabled. As I said, it works good on the node itself. I can ping 
> it and also ping out of it.

this is a really annoying bug in the linux bridge code. ipv6 neighbor
discovery relies on multicast, and the bridge code tries to optimize
multicast by not treating it as broadcast. but since v6 neighbor
discovery doesn't use v4 igmp, the bridge code never realizes what
bridge interfaces should get what multicast packets. the easiest fix is:

echo 2 > /sys/class/net/vif#.#/brport/multicast_router

with the appropriate #.# substituted (or just do them all), which tells
the bridge code that there is a multicast router on that port and
therefore it should receive all multicast traffic. i ran into this a few
months back and had forgotten it again until now. i never found a way to
make it happen at boot time, or via some script in xen, but i will now
dive into that hunt again...