tech-net archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: ip6addrctl(8) support



    Date:        Tue, 15 Nov 2011 21:01:40 -0600
    From:        David Young <dyoung%pobox.com@localhost>
    Message-ID:  <20111116030140.GM20624%pixotech.com@localhost>

  | Look at the approach I take in in_getifa(9).  It is a more flexible way
  | to implement RFC3484 than ip6addrctl and the IPv6 stack currently use.

I had not noticed that before, it is definitely better than 3484, and
orders of magnitude better than the ip6addrctl (as described here), but
still not quite enough.

The one missing thing is a missing piece from NetBSD's interface configuration,
and as best I can tell, most other network configs - IPv6 addresses have
an address type, or class, and it isn't just "private/link-local/other",
we have temporary use addresses, and CGAs (well, we should... and can at
application level even if the kernel support is not there) and potentially
more (like we should have care of addresses and home addresses, and ...) - a
web browser probably should be requesting a temporary use care-of addr
(that is, rfc4941) for privacy, on the other hand, an e-mail client (MTA)
probably should not, to avoid grey-listing (and other anti-spam) nonsense,
it really needs to use a stable (DNS listed probably) permanent address
(or as permanent as they come these days), which might mean a home addr,
though e-mail clients don't really need that (if the node moves, the e-mail
transaction can just restart using a new care-of addr, mobile IP isn't really
needed for e-mail).

For this to be possible, we need to be able to configure the address type
when addresses are configured, and the address type needs to be a bitmap,
not a value, as each capability either exists, or does not, more or less
independently of others, so applications (and the global policy) can
indicate what kind of address to use, if available, or what kind of address
is required, and not do that by attempting to guess which prefix, or which
local part, if of which type.   It is a simple addition (this part was
working fine in the work my students did - though it was never integrated
into ifconfig which would be a requirement for real life use).  I think
it also adds a missing piece needed to correctly handle the IPv6 interface
or addressing (or some) MIB.

Of course, source address selection needs more than just the address type
but without it, we can never do a good job.

kre



Home | Main Index | Thread Index | Old Index