Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 21 Feb 2000 09:39:55 -0800
From:      bmah@CA.Sandia.GOV (Bruce A. Mah)
To:        Yoshinobu Inoue <shin@nd.net.fujitsu.co.jp>
Cc:        bmah@california.sandia.gov, bauer@cc.univie.ac.at, current@FreeBSD.ORG
Subject:   Re: IPv6 
Message-ID:  <200002211739.JAA27499@nimitz.ca.sandia.gov>
In-Reply-To: <20000219182000U.shin@nd.net.fujitsu.co.jp> 
References:  <20000216034713O.shin@nd.net.fujitsu.co.jp> <20000218215940K.shin@nd.net.fujitsu.co.jp> <200002190012.QAA11354@nimitz.ca.sandia.gov> <20000219182000U.shin@nd.net.fujitsu.co.jp>

next in thread | previous in thread | raw e-mail | index | archive | help
--==_Exmh_1967159241P
Content-Type: text/plain; charset=us-ascii

If memory serves me right, Yoshinobu Inoue wrote:
> > I ran across a few problems after I remade world.  The new scoped 
> > address syntax breaks /etc/rc.network6.  In particular, some lines that 
> > look like:
> 
> Sorry not to announce it yet, but scoped addr format will
> still change, like below.
> 
>    addr%scope
> 
> I'll send another mail to describe it in next to this mail.

OK, got it.  Some of the breakage went away, in that it looks like all 
of the invocations to route(8) are now well-formed.  This is a Good 
Thing (TM).

> When this change happens, those problems will be resolved.

Well...not quite, and I am not sure why.  Following is a snippit of the 
bootup messages from a CURRENT machine (approximately -20000220):

dc0: starting DAD for fe80:0001::0200:f8ff:fe10:6ef3
dc0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        inet 146.246.243.57 netmask 0xffffff00 broadcast 146.246.243.255
        inet6 fe80::200:f8ff:fe10:6ef3%dc0 prefixlen 64 tentative
        ether 00:00:f8:10:6e:f3
        media: 100baseTX status: active
        supported media: autoselect 100baseTX <full-duplex> 100baseTX 10baseT/UT
P <full-duplex> 10baseT/UTP 100baseTX <hw-loopback> none
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
        inet6 fe80::1%lo0 prefixlen 64
        inet6 ::1 prefixlen 128
        inet 127.0.0.1 netmask 0xff000000
add net default: gateway 146.246.243.254
Additional routing options: TCP keepalive=YES.
routing daemons:.
Doing IPv6 network setup:route: writing to routing socket: Network is unreachable
add net fe80::: gateway fe80::1%lo0: Network is unreachable
route: writing to routing socket: Network is unreachable
add net ff02::: gateway fe80::1%lo0: Network is unreachable
add net ::ffff:0.0.0.0: gateway ::1
add net ::0.0.0.0: gateway ::1
net.inet6.ip6.forwarding: 0 -> 0
net.inet6.ip6.accept_rtadv: 0 -> 1
dc0: DAD complete for fe80:0001::0200:f8ff:fe10:6ef3 - no duplicates found
dc0: starting DAD for 3ffe:0780:0060:0001:0200:f8ff:fe10:6ef3
dc0: DAD complete for 3ffe:0780:0060:0001:0200:f8ff:fe10:6ef3 - no duplicates found
.

(Note the error messages from route(8) about mid-way through.) This
output was produced from the last version of scripts you posted to
-current, and with the only relevent change I made to /etc/rc.conf was
to set ipv6_enable="YES".

After *completing* a multiuser boot, attempting to set the default
scoped route correctly installed an entry in the routing table, using
exactly the same command that /etc/rc.network6 would have generated:

/sbin/route add -inet6 fe80:: fe80::1%lo0 -prefixlen 10 -interface \
-cloning

I was wondering if there was somehow a race condition with the first 
DAD for dc0 not completing, but I put a long sleep at the start of 
network6_pass1() and it didn't seem to help.

> > Finally, could you say whether or not lo0 should really be the default
> > value for ipv6_default_interface in /etc/defaults/rc.conf?  I have this 
> > vague feeling it's wrong but I don't know enough to say why:
> > 
> > > +ipv6_default_interface="lo0"	# Default output interface for scoped a
> ddrs.
> 
> Maybe your concern is that packets to the default interface
> should be sent out to outside of host, at least?

I think that's it, yes.

> On the other hand, I thought there should be some default
> interface by default, but I afraid that an approach of just
> choosing some interface as default interface might be end up
> to choose non working interface.
> But now I feel choosing lo0 approach is also somewhat strange.
> 
> So I'll try following approach.
> 
>   -"ipv6_default_interface" is empty by default
>   -When all of "ipv6_network_interfaces", "gif_interfaces",
>    and "ipv6_default_interface" are empty, then there will be
>    no default interface
>   -When "ipv6_default_interface" are empty but
>    "ipv6_network_interfaces" and/or "gif_interfaces" is not empty,
>    then choose one default interface from there.

I like your approach, although I admit that I'm learning much of this as
we go along.

Small nitpick:  You might want to move the line for
ipv6_default_interface higher in /etc/defaults/rc.conf so that it is
just below the rest of the definitions that begin with ipv6_*.

Thanks!

Bruce.





--==_Exmh_1967159241P
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: PGPfreeware 5.0i for non-commercial use
MessageID: 8BTkqFzpNO3aW89CxA+usgMEP4tl3GOI

iQA/AwUBOLF4a9jKMXFboFLDEQIgpgCgoVTDdJEGRFJZ3gIvBf7RAK1C4xAAoNe7
cgmgNUvboKaYXxFo6oXckXJh
=89pK
-----END PGP SIGNATURE-----

--==_Exmh_1967159241P--


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200002211739.JAA27499>