Quando o Postfix usa IPv6 e quando IPv4?

10

Eu configurei meu servidor de email para IPv6 e IPv4, mas na maioria dos casos ele usa IPv4 enquanto o IPv6 está disponível no host remoto. Eu uso o Postfix na versão 2.9. Então, pensei que o postfix usa o IPv6, se disponível, e tem um fallback para o IPv4 ou estou errado?

nazco
fonte
Tem certeza de que possui IPv6? Publique uma cópia do seu /etc/gai.conf, a saída de ip addre ping6 -c 5 www.google.com.
Michael Hampton
Bem, eu sei que funciona porque posso receber e-mails via IPv6 e também testei minha configuração do IPv6 antes de perguntar aqui.
nazco
2
Como o Google enviou todos os meus emails IPv6 para o SPAM, acabei usando "smtp_address_preference = ipv4". Eu sugiro que não prefira o IPv6, pois a maioria dos principais provedores de e-mail (gmail, aol, yahoo, hotmail / outlook etc.) não aceita, não oferece suporte ou envia spam para remetentes do ipv6. Basta dizer .... IPv6 está pronto para o mundo, mas o mundo não está preparado para isso> <:. (...
2
@BOB Você precisa apenas de um DNS reverso nos seus endereços IPv6 para passar pelo Gmail.
Michael Hampton

Respostas:

11

Você definiu o smtp_address_preference opção para expliclity preferem IPv6?

Do postconf (5):

smtp_address_preference (default: any)
       The address type ("ipv6", "ipv4" or "any") that the Postfix SMTP client will try first, when a destination has IPv6 and IPv4 addresses with equal MX preference. This feature has no effect unless  the
       inet_protocols setting enables both IPv4 and IPv6.  With Postfix 2.8 the default is "ipv6".

       Notes for mail delivery between sites that have both IPv4 and IPv6 connectivity:

       ·      The setting "smtp_address_preference = ipv6" is unsafe.  It can fail to deliver mail when there is an outage that affects IPv6, while the destination is still reachable over IPv4.

       ·      The setting "smtp_address_preference = any" is safe. With this, mail will eventually be delivered even if there is an outage that affects IPv6 or IPv4, as long as it does not affect both.

       This feature is available in Postfix 2.8 and later.
andol
fonte
2
Não tenho muita certeza de que condições esse tipo de falha aconteceria. Eu tenho "smtp_address_preference = ipv6" definido por mim mesmo e verifiquei casos dele voltando ao registro A após uma falha na conexão contra o registro AAAA.
Andol
4
Pode ser útil nos casos em que você pode se conectar pelo IPv6, mas há outro problema. Não ter um DNS reverso configurado para o seu endereço IPv6 de origem é comum. O destino (por exemplo, o Google Mail) aceita a conexão IPv6, mas rejeita seu e-mail porque a verificação reversa do DNS falha. Quando você prefere o IPv6, sempre recebe a rejeição. Quando você seleciona o protocolo aleatoriamente, a mensagem pode demorar um pouco, mas na próxima tentativa ela será exibida.
Sander Steffann
1
@ander: Hmm, não, apenas testado. Mesmo com "smtp_address_preference = ipv6", uma rejeição 4xx no AAAA ainda acionará um reenvio no endereço A.
Andol
1
@ander: Para o meu teste rápido, fui sem MX, e entregue diretamente ao nome do host. Mas não, nenhum segundo registro MX. paste.ubuntu.com/6696807
andol
1
@ander: Ainda assim, exatamente o mesmo resultado com um registro MX adequado - paste.ubuntu.com/6696854
andol
2

Como o Postfix está configurado corretamente com o IPv6, ele é instruído a usar os dois protocolos e o host MX ao qual ele se conecta possui os registros A e AAAA, o Postfix faz uma escolha aleatória todas as vezes, como o próprio Wietse Wenema explicou :

Os clientes SMTP Postfix recentes selecionam aleatoriamente entre IPv4 e IPv6 para que o email não fique preso quando um dos dois estiver inativo.

lrosa
fonte
Ok, então isso significa que não há mais "Eu tento o IPv6 e se ele falhar no IPv4", como nas versões mais antigas do postfix?
nazco