why rtsold ?

Victor Sudakov vas at mpeks.tomsk.su
Thu Oct 18 16:39:30 UTC 2018


神明達哉 wrote:
> >
> > Who actually processes these router advertisements: the rtsold daemon
> > or the kernel itself?
> >
> > Is this passage:
> >
> > 8.1.1.4. Plug and Play
> >
> > Most of the IPv6 stateless address autoconfiguration is implemented in
> > the kernel. Neighbor Discovery functions are implemented in the kernel
> > as a whole. Router Advertisement (RA) input for hosts is implemented
> > in the kernel. Router Solicitation (RS) output for endhosts, RS input
> > for routers, and RA output for routers are implemented in the
> > userland.
> >
> > still correct?
> > (from https://www.freebsd.org/doc/en/books/developers-handbook/ipv6.html)
> 
> It's slightly outdated.  "RA input for hosts" was originally limited
> to what's described in RFC4862, but it's been extended over time.  The
> RFC4862-side (aka SLAAC) is still implemented in the kernel, but DNS
> configuration options (RFC8106, although the FreeBSD implementation
> may still only conform to RFC6106) are used in the user space.  The
> current trend seems to introduce more such high level config
> information to RA, so I'd expect these will also be handled in the
> user space.
> 
> BTW, regarding the original topic of 'why rtsold', my understanding is
> that its original motivation is to help hosts moving links.  At least
> at the time of development, there was no sophisticated detection
> mechanism when a host is connected to a new link, so no one else could
> send RS to get new network configuration information.  rtsold monitors
> link status and invokes new RS-RA exchanges when it detects a change
> of the link status from off to on.  Address lifetime expiration is not
> usually an issue since routers are supposed to send RAs periodically
> (with sufficiently short intervals to prevent accidental expiration);
> and in any case (AFAIK) rtsold doesn't help that situation, as it
> doesn't send RSes based on address lifetimes.
> 
> Today, we now use DNS config information provided via RA in the user
> space, so another role of rtsold is to reflect any changes to it while
> the host is still connected to the same link.   Routers are supposed
> to advertise RAs with new information, but without rtsold (or
> something equivalent) no one in the user space listens to those RAs to
> apply the configuration change.

Thank you for the explanation.

-- 
Victor Sudakov,  VAS4-RIPE, VAS47-RIPN
2:5005/49 at fidonet http://vas.tomsk.ru/


More information about the freebsd-net mailing list