RIPng advertisement hop count 1 (should be 255 per RFC)
Simon Dickhoven
Simon.Dickhoven at tachyon.com
Sat Jun 15 00:04:25 CEST 2013
Hi,
I just started experimenting with BIRD for an IPv6 deployment. I am
using Vyatta VC6.6R1 router VMs on either side of my BIRD VM (which runs
on a customized Debian Squeeze release with kernel 3.3.1). I installed
bird/bird6 1.3.7 from the squeeze-backports repository.
Here my setup.
Lab Net --- Vyatta --- BIRD on Debian --- Vyatta --- Stub Net
Anyway, I don't have any problems with my configs or anything like that.
My problem is that Vyatta's ripngd (part of Quagga) complains about an
RFC violation when it receives RIPng advertisements from BIRD:
Jun 14 21:43:40 vyatta ripngd[1682]: RIPng packet comes with non 255 hop
count 1 from fe80::20c:29ff:fef8:cbc5
I looked at the source code in rip.c and see this line:
rif->sock->ttl = 1;
which is the only reference I can find to TTL/Hop Count. So I'm guessing
this is the culprit. The latest source code (1.3.10) is identical in
this respect.
RFC 2080 states
[...]
As an additional check, periodic advertisements must have their hop
counts set to 255, and inbound, multicast packets sent from the RIPng
port (i.e. periodic advertisement or triggered update packets) must be
examined to ensure that the hop count is 255.
[...]
The use of the term "must" leads me to believe that this is not optional
and is therefore required for RFC-compliance.
There seems to be no such requirement for RIP (v1/v2) so simply changing
the source code to indiscriminately set the TTL to 255 is probably not
the right thing to do.
Have others encountered this problem and is there possibly a patch or
something for getting RFC-compliance and hence interoperability with
Vyatta/Quagga(ripngd)?
Thanks.
- Simon
More information about the Bird-users
mailing list