¿Por qué validar la sintaxis SPF antes de publicar?
Un registro SPF (Sender Policy Framework) mal formado puede tener consecuencias inmediatas: correos rechazados, autenticación desactivada o, peor aún, una falsa sensación de seguridad. La validación sintáctica detecta estos problemas antes de que afecten tu entregabilidad.
Tres casos de uso principales:
- Nuevo SPF -> Valida la estructura antes de la primera publicación
- Modificación SPF -> Verifica que los cambios no introduzcan errores
- Diagnóstico de entregabilidad -> Confirma que la sintaxis no causa los rechazos
Cómo usar el validador en 3 pasos
Paso 1: Copiar el registro SPF
Recupera tu registro desde:
- Tu interfaz DNS (GoDaddy, Cloudflare, Route 53, etc.)
- Una herramienta de lookup DNS
- Directamente tu editor de texto si lo estás escribiendo
Formato esperado:
v=spf1 ip4:203.0.113.0/24 include:_spf.google.com -all
Paso 2: Pegar en el validador
Pega el registro completo en el formulario de arriba. La herramienta analiza automáticamente:
- ✅ Estructura base (v=spf1)
- ✅ Mecanismos (ip4, ip6, mx, a, include, exists, ptr)
- ✅ Modificadores (redirect, exp)
- ✅ Calificadores (+, -, ~, ?)
- ✅ Directiva final (all)
Paso 3: Corregir y publicar
El informe muestra:
- Errores (rojo): Problemas bloqueantes a corregir
- Advertencias (naranja): Riesgos de seguridad o buenas prácticas
- Información (azul): Detalles sobre la estructura analizada
Corrige los errores y luego publica en tu DNS.
¿Qué es la sintaxis SPF?
Un registro SPF es una cadena de caracteres publicada en un registro DNS TXT. Su sintaxis sigue una estructura precisa definida por la RFC 7208:
v=spf1 [calificador]mecanismo [modificador] ... directiva_final
Componentes:
| Elemento | Ejemplos | Función |
|---|---|---|
| Versión | v=spf1 | Obligatorio, siempre primero |
| Calificador | +, -, ~, ? | Determina la acción (pass, fail, softfail, neutral) |
| Mecanismo | ip4:, mx, include:, a: | Define los remitentes autorizados |
| Modificador | redirect=, exp= | Opciones adicionales |
| Directiva final | -all, ~all, ?all | Acción por defecto para no coincidencias |
¿Qué analiza exactamente el validador?
Errores de sintaxis
| Código de error | Descripción | Impacto |
|---|---|---|
missing_version | Falta v=spf1 | SPF ignorado (permerror) |
unknown_mechanism | Mecanismo no reconocido | SPF inválido |
mechanism_missing_value | include: sin dominio | SPF inválido |
mechanism_invalid_value | IP o CIDR mal formado | SPF inválido |
duplicate_modifier | Dos redirect= | SPF inválido |
multiple_all | Múltiples directivas all | SPF inválido |
Advertencias de seguridad
| Código | Descripción | Riesgo |
|---|---|---|
weak_qualifier | ?all (neutral) | Sin protección |
permissive_all | +all | Autoriza a todos |
softfail_all | ~all sin transición a -all | Protección parcial |
Límites DNS
| Código | Descripción | Límite RFC |
|---|---|---|
lookup_limit_exceeded | Más de 10 consultas DNS | 10 máx |
void_lookup_limit_exceeded | Demasiadas respuestas vacías | 2 máx |
lookup_cycle | Bucle de referencia | Prohibido |
Casos de uso concretos
Caso 1: Nuevo dominio, primer SPF
Situación: Configuras el correo para captaindns.com con Google Workspace.
Acción: Valida antes de publicar:
v=spf1 include:_spf.google.com -all
Resultado esperado:
- ✅ Sintaxis válida
- ✅ 1 consulta DNS (bajo el límite de 10)
- ✅ Directiva final estricta (-all)
Caso 2: Añadir un nuevo servicio de marketing
Situación: Añades Mailchimp a tu SPF existente.
SPF actual:
v=spf1 include:_spf.google.com -all
SPF modificado:
v=spf1 include:_spf.google.com include:servers.mcsv.net -all
Validación: Confirma que la adición no supera 10 lookups y que la sintaxis sigue siendo válida.
Caso 3: "permerror" en producción
Síntoma: Tus correos fallan con SPF permerror.
Diagnóstico: Pega el registro en el validador.
Error detectado:
v=spf1 ip4:192.168.1.1 include: -all
Error: mechanism_missing_value - include: sin dominio.
Corrección:
v=spf1 ip4:192.168.1.1 include:_spf.captaindns.com -all
Caso 4: Demasiadas consultas DNS
Síntoma: El validador indica lookup_limit_exceeded.
Diagnóstico: Tu SPF tiene demasiados includes:
v=spf1 include:_spf.google.com include:spf.protection.outlook.com include:amazonses.com include:_spf.salesforce.com include:sendgrid.net include:mailchimp.com -all
Soluciones:
- Reemplaza algunos includes por ip4/ip6 directos
- Usa un subdominio dedicado (ej:
marketing.captaindns.com) - Elimina los servicios no utilizados
- Usa nuestro SPF Flattener para resolver automáticamente los includes en IPs
FAQ - Preguntas frecuentes
P: ¿Qué es un registro SPF?
R: SPF (Sender Policy Framework) es un registro DNS TXT que lista los servidores autorizados a enviar correos para tu dominio. Formato: v=spf1 seguido de mecanismos (ip4, mx, include) y una directiva final (-all, ~all).
P: ¿Por qué validar la sintaxis SPF antes de publicar?
R: Un registro SPF mal formado genera un error permanente (permerror) que puede rechazar todos tus correos o desactivar completamente la verificación SPF. Validar antes de publicar evita interrupciones del servicio.
P: ¿Cuál es el límite de consultas DNS para SPF?
R: La RFC 7208 limita a 10 consultas DNS por evaluación SPF. Cada include, a, mx, ptr y exists cuenta. Superar este límite genera un permerror y puede fallar la autenticación.
P: ¿Qué significa el calificador -all vs ~all?
R:
-all(hard fail): Rechaza los correos no autorizados~all(soft fail): Los marca como sospechosos pero los acepta
Empieza con ~all en pruebas, luego pasa a -all en producción para máxima protección.
P: ¿Cómo corrijo el error "too many DNS lookups"?
R:
- Reemplaza includes por
ip4/ip6directos - Elimina mecanismos sin usar
- Usa subdominios con su propio SPF
- Evita
ptr(obsoleto y costoso en consultas)
P: ¿Puedo tener varios registros SPF?
R: No. La RFC exige un solo registro SPF por dominio. Varios registros generan un permerror. Fusiona tus políticas en un solo TXT que empiece por v=spf1.
P: ¿La herramienta valida los dominios de los includes?
R: El validador verifica la sintaxis de los dominios referenciados por include y redirect. Para un análisis completo con resolución DNS y conteo recursivo de lookups, usa el Inspector SPF.
Herramientas complementarias
| Herramienta | Utilidad |
|---|---|
| Inspector SPF | Analizar un SPF publicado con resolución DNS completa |
| SPF Flattener | Aplanar tu SPF para cumplir el límite de 10 DNS lookups |
| Inspector DKIM | Validar tu firma DKIM |
| Inspector DMARC | Configurar y probar tu política DMARC |
| Analizador de encabezados email | Diagnosticar SPF/DKIM/DMARC en un correo recibido |
Recursos útiles
- RFC 7208 - Sender Policy Framework (especificación oficial SPF)
- Google - Configurar SPF (guía Google Workspace)
- Microsoft - SPF para Microsoft 365 (guía Outlook/M365)