Divisor de registros TXT de DNS
Corta un valor TXT largo en las cadenas de 255 bytes que exige el DNS, listo para el fichero de zona.
El Divisor de registros TXT funciona por completo en tu navegador. Claves y tokens de verificación se trocean en tu dispositivo y nunca se suben.
Generar un registro DKIM
Acerca de Divisor de registros TXT
Un registro TXT no es una sola cadena. La RFC 1035 lo guarda como una secuencia de cadenas de caracteres de 255 bytes como máximo, y el resolutor las une sin nada en medio. Por eso una clave DKIM de 2048 bits tiene que entregarse al fichero de zona en varios trozos entrecomillados, y por eso partirla en el sitio equivocado —o unir las piezas con un espacio— rompe la firma del correo de una forma difícil de depurar. Esta herramienta corta en límites de bytes, nunca a mitad de un carácter, y da el resultado con formato para BIND, para una entrada entre paréntesis o como el array JSON que aceptan casi todas las API de DNS.
Características
- Divide en límites de 255 bytes, contando bytes y no caracteres
- Nunca parte un carácter multibyte ni un par sustituto
- Formato para BIND en una línea, entre paréntesis, solo cadenas o array JSON
- Recuento de bytes por trozo, para ver qué cadenas están llenas
- Avisa de espacios sobrantes, comillas ya presentes y registros por encima de 512 bytes
- Vuelve a unir cadenas de un fichero de zona o de una respuesta de dig
- Ejemplos de clave DKIM de 2048 bits, SPF largo y token de verificación
Cómo usar Divisor de registros TXT
- Pega el valor TXT completo: las comillas se añaden solas
- Indica el nombre del registro y el TTL si quieres una línea de zona completa
- Elige el formato de salida que espera tu proveedor de DNS
- Copia el registro, o usa la pestaña de unir para revertir un valor partido
Ejemplo
Entrada
v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A… (392 bytes)
Salida
default._domainkey 3600 IN TXT "v=DKIM1; k=rsa; p=MIIBIja…" "…QIDAQAB"
Dos cadenas entrecomilladas que el resolutor concatena sin nada entre ellas.
Errores comunes y solución de problemas
- El proveedor de DNS rechaza el registro por ser demasiado largo. — Está aplicando el límite de 255 bytes a una sola cadena. Pega la versión partida, con cada trozo entrecomillado por separado.
- La verificación DKIM falla tras dividir. — Casi siempre es un espacio entre los trozos. Los resolutores concatenan las cadenas sin nada en medio, así que cualquier espacio añadido pasa a formar parte de la clave.
- El valor del registro ya lleva comillas. — Pega el valor en bruto. Las comillas se añaden al dar formato, y pegar un valor ya entrecomillado acaba duplicándolas.
- Los trozos son más cortos de 255 caracteres. — El límite es de 255 bytes, no de caracteres. Cualquier carácter no ASCII ocupa de dos a cuatro bytes, así que un trozo puede tener menos caracteres y estar igualmente lleno.
Preguntas frecuentes
- ¿Por qué un registro TXT está limitado a 255 caracteres?
- Cada cadena dentro de un registro TXT lleva un prefijo de longitud de un solo byte, lo que limita una cadena a 255 bytes. El registro completo puede llevar muchas, así que el límite real es el tamaño del mensaje DNS.
- ¿Cómo vuelve a unir el resolutor las cadenas TXT?
- Las concatena en orden sin ningún separador. Ese comportamiento es el que aprovechan DKIM, SPF y los tokens de verificación, y por eso el punto de corte da igual mientras no se inserte nada.
- ¿Por dónde debo partir una clave DKIM?
- Por donde sea, mientras cada pieza no pase de 255 bytes. Para el verificador la clave es una sola cadena Base64 una vez unidas las piezas, así que cortar en medio del Base64 es perfectamente válido.
- ¿Cuánto puede ocupar el registro TXT completo?
- En la práctica unos pocos kilobytes, pero las respuestas por encima de unos 512 bytes necesitan EDNS o un reintento por TCP. Algunos resolutores lo gestionan mal, así que mantenerse por debajo evita fallos intermitentes.
- ¿Hay que dividir también un registro SPF?
- Solo si una sola cadena supera los 255 bytes, cosa que pasa con muchas inclusiones. Ojo: SPF tiene además su propio límite de diez consultas DNS, y dividir no ayuda en eso.
Herramientas relacionadas
Todas las herramientas de ArrayKit