ipv6_enable
Hiroki Sato
hrs at allbsd.org
Mon Apr 5 05:51:12 UTC 2010
Doug Barton <dougb at FreeBSD.org> wrote
in <4BB95564.1070604 at FreeBSD.org>:
do> On 04/04/10 02:41, Hiroki Sato wrote:
do> > "Kevin Oberman" <oberman at es.net> wrote
do> > in <20100404053352.E6F751CC13 at ptavv.es.net>:
do> >
do> > ob> The use of FACILITY_enable in rc.conf predates /etc/rc.d scripts and I
do> > ob> see no reason not to use them to enable or disable functionality whether
do> > ob> it involves a script in rc.d or not. The idea is to have a clear,
do> > ob> obvious way to enable or disable functionality. I see nothing in Hiroki's
do> > ob> proposal that is nearly as clear and to the point as 'ipv6_enable'.
do> >
do> > Another reason I lean to not using xxx_enable is that an rc.d knob
do> > cannot control enabling/disabling the IPv6 functionality actually.
do> > It was true even when we were using the network_ipv6 script.
do>
do> But that's equally true of how you're using ipv6_prefer. :) You've
do> basically just moved the overloading of 2 of the 3 previous functions of
do> ipv6_enable to ipv6_prefer. I am suggesting that we split all 3
do> functions into different knobs.
No, the current ipv6_prefer=NO has nothing to do with disabling IPv6.
It is just related to source address selection and a seatbelt for
IPv4-only people. I do not think I just moved the old functions.
Let me explain how these changes happened. As I explained earlier, I
added $ipv6_prefer to *enable IPv6 by default*. IPv6 needs some
configuration even if you do not use IPv4 when the kernel supports
it, and skipping all of IPv6 configuration in the old
rc.d/network_ipv6 script caused another problems. So, I thought it
was possible to enable IPv6 by default and initialize the
functionality with reasonable default parameters. This parameters
included "disable ACCEPT_RTADV by default", which is one of the
topics we are discussing now.
After I moved the initialization outside of the $ipv6_enable, then I
noticed that the rest which should be inside of the $ipv6_enable is
IPv6 GUA address assignments and routing settings only. Here I
stepped further; I changed the disabling feature of $ipv6_enable into
"whether an IPv6 address is assigned or not". That was the whole
story.
The old rc.d/network_ipv6 had a lot more for IPv6 configuration in
the $ipv6_enable conditional clause and ipv6_enable=NO meant to
disable them, too. This is a big difference. The new ipv6_enable in
your patch is not the same in this regard.
Well, I can understand and agree that people want a handy knob to
disable IPv6. I think it is more constructive for this discussion to
be more specific what should be disabled, then. I am still not sure
what you and other people mean by "disable IPv6".
My opinion is "ipv6_enable=NO" should mean disabling IPv6
functionality completely. I do not want to call a knob just to
ignore ifconfig_IF_ipv6 lines as "ipv6_enable" as well as do not want
to disable IPv6 functionality completely by default. So I am
interested in what people want more precisely.
-- Hiroki
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20100405/a7fad8eb/attachment.pgp
More information about the freebsd-current
mailing list