¿Por qué validar la sintaxis DMARC antes de publicar?
Un registro DMARC mal formateado es ignorado silenciosamente por todos los servidores destinatarios. Gmail, Outlook, Yahoo: ninguno te alertará. Tus emails quedan sin protección contra el spoofing y phishing.
El validador de sintaxis DMARC analiza tu registro antes de la publicación DNS. Detectas los errores inmediatamente, sin esperar 24-48h de propagación para descubrir un problema.
Errores comunes detectados:
- Etiqueta v= faltante → El registro no se reconoce como DMARC
- Política p= ausente → Sin instrucciones de tratamiento para los servidores
- URI rua/ruf inválido → Los reportes nunca se reciben
- Etiquetas duplicadas → Comportamiento impredecible, frecuentemente ignorado
Cómo validar tu registro DMARC en 3 pasos
Paso 1: Copiar el registro DMARC
Prepara tu registro DMARC completo. Ejemplo típico:
v=DMARC1; p=quarantine; rua=mailto:dmarc-reports@captaindns.com; adkim=r; aspf=r; pct=100
Si modificas un registro existente, recupera el valor actual desde tu DNS:
dig TXT _dmarc.captaindns.com +short
Paso 2: Pegar y validar
Pega el registro en el campo de arriba. La herramienta analiza:
- La presencia de etiquetas obligatorias (v, p)
- La validez de cada etiqueta y valor
- El formato de los URIs de reporte (rua, ruf)
- El cumplimiento de las especificaciones RFC 7489
Paso 3: Corregir y publicar
El diagnóstico lista cada etiqueta con su estado:
- ✅ Válido → Etiqueta correcta, lista para publicación
- ❌ Error → Corrección requerida antes de publicar
- ⚠️ Advertencia → Funcional pero mejora recomendada
Corrige los errores, valida nuevamente y luego publica en tu DNS.
¿Qué es un registro DMARC?
DMARC (Domain-based Message Authentication, Reporting and Conformance) es un registro TXT DNS publicado en _dmarc.tudominio.com. Indica a los servidores destinatarios:
- Qué política aplicar a los emails que fallan SPF y DKIM
- Dónde enviar los reportes de autenticación
- Cómo alinear los dominios SPF/DKIM con la dirección From
Estructura de un registro DMARC:
v=DMARC1; p=reject; rua=mailto:reports@captaindns.com; ruf=mailto:forensics@captaindns.com; adkim=s; aspf=s; pct=100
| Etiqueta | Valor | Significado |
|---|---|---|
| v | DMARC1 | Versión del protocolo (obligatoria) |
| p | reject | Política: rechazar emails no autenticados |
| rua | mailto:... | Destino de reportes agregados |
| ruf | mailto:... | Destino de reportes forenses |
| adkim | s | Alineación DKIM estricta |
| aspf | s | Alineación SPF estricta |
| pct | 100 | Aplicar al 100% de los mensajes |
Detalle de las etiquetas DMARC validadas
Etiquetas obligatorias
| Etiqueta | Valores aceptados | Descripción |
|---|---|---|
| v | DMARC1 | Identifica el registro como DMARC. Único valor válido. |
| p | none, quarantine, reject | Política para mensajes no alineados del dominio principal. |
Etiquetas opcionales
| Etiqueta | Valores aceptados | Descripción |
|---|---|---|
| sp | none, quarantine, reject | Política para subdominios (hereda de p si está ausente). |
| rua | URI mailto: o https: | Destinos de reportes agregados (XML diario). |
| ruf | URI mailto: o https: | Destinos de reportes forenses (por mensaje). |
| adkim | r (relaxed), s (strict) | Modo de alineación DKIM. Por defecto: relaxed. |
| aspf | r (relaxed), s (strict) | Modo de alineación SPF. Por defecto: relaxed. |
| pct | 1-100 | Porcentaje de mensajes sujetos a la política. Por defecto: 100. |
| fo | 0, 1, d, s | Opciones de generación de reportes forenses. |
| ri | Segundos | Intervalo deseado entre reportes agregados. Por defecto: 86400. |
| rf | afrf, iodef | Formato de reportes forenses. |
Errores de sintaxis frecuentes
Error 1: Registro sin v=DMARC1
Síntoma: El validador muestra "not_dmarc_record"
Causa: El registro no comienza con v=DMARC1
Corrección:
- p=reject; rua=mailto:reports@captaindns.com
+ v=DMARC1; p=reject; rua=mailto:reports@captaindns.com
Error 2: Política p= faltante
Síntoma: "missing_policy" o "empty_policy"
Causa: La etiqueta p= está ausente o vacía
Corrección:
- v=DMARC1; rua=mailto:reports@captaindns.com
+ v=DMARC1; p=none; rua=mailto:reports@captaindns.com
Error 3: URI rua/ruf inválido
Síntoma: "invalid_rua_uri" o "invalid_ruf_uri"
Causa: El URI no respeta el formato mailto: o https:
Ejemplos de corrección:
- rua=reports@captaindns.com # Falta mailto:
+ rua=mailto:reports@captaindns.com
- ruf="mailto:forensics@captaindns.com" # Comillas prohibidas
+ ruf=mailto:forensics@captaindns.com
- rua=mailto: reports@captaindns.com # Espacio prohibido
+ rua=mailto:reports@captaindns.com
Error 4: Etiqueta duplicada
Síntoma: "duplicate_tag"
Causa: Una etiqueta aparece varias veces
Corrección:
- v=DMARC1; p=none; p=reject; rua=mailto:reports@captaindns.com
+ v=DMARC1; p=reject; rua=mailto:reports@captaindns.com
Error 5: pct fuera de rango
Síntoma: "invalid_pct_value"
Causa: El valor pct no está entre 1 y 100
Corrección:
- v=DMARC1; p=reject; pct=0 # 0 inválido
+ v=DMARC1; p=reject; pct=10 # Mínimo 1
- v=DMARC1; p=reject; pct=150 # >100 inválido
+ v=DMARC1; p=reject; pct=100
Buenas prácticas de implementación DMARC
1. Comenzar con p=none
No pases directamente a p=reject. Comienza observando:
v=DMARC1; p=none; rua=mailto:dmarc@captaindns.com
Esta política no bloquea nada pero genera reportes. Analízalos durante 2-4 semanas.
2. Configurar rua desde el inicio
Los reportes agregados son esenciales para:
- Identificar fuentes legítimas que fallan la autenticación
- Detectar intentos de spoofing
- Validar la progresión hacia p=quarantine y luego p=reject
3. Progresión hacia p=reject
Una vez que SPF y DKIM estén alineados en todas las fuentes legítimas:
p=none→ Observar (2-4 semanas)p=quarantine; pct=10→ Probar con el 10% del tráficop=quarantine; pct=50→ Aumentar progresivamentep=quarantine; pct=100→ Cuarentena completap=reject→ Protección máxima
4. Gestionar subdominios con sp=
Por defecto, los subdominios heredan la política p. Si envías emails desde subdominios (marketing.captaindns.com), recuerda:
- Configurar SPF/DKIM en cada subdominio
- Usar
sp=si la política debe ser diferente
FAQ - Preguntas frecuentes
P: ¿Qué etiquetas DMARC son obligatorias?
R: Dos etiquetas son obligatorias: v=DMARC1 (versión) y p= (política). Sin estas etiquetas, el registro es inválido e ignorado por los servidores destinatarios. Todas las demás etiquetas son opcionales.
P: ¿Qué significa el error "política faltante"?
R: El registro no contiene la etiqueta p= que define la política. Agrega uno de los tres valores posibles:
p=none→ Sin acción, solo reportesp=quarantine→ Marcar como spamp=reject→ Rechazar el mensaje
P: ¿Cómo corrijo un error de URI rua/ruf?
R: Los URIs deben seguir el formato exacto mailto:direccion@dominio.com o https://endpoint. Errores comunes:
- Olvidar
mailto:antes de la dirección - Comillas alrededor del URI
- Espacios en la dirección
- Dirección de email inválida
P: ¿Cuál es la diferencia entre rua y ruf?
R:
- rua (reportes agregados): reportes diarios en formato XML, resumen estadístico
- ruf (reportes forenses): reporte por mensaje individual en fallo
Comienza solo con rua. Los reportes ruf generan mucho tráfico y pueden contener datos sensibles.
P: ¿Qué significa "pct fuera de rango"?
R: La etiqueta pct define el porcentaje de mensajes sujetos a la política p. Valores aceptados: 1 a 100. Si omites pct, la política se aplica al 100% de los mensajes (comportamiento por defecto).
P: ¿Por qué validar antes de publicar en DNS?
R: Un error de sintaxis hace que el registro sea inválido. Los servidores destinatarios lo ignoran silenciosamente: no recibes ninguna alerta, pero tus emails no tienen protección DMARC. Valida sistemáticamente antes de cada modificación DNS.
P: ¿El validador verifica la publicación DNS?
R: No, esta herramienta solo valida la sintaxis del registro. Para verificar que el registro esté correctamente publicado y propagado en el DNS, usa el Inspector DMARC después de la publicación.
Herramientas complementarias
| Herramienta | Utilidad |
|---|---|
| Inspector DMARC | Verificar la publicación y resolver el registro DMARC desde DNS |
| Generador DMARC | Crear un registro DMARC conforme a las especificaciones |
| Inspector SPF | Validar el registro SPF de tu dominio |
| Inspector DKIM | Verificar la clave pública DKIM y la firma |
| Probador de email | Probar la autenticación completa enviando un email real |
Recursos útiles
- RFC 7489 - Domain-based Message Authentication, Reporting and Conformance (DMARC) (especificación oficial)
- Google - Configurar DMARC (guía Gmail/Workspace)
- Microsoft - DMARC en Microsoft 365 (guía Outlook/M365)
- dmarc.org - Overview (documentación del consorcio DMARC)