tipos sirve servidores servidor que para gratis ejemplos configurar dns hostname rfc rfc1035

sirve - Cuál es la longitud máxima de un nombre DNS



tipos de dns (2)

Vi varias menciones de que la longitud máxima de cadena de un nombre DNS (nombre de dominio) es de 253 caracteres. Wikipedia parece estar refiriendo esta vieja publicación de blog:

https://en.wikipedia.org/wiki/Hostname http://blogs.msdn.com/b/oldnewthing/archive/2012/04/12/10292868.aspx

Por otro lado, si entendí el RFC, este artículo es incorrecto. La longitud máxima de la cadena del nombre DNS debe ser de 250 caracteres ASCII en lugar de 253 en función de la siguiente secuencia de bytes, que según RFC1035 tiene un máximo de 255 bytes:

Para simplificar las implementaciones, la longitud total de un nombre de dominio (es decir, octetos de etiqueta y octetos de longitud de etiqueta) está restringida a 255 octetos o menos.

Según RFC1035, los nombres de dominio se componen de la siguiente manera:

un nombre de dominio representado como una secuencia de etiquetas, donde cada etiqueta consta de un octeto de longitud seguido de ese número de octetos. El nombre de dominio termina con el octeto de longitud cero para la etiqueta nula de la raíz. Tenga en cuenta que este campo puede ser un número impar de octetos; no se usa relleno.

Lo que significa que los siguientes campos conforman los nombres de dominio:

  1. Longitud de etiqueta ( LL ): 1 byte
  2. Nombre de la etiqueta ( LN ): 63 bytes (máximo) porque el valor máximo de la longitud de la etiqueta solo puede ser 00111111 (ya que los dos primeros bits están reservados para funcionalidades especiales como punteros)
  3. Etiqueta nula ( NL ): 1 byte (que representa el dominio raíz)

El formato siempre debe ser (a diferencia de la publicación del blog):

LL + LN [ LL + LN ...] + NL

Lo que significa que la longitud máxima debería ser (1 byte = 1 carácter = 1 octeto):

LL (1) + LN (63) + LL (1) + LN (63) + LL (1) + LN (63) LL (1) + LN (61) + NL (1) = 255 bytes

Entonces, si calculamos solo la parte de cadena ( LN ), obtenemos:

63 + 63 + 63 + 61 = 250 caracteres como máximo.

¿Me perdí algo o deberíamos actualizar algunas referencias de Wikipedia? La única parte de la que no estoy seguro es sobre la etiqueta nula formando parte de los 255 bytes.


Con su forma de contar, el nombre de dominio abcde se considerará de cinco caracteres de largo. Sospecha que no muchas personas encontrarán útil esa forma de contar. Esa manera de contar también hace que la longitud máxima varíe según el número de etiquetas, por lo que cuando tienes cuatro etiquetas, la longitud máxima es de 250 caracteres, pero si tienes 127 etiquetas, la longitud máxima es de solo 127 caracteres.

Piénselo de esta manera: cuando imprimimos un nombre de dominio para uso humano, imprimimos los bytes de longitud, es solo que los imprimimos como puntos (todos menos el primer byte de longitud). Si no lo hiciéramos, no podríamos distinguir entre abc y abc. . Ya que los imprimimos, deben incluirse cuando contamos la longitud. Y con esa manera de contar, la longitud máxima es siempre de 253 caracteres (incluido el período final, y el octeto cero no impreso para el root hace 255).

En otras palabras, si tiene un máximo de 250 caracteres ASCII (letras, números, guiones), teniendo en cuenta que el número mínimo de etiquetas es 4, también deberá agregar 3 puntos imprimibles entre ellos que sumen hasta 253 caracteres imprimibles ( omitió el primer byte de longitud y la etiqueta nula).

Ejemplo a continuación (en negrita son caracteres imprimibles, y LLs se imprimen como puntos):

LL (1) + LN (63) + LL (1) + LN (63) + LL (1) + LN (63) + LL (1) + LN (61) + NL (1) = 255 bytes

Entonces el nuevo cálculo que incluye puntos se convertirá en:

63 + 1 + 63 + 1 + 63 + 1 + 61 = 25 3 caracteres máximo.


  1. 253 caracteres es la longitud máxima del nombre de dominio completo , incluidos los puntos: por ejemplo, www.example.com = 15 caracteres.
  2. 63 caracteres en la longitud máxima de una "etiqueta" (parte del nombre de dominio separado por punto). Las etiquetas para www.example.com son com , example y www .

Este es un ejemplo del dominio con la etiqueta más larga posible (un sitio web que funciona completamente por cierto): http://www.abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk.com/ . La longitud del nombre de dominio = 71 caracteres.

Este será un ejemplo de nombre de dominio más largo: abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcde.abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk.abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk.abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk.com