systemadmin.es > DNS > DNS IPv6 – registro AAAA vs A6

DNS IPv6 – registro AAAA vs A6

Para indicar dado un nombre la dirección IPv6, se usa el registro AAAA. La pregunta que, seguramente, a más de una le ha pasado por la cabeza es: ¿porque AAAA en lugar de algo como A6?

IPv6 - A6

IPv6 – A6

Y la respuesta no tiene nada que ver con coches. Si buscamos entre RFCs, podemos encontrar un draft del 2002 que habla precisamente de esto:

At this moment, there are two DNS resource record types defined for
holding IPv6 address in the DNS database; AAAA [Thomson, 1995] and A6
[Crawford, 2000] .  AAAA has been used for IPv6 network operation since
1996.  Questions arose whether we really need A6 or not, or whether it
is really possible to migrate to A6 or not.  Some says AAAA is enough
and A6 is not necessary.  Some says A6 is necessary and AAAA should get
deprecated.

El registro AAAA, se propuso en 1995 y posteriormente se propuso el A6 (2000), por lo que por otro lado tiene sentido que este más extendido el AAAA:

As of writing, AAAA is deployed pretty widely.  BIND4 (since 4.9.4),
BIND8, BIND9 and other implementations support AAAA, as both DNS servers
and as resolver libraries.  On the contrary, the author knows of only
one DNS server/resolver implementation that supports A6; BIND9.

Por otro lado, también habla del formato. El registro AAAA es:

1.1.  AAAA record

AAAA resource record is formatted as follows.  DNS record type value for
AAAA is 28 (assigned by IANA).  Note that AAAA record is formatted as a
fixed-length data.

     +------------+
     |IPv6 Address|
     | (16 octets)|
     +------------+

With AAAA, we can define DNS records for IPv6 address resolution as
follows, just like A records for IPv4.

     $ORIGIN X.EXAMPLE.
     N            AAAA 2345:00C1:CA11:0001:1234:5678:9ABC:DEF0
     N            AAAA 2345:00D2:DA11:0001:1234:5678:9ABC:DEF0
     N            AAAA 2345:000E:EB22:0001:1234:5678:9ABC:DEF0

Mientras que el A6 es:

A6 resource record is formatted as follows.  DNS record type value for
A6 is 38 (assigned by IANA).  Note that A6 record is formatted as a
variable-length data.

     +-----------+------------------+-------------------+
     |Prefix len.|  Address suffix  |    Prefix name    |
     | (1 octet) |  (0..16 octets)  |  (0..255 octets)  |
     +-----------+------------------+-------------------+

With A6, it is possible to define an IPv6 address by using multiple DNS
records.  Here is an example taken from RFC2874:

$ORIGIN X.EXAMPLE.
     N            A6 64 ::1234:5678:9ABC:DEF0 SUBNET-1.IP6
     SUBNET-1.IP6 A6 48 0:0:0:1::  IP6
     IP6          A6 48 0::0       SUBSCRIBER-X.IP6.A.NET.
     IP6          A6 48 0::0       SUBSCRIBER-X.IP6.B.NET.

     SUBSCRIBER-X.IP6.A.NET. A6 40 0:0:0011:: A.NET.IP6.C.NET.
     SUBSCRIBER-X.IP6.A.NET. A6 40 0:0:0011:: A.NET.IP6.D.NET.

     SUBSCRIBER-X.IP6.B.NET. A6 40 0:0:0022:: B-NET.IP6.E.NET.

     A.NET.IP6.C.NET. A6 28 0:0001:CA00:: C.NET.ALPHA-TLA.ORG.

     A.NET.IP6.D.NET. A6 28 0:0002:DA00:: D.NET.ALPHA-TLA.ORG.

     B-NET.IP6.E.NET. A6 32 0:0:EB00::    E.NET.ALPHA-TLA.ORG.

     C.NET.ALPHA-TLA.ORG. A6 0 2345:00C0::
     D.NET.ALPHA-TLA.ORG. A6 0 2345:00D0::
     E.NET.ALPHA-TLA.ORG. A6 0 2345:000E::

Por lo que al no ser compatible implica que el cliente también debe ser modificado para soportar dicho registro. Por lo referente a los registros, lo que indica que traducido a AAAA sería:

If we translate the above into AAAA records, it will be as follows:

     $ORIGIN X.EXAMPLE.
     N            AAAA 2345:00C1:CA11:0001:1234:5678:9ABC:DEF0
     N            AAAA 2345:00D2:DA11:0001:1234:5678:9ABC:DEF0
     N            AAAA 2345:000E:EB22:0001:1234:5678:9ABC:DEF0

Por lo que con A6 tenemos una sintaxis más compleja con rangos, aunque la podemos usar también como AAAA:

It is also possible to use A6 records in ``non-fragmented'' manner, like
below.

     $ORIGIN X.EXAMPLE.
     N            A6 0 2345:00C1:CA11:0001:1234:5678:9ABC:DEF0
     N            A6 0 2345:00D2:DA11:0001:1234:5678:9ABC:DEF0
     N            A6 0 2345:000E:EB22:0001:1234:5678:9ABC:DEF0

Los AAAA tienen su gracia, ya que IPv6 es de 128bits, por lo que es “4 veces IPv4” (que es de 32 bits): de A a AAAA. Tiene su sentido, pero la verdad es que lo que me molesta es que es un rollo escribir cuatro As.

Por otro lado, no me extraña que no se haya utilizado A6 dado que cambia el formato que ya se usaba y hace la sintaxis más compleja: A partir de ahora ya no me importa escribir las cuatro As sabiendo que A6, tal y como esta planteado, hubiera sido peor.

Deja un comentario:

XHTML - Tags permitidos:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>