Hacker News new | ask | show | jobs
by vanilla 4376 days ago
Using 6 as a prefix for ipv6 might be a bad idea.

The DNS Specification (RFC2181[1]) states:

>The DNS itself places only one restriction on the particular labels that can be used to identify resource records. That one restriction relates to the length of the label and the full name. The length of any one label is limited to between 1 and 63 octets. A full domain name is limited to 255 octets (including the separators). The zero length full name is defined as representing the root of the DNS tree, and is typically written and displayed as ".". Those restrictions aside, __any binary string whatever can be used as the label of any resource record.__

>Implementations of the DNS protocols must not place any restrictions on the labels that can be used. In particular, DNS servers must not refuse to serve a zone because it contains labels that might not be acceptable to some DNS client programs.

As an example these are all valid domains

   6.4424.cn, 6www.4424.cn, 6662.cn
But Separating the prefix and domain with a space would already fix the issue.

[1]: http://tools.ietf.org/rfc/rfc2181

1 comments

The record format is the same one that is used for DJBDNS, which by default does not support IPv6 addresses. There is a patch that adds IPv6 support, records start with 6 for IPv6 records.

If you want to create a record named:

  6www.whatever.com
You would put that into the file as:

  66www.whatever.com
Only the first character is used in the DJBDNS record format to specify what the rest of record type is.

Here is more information about the DJBDNS data format: http://cr.yp.to/djbdns/tinydns-data.html

it might not cause problems, but is not very concise

adding syntax to support new features always causes problems (python .. ^cough^)