Acabei de instalar o Postfix no meu Ubuntu, em uma rede local.
Nesta rede, eu tenho um Exchange Server (usando domínio mail.example.com
). Ocorreu um problema ao enviar um email para um endereço local [email protected]
::
relay=none, delay=0.01, delays=0.01/0/0/0, dsn=4.3.5, status=deferred
(Host or domain name not found. Name service error for name=example.com
type=AAAA: Host found but no data record of requested type)
Resolvi esse problema usando relay_domain
no meu Postfix main.cf
:
relay_domains = example.com
transport_maps = hash:/etc/postfix/transport
E no meu /etc/postfix/transport
:
example.com smtp:[mail.example.com]
Agora eu posso enviar e-mails @example.com
e testei alguns dos principais webmails (Gmail, Yahoo, Hotmail ...). Funciona. Mas por que esse erro ocorreu nos meus endereços @example.com
? Como posso ter certeza de que nunca encontrei esse erro em outro domínio?
Minha configuração do Postfix é:
postconf -n
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
inet_interfaces = all
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
mydestination = SRVWEB, localhost.localdomain, localhost
myhostname = SRVWEB
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
myorigin = /etc/mailname
readme_directory = no
recipient_delimiter = +
relay_domains = mutuelle-var.fr
relayhost =
smtp_generic_maps = hash:/etc/postfix/generic
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_use_tls = yes
transport_maps = hash:/etc/postfix/transport
Respostas:
Seu servidor está tentando usar o IPv6 ao enviar o email. Como o
mail.example.com
não possui um registro AAAA (que é o mesmo que um registro A, mas para IPv6), isso não está funcionando.Se você deseja que o Postfix nunca use o IPv6, você pode alterá-lo no arquivo de configuração, conforme explicado na página do manual postconf (5):
Se você deseja alterá-lo apenas para este domínio, altere seu mapa de transporte para ler
fonte
inet_protocols = all
ele não tenta umaA
pesquisa se umaAAAA
pesquisa falhar, o que parece inútil. Além disso, se você alterar esse valor, reinicie o postfix, não apenas recarregue.A configuração simples do Postfix que funcionou para mim.
fonte
A seguinte alteração no /etc/postfix/main.cf resolveu o problema para mim.
Mude o acima para
fonte