Dominios definen cero o más mecanismos. Mecanismos se pueden utilizar para describir el conjunto de hosts que se designan los anuncios publicitarios de salida para el dominio.
all | ip4 | ip6 | a | mx | ptr | exists | include
Los dominios pueden definir también modificadores . Cada modificador puede aparecer sólo una vez.
Mecanismos
Mecanismos pueden ser precedidos de una de las cuatro eliminatorias:
«+» | Pass |
«-« | Fail |
«~» | SoftFail |
«?» | Neutral |
Si un mecanismo resulta en un éxito, se utiliza su valor calificador. El calificador por omisión es «+», es decir «paso». Por ejemplo:
«v=spf1 -all»
«v=spf1 a -all»
«v=spf1 a mx -all»
«v=spf1 +a +mx -all»
Mecanismos se evalúan en orden. Si no hay ningún mecanismo o modificador de los partidos, el resultado por defecto es «neutral».
Si un dominio no tiene registro SPF en absoluto, el resultado es «Ninguno». Si un dominio tiene un error temporal durante el procesamiento de DNS, se obtiene el resultado «TempError» (llamado «error» en los primeros borradores). Si se produce algún tipo de sintaxis o la evaluación de errores (por ejemplo. El dominio especifica un mecanismo no reconocido) el resultado es «PermError» (antes «desconocido»).
Evaluación de un registro SPF puede devolver cualquiera de estos resultados:
SD112
El mecanismo «all»
all
Este mecanismo siempre coincide. Por lo general va al final del registro SPF.
Ejemplos:
«v=spf1 mx -all»
Permita al dominio MXes enviar correo para el dominio, prohibir todas las demás.
«v=spf1 -all»
El dominio envía ningún correo en absoluto.
«v=spf1 +all»
El propietario del dominio cree que SPF es inútil y / o no le importa.
El mecanismo “ip4”
ip4:<ip4-address>
ip4:<ip4-network>/<prefix-length>
El argumento de la «ip4:» mecanismo es un rango de red IPv4. Si no se da el prefijo de longitud, / 32 se supone (señalando a una dirección de host individual).
Ejemplo:
«v = spf1 ip4: 192.168.0.1/16 -all»
Permitir cualquier dirección IP entre 192.168.0.1 y 192.168.255.255.
El mecanismo “ip6”
ip6:<ip6-address>
ip6:<ip6-network>/<prefix-length>
El argumento de la «ip6:» mecanismo es un rango de red IPv6. Si no se da el prefijo de longitud, se supone / 128 (señalando a una dirección de host individual).
Ejemplos
«v=spf1 ip6:1080::8:800:200C:417A/96 -all»
Permitir cualquier dirección IPv6 entre 1080 :: 8: 800: 0000: 0000 y 1080 :: 8: 800: FFFF: FFFF.
«v=spf1 ip6:1080::8:800:68.0.3.1/96 -all»
Permitir cualquier dirección IPv6 entre 1080 :: 8: 800: 0000: 0000 y 1080 :: 8: 800: FFFF: FFFF.
El mecanismo “a”
a
a/<prefix-length>
a:<domain>
a:<domain>/<prefix-length>
Todos los registros para el dominio se ponen a prueba. Si la IP del cliente se encuentra entre ellos, este mecanismo coincide.
Si no se especifica de dominio, se utiliza el dominio actual.
Los registros A tienen que coincidir con la IP del cliente exactamente, a menos que se proporciona un prefijo de longitud, en cuyo caso cada dirección IP devuelta por la Una búsqueda se ampliará para su prefijo CIDR correspondiente, y el cliente IP se buscará dentro de esa sub red.
«v=spf1 a -all»
Se utiliza el-dominio actual.
«v=spf1 a:example.com -all»
Equivalente, si el dominio actual es example.com
«v=spf1 a:mailers.example.com -all»
Quizás example.com ha optado por una relación explícita de todos los programas de correo de salida en un especial de un registro bajo mailers.example.com
v=spf1 a/24 a:offsite.example.com/24 -all»
Si example.com resuelve a 192.0.2.1, toda la clase C de 192.0.2.0/24 se buscó la IP del cliente. Del mismo modo para offsite.example.com. Si se devuelve más de un registro A, cada uno se ampliaría a una subred CIDR.
El mecanismo «mx»
mx
mx/<prefix-length>
mx:<domain>
mx:<domain>/<prefix-length>
Todos los registros para todos los registros MX de dominio se prueban en orden de prioridad MX. Si la IP del cliente se encuentra entre ellos, este mecanismo coincide.
Si no se especifica de dominio, se utiliza el dominio actual.
Los registros A tienen que coincidir con la IP del cliente exactamente, a menos que se proporciona un prefijo de longitud, en cuyo caso cada dirección IP devuelta por la Una búsqueda se ampliará para su prefijo CIDR correspondiente, y el cliente IP se buscará dentro de esa subred.
Ejemplos:
«v=spf1 mx mx:deferrals.domain.com -all»
Tal vez un dominio envía el correo a través de sus servidores MX además de otro conjunto de servidores cuyo trabajo consiste en reintentar electrónico para diferir dominios
«v=spf1 mx/24 mx:offsite.domain.com/24 -all»
Tal vez los servidores MX de un dominio reciben el correo en una dirección IP, pero enviar correo en una dirección IP diferente, pero cerca.
El mecanismo «ptr»
ptr
ptr:<domain>
El nombre de host o nombres de host para la IP del cliente se buscan mediante consultas PTR. Los nombres de host se validan: al menos uno de los registros para un nombre de host PTR debe coincidir con la IP del cliente original. Nombres de host no válidos se descartan. Si un nombre de host válido termina en dominio, este mecanismo coincide.
Si no se especifica de dominio, se utiliza el dominio actual.
Si es posible, se debe evitar el uso de este mecanismo en su registro SPF, ya que dará lugar a un mayor número de búsquedas de DNS caros.
Ejemplos:
«v=spf1 ptr -all»
Un dominio que controla directamente todas sus máquinas (a diferencia de un acceso telefónico o de banda ancha ISP) permite a todos sus servidores para enviar correo. Por ejemplo, hotmail.com o paypal.com podría hacer esto.
«v=spf1 ptr:otherdomain.com -all»
Cualquier servidor cuyo nombre de host termina en otherdomain.com se designa.
El mecanismo “exists”
exists:<domain>
Realizar una consulta A en el dominio proporcionado. Si se encuentra un resultado, esto constituye un partido. No importa lo que el resultado de la búsqueda es – que podría ser 127.0.0.2.
Cuando se utiliza macros con este mecanismo, puede realizar búsquedas de estilo RBL-IP invertidas, o establecer excepciones por usuario.
Ejemplos:
En el siguiente ejemplo, el IP del cliente es 1.2.3.4 y el dominio actual es example.com.
«v=spf1 exists:example.com -all»
Si example.com no se resuelve, el resultado es un error. Si no resolver, este mecanismo resulta en un partido.
El mecanismo “include”
include:<domain>
El dominio especificado se busca en un partido. Si la búsqueda no devuelve un partido o de un error, el proceso pasa a la siguiente directiva. Advertencia: Si el dominio no tiene un registro SPF válida, el resultado es un error permanente. Algunos receptores de correo rechazará basado en un PermError.
Ejemplos:
En el siguiente ejemplo, el IP del cliente es 1.2.3.4 y el dominio actual es example.com
«v=spf1 include:example.com -all»
Si example.com no tiene registro SPF, el resultado es PermError.
Supongamos que registro SPF de example.com eran «v = spf1 un -all».
Busque el registro A para example.com. Si coincide con 1.2.3.4, vuelva Pass.
Si no hay ninguna coincidencia, que no sea del dominio incluido «-todos», la incluyen en su conjunto no coincide; el resultado final es todavía falte de la Directiva exterior establecido en este ejemplo.
Las relaciones de confianza – El «incluyen:» mecanismo está destinado a cruzar los límites administrativos. Se necesita mucho cuidado para asegurar que «incluyen:» mecanismos no colocan dominios en riesgo de dar resultados SPF Pass de los mensajes que se derivan de la falsificación de usuario cruz. A menos que los mecanismos técnicos están en su lugar en la especificada otherdomain para evitar la falsificación de usuario cruz «, incluyen:» mecanismos deberían dar un neutral en lugar de paso de resultado. Esto se hace mediante la adición de «?» delante de «incluir». El ejemplo anterior sería:
«v=spf1 ?include:example.com -all»
En retrospectiva, el nombre de «incluir» fue mal elegido. Sólo se utiliza el resultado evaluado del registro SPF se hace referencia, en lugar de actuar como si el registro SPF referencia fue, literalmente, incluido en el primero. Por ejemplo, la evaluación de una directiva «-todos» en el expediente referenciado no termina el proceso global y no necesariamente resulta en una Falla general. (Mejores nombres para este mecanismo habría sido «if-pass», «on-pass», etc.)
Modificadores
Los modificadores son opcionales. Un modificador puede aparecer sólo una vez por cada registro. Desconocida modificadores son ignorados.
El modificador “redirect”
redirect=<domain>
El registro SPF para el dominio reemplace el registro actual. El dominio macro-ampliado también es sustituido por el actual dominio en esos look-ups.
Ejemplos:
En el siguiente ejemplo, el IP del cliente es 1.2.3.4 y el dominio actual es example.com.Dominio en organismos europeos de normalización de un vistazo.
«v=spf1 redirect=example.com»
Si example.com tiene ningún registro SPF, que es un error; el resultado es desconocido.
Supongamos registro SPF de example.com era «v = spf1 un -all».
Busque el registro A para example.com. Si coincide con 1.2.3.4, vuelva Pass.
Si no hay ninguna coincidencia, el ejecutivo no coincide, y se utiliza el valor -todas.
El modificador “exp”
exp=<domain>
Si un receptor SMTP rechaza un mensaje, puede incluir una explicación. Un editor SPF puede especificar la cadena de explicación que los remitentes ver. De esta manera, un ISP puede dirigir a los usuarios no conformes a una página web que ofrece más instrucciones sobre cómo configurar SASL.
El dominio se expande; se realiza una búsqueda de texto. El resultado de la consulta TXT es entonces macro-expandido y se muestra al remitente. Otros macros se pueden utilizar para proporcionar una explicación personalizada.
Leave A Comment?