kern/188032: IPv6 on lo never leaves 'tentative' state if configured with prefixlen 128
Andrey V. Elsukov
bu7cher at yandex.ru
Mon Mar 31 08:20:02 UTC 2014
The following reply was made to PR kern/188032; it has been noted by GNATS.
From: "Andrey V. Elsukov" <bu7cher at yandex.ru>
To: Darren Baginski <kickbsd at yandex.ru>,
freebsd-gnats-submit at FreeBSD.org
Cc:
Subject: Re: kern/188032: IPv6 on lo never leaves 'tentative' state if configured
with prefixlen 128
Date: Mon, 31 Mar 2014 12:11:14 +0400
> IPv6 on lo never leaves 'tentative' state if configured with prefixlen 128.
>
> Steps to reproduce.
>
> # ifconfig lo8 create
> # ifconfig lo8 up
> # ifconfig lo8 inet6 fc00::ff prefixlen 128
>
>
> # ifconfig lo8
> lo8: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
> options=600003<RXCSUM,TXCSUM,RXCSUM_IPV6,TXCSUM_IPV6>
> inet6 fc00::ff prefixlen 128 tentative
> nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
>
>
> lo8 ipv6 stays 'tentative' stays forever and never become ping-able.
>
> "Workaround" is to apply any other prefixlen, e.g. /127
>> How-To-Repeat:
>
> # ifconfig lo8 create
> # ifconfig lo8 up
> # ifconfig lo8 inet6 fc00::ff prefixlen 128
>
>
> # ifconfig lo8
> lo8: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
> options=600003<RXCSUM,TXCSUM,RXCSUM_IPV6,TXCSUM_IPV6>
> inet6 fc00::ff prefixlen 128 tentative
> nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
>
> # ping fc00::ff
>> Fix:
> "Workaround" is to apply any other prefixlen, e.g. /127
Hello,
Actually the problem is in your configuration. As you may see, you have
IFDISABLED flag set. When you are configuring /127 prefix, the system
does install route on that prefix and automatically clears IFDISABLED
flag. When you are configuring /128 prefix, the system won't install
route and thus IFDISABLED flag still here. With IFDISABLED flag the
system won't do DAD and tentative flag will never cleared.
--
WBR, Andrey V. Elsukov
More information about the freebsd-bugs
mailing list