ietf
[Top] [All Lists]

IPv6 Zone Identifiers Considered Hateful

2012-03-19 05:56:14
I've obviously not been doing all my homework, and RFC 4007 slipped my 
attention.  Worse, for all the communication my IPv6 nodes are doing amongst 
themselves using link-local addresses, it's never really been much more than a 
hastily-justified curiosity why, when I ping one from the other using 
link-local-scoped addresses, I have to put in this zone identifier (%ifname on 
BSD and Linux).

Yesterday, I configured a DNS server to listen just using a link-local address, 
the one autoconfigured for an ethernet card accessible to all the nodes.  It's 
a host, not a router, so I'm relying on that address not being routable and 
being filtered at the router.  It didn't work.  The server would not start 
until I specified the zone suffix.  Now I am wondering why, given that there is 
no ambiguous link-local address anywhere around here, I need to do that.  Can't 
it figure it out itself?

What about the other problems with this suffix?  It's host-specific, so it's 
unsafe to share it over the network (I need to share the DNS server using 
stateless DHCPv6).  The format differs between OSes (Windows uses %n).  It 
interferes with URLs, if Wikipedia is to be believed.  It breaks expectations, 
essentially because it's the exception to the rule that the address bits (and 
hence the address format) conveys all the required information.

So zone suffixes are considered hateful.  Yes, it's true, I enjoy a good whinge 
and it's a shame I had to learn this on-demand, but really, their use should be 
limited to just those circs where it's actually necessary, and let's be honest, 
that ought to be very rare.

Cheers,
Sabahattin