On 6/22/07, Mike Makonnen <[EMAIL PROTECTED]> wrote:
On Wed, Jun 20, 2007 at 09:48:06AM +1000, George Michaelson wrote:
>
> on a 6-STABLE host, I added:
>
> ipv6_enable="YES"
> ipv6_network_interfaces="bge1"
>
> to rc.conf, and ran /etc/rc.d/network_ipv6
>
> this did not bring IPv6 live. rtsol reported problems with get_llflag()
> calls. However across reboot, the system came up with IPv6 fine.
>
> Can somebody explain why this won't work if run after the init sequence
> has run to completion? What is the sequence of commands that when run
> on an active FreeBSD system causes it to successfully bind to IPv6?

IPv6 configuration is still a work in progress. Currently, you can't
enable and auto-configure IPv6 *after* the initial boot. The reason for
this is that the IPv6 configuration subroutines require all IPv6 interfaces
to have a link-local address first. However, the rc.d/auto_linklocal script
is executed before all the networking stuff and if IPv6 is not enabled it sets
a sysctl(8) variable to prevent the IPv6 subsystem in the kernel from
assigning link-local addresses. If you don't want to reboot, then you
have to assign the link-local addresses yourself with ifconfig(8) and then
run rc.d/network_ipv6 (should work in theory, haven't tried it).

I've found a way:

# sysctl net.inet6.ip6.auto_linklocal=1
# ifconfig em0 down up
will assign link-local address to interface.

after all required interfaces have link-local addresses,
run /etc/rc.d/network_ipv6 start and all will be set ! :)

--
ghozzy
_______________________________________________
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to