O que o gerador verifica de verdade
Muitas ferramentas se limitam a colar includes um atrás do outro. A nossa vai além: ela resolve a configuração no DNS antes de deixar você publicar.
Na prática, no momento da geração, ela faz quatro coisas.
Primeiro, ela resolve a cadeia de includes no DNS, com o mesmo motor do nosso verificador de sintaxe SPF. Um include:_spf.google.com não é uma única consulta: ele contém outras, que contêm outras. O gerador segue todas elas e exibe o número real de lookups, não uma estimativa aproximada.
Em seguida, ela conta os void lookups. Um void lookup é uma consulta DNS que não retorna nada: um include para um domínio que sumiu, um NXDOMAIN, uma resposta vazia. A RFC 7208 §4.6.4 tolera 2. A partir do terceiro, vira permerror. Muitos SPF quebrados estão assim por causa de um antigo provedor cujo include não resolve mais, sem que ninguém perceba.
Ela também olha para o seu SPF já publicado. Se encontrar um, não deixa você empilhar um segundo (isso seria um permerror imediato). Ela propõe substituir o existente, ou indica que nada muda se o SPF atual já for idêntico ao resultado.
Por fim, ela verifica seu DMARC. O SPF sozinho deixa brechas; o DMARC fecha o ciclo. Se já existe um DMARC, o gerador propõe verificá-lo; senão, configurá-lo.
Estimativa durante a digitação, contagem real na geração
O formulário exibe uma estimativa ao vivo dos DNS lookups enquanto você marca seus provedores. É rápida, baseada no catálogo, e dá uma ordem de grandeza imediata.
O resultado final, por sua vez, mostra a contagem real após a resolução completa da cadeia. Ela pode ser mais alta que a estimativa. Por quê? Porque os includes aninhados só são visíveis depois de resolvidos no DNS. Um provedor que "custa" 1 no catálogo pode consumir três depois que sua cadeia é desenrolada.
Confie no número final antes de publicar. É ele que conta para o limite de 10.
Add, replace ou no change: o que o gerador recomenda
O gerador lê o SPF atualmente publicado no seu domínio, depois adapta suas instruções.
| Situação detectada | Instrução | Por quê |
|---|---|---|
| Nenhum SPF publicado | Adicionar um registro TXT | O domínio não está protegido, é preciso criar o SPF |
| Um SPF existe e diverge | Substituir o registro existente | Dois SPF no mesmo domínio provocam um permerror |
| Um SPF idêntico já está lá | Nenhuma modificação | Inútil republicar o mesmo valor |
A regra a guardar cabe em uma frase: um domínio, um único SPF. Se você adiciona um provedor, edita o registro existente, não cria um novo.
O que é um registro SPF?
SPF (Sender Policy Framework) é um mecanismo de autenticação de email definido na RFC 7208. Ele permite que um domínio declare quais servidores têm o direito de enviar emails em seu nome.
Sem SPF, qualquer um pode escrever um email se passando pelo seu domínio. Com um SPF correto, os servidores destinatários comparam o remetente real com sua lista autorizada e rejeitam ou marcam o que não bate.
Configurar SPF serve para proteger seu domínio contra a falsificação, melhorar a entregabilidade dos seus emails legítimos, e estabelecer um dos dois pilares do DMARC (o outro sendo o DKIM). Gmail, Outlook e Yahoo verificam todos o SPF: não tê-lo é começar com uma desvantagem.
Sintaxe de um registro SPF
Um registro SPF é um registro DNS TXT que sempre começa com v=spf1:
v=spf1 include:_spf.google.com include:sendgrid.net ip4:192.0.2.1 ~all
Mecanismos SPF
| Mecanismo | Descrição | Exemplo | DNS Lookup |
|---|---|---|---|
include: | Inclui o SPF de outro domínio | include:_spf.google.com | Sim |
ip4: | Autoriza um endereço ou faixa IPv4 | ip4:192.0.2.1 ou ip4:192.0.2.0/24 | Não |
ip6: | Autoriza um endereço ou faixa IPv6 | ip6:2001:db8::1 | Não |
a | Autoriza o IP do registro A do domínio | a ou a:mail.captaindns.com | Sim |
mx | Autoriza os servidores MX do domínio | mx | Sim |
all | Define o comportamento padrão | -all, ~all, ?all | Não |
Qualificadores de política
| Política | Sintaxe | Significado | Recomendação |
|---|---|---|---|
| Fail | -all | Rejeitar os envios não autorizados | Produção, após testes |
| Softfail | ~all | Marcar como suspeito, sem bloquear | Para começar |
| Neutral | ?all | Nenhuma orientação | Não recomendado |
O ?all merece uma palavra. Do lado da avaliação, ele quase não protege nada: um servidor destinatário o trata quase como a ausência de SPF. Evite, salvo pelo tempo bem curto de um diagnóstico.
O limite dos 10 DNS lookups
A RFC 7208 limita a 10 o número de consultas DNS durante a avaliação de um SPF. Limite estrito: ultrapassá-lo provoca um permerror e a falha da validação.
O que conta como lookup
| Mecanismo | Conta? | Observação |
|---|---|---|
include: | Sim, mais os lookups aninhados | Um include pode esconder vários |
a | Sim | |
mx | Sim | Mais 1 por registro MX resolvido |
redirect= | Sim | |
exists: | Sim | |
ip4: / ip6: | Não | Prefira para economizar |
all | Não |
A armadilha clássica: um include que parece inofensivo. include:_spf.google.com contém ele próprio vários includes. É aí que a contagem real do gerador faz a diferença frente a uma estimativa aproximada.
Provedores de email compatíveis
O gerador conhece os principais provedores de email e adiciona o include deles no formato correto assim que você os marca. Uma busca cobre todo o catálogo, além dos provedores comuns exibidos por padrão. Veja alguns exemplos entre os provedores compatíveis:
| Provedor | Include SPF |
|---|---|
| Google Workspace | _spf.google.com |
| Microsoft 365 | spf.protection.outlook.com |
| Amazon SES | amazonses.com |
| SendGrid | sendgrid.net |
| Mailgun | mailgun.org |
| Brevo (ex-Sendinblue) | spf.sendinblue.com |
| Zoho | spf.zoho.com |
| Mailchimp | servers.mcsv.net |
| Postmark | spf.mtasv.net |
| HubSpot | spf.hubspot.com |
| Salesforce | _spf.salesforce.com |
| Infomaniak | spf.infomaniak.ch |
Seu provedor não está na lista? Pesquise o nome dele no gerador: o catálogo vai bem além desses poucos exemplos.
FAQ - Perguntas frequentes
P: Como criar um registro SPF para meu domínio?
R: Escolha seus provedores de email, adicione seus IPs se necessário, depois selecione a política (~all para começar). O gerador resolve os includes, exibe o número real de DNS lookups e indica se é preciso adicionar um SPF ou substituir o que já existe. Copie o registro TXT e publique-o na sua zona DNS.
P: O que é um void lookup em SPF?
R: Uma consulta DNS que não retorna nada: include para um domínio que sumiu, NXDOMAIN, resposta vazia. A RFC 7208 §4.6.4 autoriza no máximo 2. Acima disso, a avaliação falha em permerror. O gerador os detecta e os conta enquanto resolve a cadeia.
P: O gerador exibe o número real de lookups?
R: Durante a digitação, é uma estimativa rápida baseada no catálogo. Na geração, ele resolve de verdade a cadeia de includes no DNS, com o mesmo motor do nosso verificador de sintaxe SPF. A contagem final é exata, e às vezes mais alta que a estimativa, pois segue os includes aninhados.
P: O gerador consegue detectar meu SPF atual?
R: Sim. Ele lê o SPF publicado no seu domínio. Sem SPF: ele propõe adicionar um. SPF existente e diferente: ele propõe substituí-lo, nunca criar um segundo. SPF já idêntico: nenhuma modificação.
P: Posso ter vários registros SPF?
R: Não. Um único SPF por domínio. Publicar dois provoca um permerror. Combine os includes dos seus provedores em um único registro.
P: Qual a diferença entre ~all e -all?
R: ~all (softfail) marca os envios não autorizados como suspeitos sem bloqueá-los. -all (fail) os rejeita. Comece com ~all enquanto valida, depois passe para -all.
P: Como resolver o erro too many DNS lookups?
R: Remova os includes inúteis, substitua alguns includes por IPs diretos (ip4/ip6 não contam), ou achate o registro com nosso SPF Flattener. O gerador exibe o contador de lookups reais para evitar chegar a esse ponto.
Ferramentas complementares
| Ferramenta | Utilidade |
|---|---|
| SPF Record Check | Verifique seu SPF publicado e sua validade |
| SPF Flattener | Achate seu SPF para ficar abaixo dos 10 DNS lookups |
| SPF Syntax Check | Valide a sintaxe SPF antes da publicação |
| DKIM Generator | Crie suas chaves DKIM (RSA/Ed25519) |
| DMARC Generator | Configure o DMARC para completar a autenticação |
| Mail Tester | Teste a entregabilidade dos seus emails |
Recursos úteis
- RFC 7208 - Sender Policy Framework (SPF) : especificação oficial, incluindo a §4.6.4 sobre os void lookups
- RFC 7489 - DMARC : como o SPF se integra com o DMARC
- Google Workspace - configurar SPF : guia oficial do Google
- Microsoft 365 - configurar SPF : guia oficial da Microsoft