On Fri, Jun 14, 2013 at 05:41:10PM -0700, Simon Dickhoven wrote:
> OK. I looked at proto/rip/rip.c a bit more and figured that I might as  
> well give it a shot and hack around a little bit. I ended up making this  
> tiny mod:

Hello

Thanks for the bugreport and patch. As i understand RFC 2080, hop limit
255 should be used just for RIPng multicast messages. You could try the
attached patch, which will use hop limit 255 for multicast and hop limit
1 for unicast (although RFC 2080 is IMHO unclear about hop limit for
unicast).

-- 
Elen sila lumenn' omentielvo

Ondrej 'SanTiago' Zajicek (email: santi...@crfreenet.org)
OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net)
"To err is human -- to blame it on a computer is even more so."
diff -uprN bird-1.3.10-o/proto/rip/rip.c bird-1.3.10/proto/rip/rip.c
--- bird-1.3.10-o/proto/rip/rip.c	2013-04-29 23:41:58.000000000 +0200
+++ bird-1.3.10/proto/rip/rip.c	2013-06-18 13:25:40.000000000 +0200
@@ -736,6 +736,10 @@ new_iface(struct proto *p, struct iface 
 
     if (rif->multicast)
       {
+#ifdef IPV6
+	/* RFC 2080 2.4.2 - RIPng multicast packets should use TTL 255 */
+	rif->sock->ttl = 255;
+#endif
 	if (sk_setup_multicast(rif->sock) < 0)
 	  goto err;
 	if (sk_join_group(rif->sock, rif->sock->daddr) < 0)

Reply via email to