svn commit: r245525 - head/etc/rc.d

Gleb Smirnoff glebius at FreeBSD.org
Thu Jan 17 09:38:13 UTC 2013


On Thu, Jan 17, 2013 at 11:07:23AM +0900, Hiroki Sato wrote:
H> bz> Author: bz
H> bz> Date: Thu Jan 17 01:27:39 2013
H> bz> New Revision: 245525
H> bz> URL: http://svnweb.freebsd.org/changeset/base/245525
H> bz>
H> bz> Log:
H> bz>   Add a conditional sleep 1 in case we add any IPv6 addresses to interfaces.
H> bz>   Do this per jail started, not per address.  This will allow DAD to complete
H> bz>   and services to properly start.   Before we have seen problems with services
H> bz>   trying to start before the IPv6 address was available to use and thus
H> bz>   erroring and failing to start.
H> bz>
H> bz>   MFC after:	3 days
H> 
H>  This may be too pedantic, but I think this delay should use
H>  DupAddrDetectTransmits (net.inet6.ip6.dad_count).  The default value
H>  of RETRANS_TIMER and MAX_RTR_SOLICITATION_DELAY in RFC 4861 is 1 sec,
H>  so the theoretical delay value is (DupAddrDetectTransmits *
H>  RETRANS_TIMER + MAX_RTR_SOLICITATION_DELAY).  The rc.d/netif script
H>  uses this value (typically 2 seconds) for DAD.
H> 
H>  I understand a simple 1 second delay works in practice, though.

I'd prefer even a sleep loop that exits once address is avaialable. An
example is in ports/net/zebra/files/zebra.sh.in.

-- 
Totus tuus, Glebius.


More information about the svn-src-all mailing list