[support] MCoA doesn't read router advertisements

Arnaud Ebalard arno at natisbad.org
Tue Sep 8 22:05:23 JST 2009


Hi,

Eriza Hafid Fazli <eriza.fazli at triagnosys.com> writes:

> the MR and HA are xen virtual machines running Ubuntu 9.04 server with
> kernel 2.6.29.5.

kernel version is ok. Ubuntu should be ok.

> The MR is connected to the ARs via xen virtual bridges.

Interesting.

> I use umip version 0.4, with basic NEMO and MCoA patches. I attach the
> config files in this email.

Just to be sure, I took a quick look at all the patches I have in my
repo and there is only one I am suspicious about and you say this works
the first time so this is very unlikely: 

http://hg.natisbad.org/migrate2_patches_umip_nemo/file/0d825828357e/non_packed_structures.patch

> I believe this is a relatively "standard" setup, except for the fact
> that I use virtual machines. Do you think this has some impact?

I cannot say this is the reason but I am suspicious: I don't remember
someone has already reported having the same issue when using real
hardware or other virtualization technology (Once we had a problem with
not being handled but this was an endianness issue and it has been
corrected).

Considering you see the RA using tcpdump on your guest, it is weird it
is not reported as handled by md_recv_ra(). Note that the debug
statement in that function is just after the following check.

 /* validity checks */
 if (hoplimit < 255 || !IN6_IS_ADDR_LINKLOCAL(saddr) ||
     ih->icmp6_code != 0 || len < sizeof(struct nd_router_advert) ||
     !conf.pmgr.accept_ra(iif, saddr, daddr, ra))
 	return;

Could you add some debugging statement before the test if it is
triggered. I don't think it will but I'd like to be sure. And if the
additional statement is not triggered, then this may indicate that
there is a problem in your kernel which prevent the guest to join
multicast groups correctly.

It would be interesting to get some feedback from other people which use
Xen with UMIP.

Cheers,

a+


More information about the Support mailing list