Brian Somers <br...@freebsd.org> wrote
  in <20121027072048.gb77...@thong.lan.awfulhak.org>:

br> On Sat, Oct 27, 2012 at 03:57:07PM +0900, Hiroki Sato wrote:
br> > Brian Somers <br...@freebsd.org> wrote
br> >   in <20121026235044.ga77...@thong.lan.awfulhak.org>:
br> >
br> > br> When I reboot and don't use -accept_rtadv (and leave
br> > br> net.inet6.ip6.accept_rtadv set to zero), I repeatedly see this in
br> > br> /var/log/messages:
br> > br>
br> > br> Oct 26 16:31:26 gw rtadvd[2879]: non-zero lifetime RA on RA receiving 
interface sk0.  Ignored.
br> > br> Oct 26 16:31:33 gw rtadvd[2879]: non-zero lifetime RA on RA receiving 
interface bridge0.  Ignored.
br> > br> Oct 26 16:31:42 gw rtadvd[2879]: non-zero lifetime RA on RA receiving 
interface sk0.  Ignored.
br> > br> Oct 26 16:31:49 gw rtadvd[2879]: non-zero lifetime RA on RA receiving 
interface bridge0.  Ignored.
br> > br>
br> > br> This seems to be the problem.  Because check_accept_rtadv() (in
br> > br> rtadvd) reports the interface as being able to accept RAs (it finds
br> > br> the ND6_IFF_ACCEPT_RTADV flag), it drops outgoing RAs and nothing
br> > br> happens.
br> >
br> >  Can you send me your /etc/rc.conf and /etc/sysctl.conf?  I guess you
br> >  are still using ipv6_enable=YES on 9.X.
br>
br> Sure (attached).  I'm not sure what is supposed to change in rc.conf
br> when upgrading from 8 to 9.  There's nothing obvious that I can
br> see...  maybe I'm looking in the wrong place?
br>
br>     http://www.freebsd.org/releases/9.0R/relnotes.html

 Thank you.  It is explained in section 3.2.4 in

  http://www.freebsd.org/releases/9.0R/relnotes-detailed.html#UPGRADE

 I think it will work as 8.X just after removing the ipv6_enable=YES
 line in your rc.conf, but after investigating the network.subr
 closely I found a bug in backward compatibility of ipv6_enable=YES on
 9.X...  Can you try the attached patch?  This should fix the issue
 even if ipv6_enable=YES exists on a 9.X's rc.conf without a patch to
 rc.d/rtadvd.

-- Hiroki
Index: etc/network.subr
===================================================================
--- etc/network.subr	(revision 242172)
+++ etc/network.subr	(working copy)
@@ -504,7 +504,11 @@
 	# backward compatibility: $ipv6_enable
 	case $ipv6_enable in
 	[Yy][Ee][Ss]|[Tt][Rr][Uu][Ee]|[Oo][Nn]|1)
-		return 0
+		if checkyesno ipv6_gateway_enable; then
+			return 1
+		else
+			return 0
+		fi
 	;;
 	esac

Attachment: pgpKE30ZKMjyI.pgp
Description: PGP signature

Reply via email to