----- Original Message ----- From: "Michel Py" <michel@arneill-py.sacramento.ca.us> > > > This thread started with exactly such a question > > being raised, but the rationale on how DNS *could* > > be optimized for IPV6 was not spelled out. > > If you can't relate to a specific protocol, there is little point > spelling out how DNS could be optimized in the abstract. > It might be easier if you start with an Architecture. 128-bit DNS is useful in extending the ability to set more bits in the 160-bit IPv4 header (plus the UDP or TCP headers). The current 2002 "version" of 128-bit DNS is rather simple. People start on the left with 2002:[IPv4]:* where IPv4 is one of their site-ids. That allows an IPv4 header to be constructed with that as the Destination Site-ID. For multi-homing, a node has to be able to determine a Source Site-ID so that packets can find their way back. Historically, the trivial 32-bit DNS has simply been a name to A record mapping service, with only the destination address in the 32-bits of the A record. The source knows its address, or is supposed to. One could imagine designing next year's version (2003) to be 2003:[IPv4src]:[IPv4dst]:*. That would allow the DNS to store binary information on site-to-site prefixes as a name. It is not clear people would want to have a lot of names to describe the *relationships* between nodes, as opposed to just the location of the nodes. Also, that would take 80 bits (16+32+32) of the 128-bit DNS AAAA record, leaving 48 bits for a persistent address. That makes it hard to also include a 16-bit Port Number (for UDP | TCP) and have more than 32-bits left for the IPv4++ extended address bits. If one only cared about the legacy IPv4 transport then they could use the 48-bits for one more persistent IPv4 address and 16-bits for the Port Number. This would be....2003:[IPv4src]:[IPv4dst]:[IPv4]:[Port]...filling the 128-bits. IPv4src of 0 in the 128-bit DNS could mean "any" or the default site-id. This 2003 version could be designed for people who want to take an Intranet and expose it to the global transport. Adding modules to do this with the new stack on Linux is rather easy. Many more of the 160-bits in the classic IPv4 header are now coming into play for routing, and the 128-bit DNS can be used to set those bits. http://www.netfilter.org In 2004, someone may have a different version to suggest... Jim Fleming 2002:[IPv4]:000X:03DB:...IPv8 is closer than you think... http://ipv8.dyndns.tv http://ipv8.yi.org http://ipv8.dyns.cx http://ipv8.no-ip.com http://ipv8.no-ip.org http://ipv8.no-ip.biz http://ipv8.no-ip.info http://www.iana.org/assignments/ipv4-address-space http://www.ntia.doc.gov/ntiahome/domainname/130dftmail/unir.txt