Merging rc.d/network_ipv6 into rc.d/netif

Brooks Davis brooks at freebsd.org
Thu Apr 5 16:02:53 UTC 2007


On Thu, Apr 05, 2007 at 06:46:44PM +0300, Mike Makonnen wrote:
> On Tue, Apr 03, 2007 at 06:14:23PM -0500, Brooks Davis wrote:
> > >  - You can now do things like:
> > > 	# Start/Stop IPv6 on all interfaces
> > > 	/etc/rc.d/netif (start|stop) ip6
> > > 	# Start/Stop IPv6 only on interface rl0
> > > 	/etc/rc.d/netif (start|stop) rl0 ip6
> > > 	# Do IPv6 options processing
> > > 	/etc/rc.d/routing options ip6
> > 
> > I think I'd prefer (start|stop)(4|6).  I not sure what the value of the
> > separation is, but don't care much.
> 
> I'll post a new patch with this change. Now that its been mentioned
> I agree, it's a better thatn what I came up with. 
> 
> > > Overview of the changes in src/etc
> > > -----------------------------------
> > >  - In order to differentiate between v4 and v6 configuration directives some
> > >    knobs in rc.conf(5)have been renamed with an ipv4_ prefix:
> > > 	network_interfaces
> > 
> > I fell fairly strongly that ipv6_network_interfaces and
> > network_interfaces are a mistake and that we should remove them
> > rather than propagating them.  The way I'd prefer to see interfaces
> > that are exceptional with regard to address families specified with
> > (|NO)IPV(4|6) variables in ifconfig_<interface> or simply by not
> > having ipv(4|6)_ifconfig_interface variables (that it's a little more
> > complicated than that with ipv4_addrs_<interface> around, but I think
> > the concept holds).
> 
> I agree completely. However, when this hits the tree I don't want peoples
> configurations to break (especially since I would like to see this in
> 6-stable if we can aggree on it). Also, since this feature is already
> deprecated in the man page I think we can provide silent support for
> it without explicitly advertising it untill people have had a suffient
> transition period.

OK, do you think it would be possible to kill off 

> > > 	ifconfig_DEFAULT
> > > 	ifconfig_<interface>
> > 
> > ipv4 versions of these make sense, but at least ifconfig_<interface>
> > should continue to exist.  For example both setting the mac address and
> > starting WPA via the WPA keyword should not work in any address specific
> > version because that would be a layering violation.
> > 
> 
> Ok. That should be doable, but it's probably going to make
> configuration decisions more complicated. For example, do we ignore
> the WPA in the ipv(4|6)_* variables or does it's presence in any
> of the variables enable it?

I'd ignore WPA outside of ifconfig_<interface>.  I think we'll want DHCP
to work there and under ipv4_ifconfig_<interface>, but not IPv6.  That
will change if/when a dhcp6 client arrives, but who knows when that will
happen.

> > > I would
> > > especially like feedback from folks more familiar with IPv6. One
> > > gotcha I've noticed is that if you boot with ipv6_enable turned
> > > off, then try to start IPv6 on an interface later on, it doesn't
> > > work because none of the interfaces (except lo0) has a link-local
> > > address (see rc.d/auto_linklocal). How can we fix this? Also, I
> > > would appreciate feedback on how stopping IPv6 on an interface
> > > should be handled. In rc.d/network_ipv6 it was handled at all.
> > > Currently, it goes through and deletes all
> > > IPv6 addresses on the interface.
> > 
> > I'd say if ipv6_enable=NO, attempting to configure IPv6 on an interface
> > should fail.  If they turn it on, I'm not sure what the best approach
> > is.  Not worrying about it may well be most appropriate.
> 
> I don't agree. I would expect that if I enable IPv6 in rc.conf I wouldn't
> have to reboot the machine to get my network interfaces configured
> properly.

That would be nice if we can make it work.  I'm just not sure how much
effort it's worth to make all the edge cases work.

-- Brooks
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-rc/attachments/20070405/ad3f11fb/attachment.pgp


More information about the freebsd-rc mailing list