Сегодня я заметил, что Gmail отправляет все сообщения, полученные с моего сервера, в папку «Спам». Я проверил заголовок сообщения и обнаружил следующее:
Authentication-Results: mx.google.com;
spf=neutral (google.com: 2001:4ba0:cafe:........ is neither permitted nor denied by best guess record for domain of root@myserver.com) smtp.mail=root@myserver.com
Итак, похоже, что Sendmail отправляет почту с адреса IP6 вместо IPv4, и нет записей SPF и PTR для IPv6. Как заставить Sendmail отправлять почту с IPv4?
Спасибо.
Ответы:
Не отключайте IPv6. Это больше не является обязательным, и вы не сможете общаться с некоторыми людьми без него.
Вместо этого исправьте запись SPF, чтобы она передавала почту, исходящую с вашего адреса IPv6.
источник
Спасибо за сообщение, и это определенно заставило меня на правильном пути. Однако я попробовал это, но это все еще не работало для меня. Как примечание, мы получали отказы от почтовых серверов Google, потому что у нас не было обратной записи DNS для IPv6. Это определенно связано с конфигурацией нашего VPS, а не с нашей конфигурацией DNS, потому что числовая обратная запись DNS должна идти тому, кто владеет блоком IP-адресов, а это мой VPS.
В любом случае, насколько я вижу, нет способа специально отключить sendmail, используя IPv6 в качестве клиента. Немного хитрое решение, к которому я пришел, состояло в том, чтобы указать параметры IPv6 для использования формата совместимости IPv6 для адреса IPv4.
например, если ваш IPv4-адрес - 1.2.3.4, укажите:
CLIENT_OPTIONS ( `Семейный = inet6, Addr = :: FFFF: 1.2.3.4' ) DNL
Это сработало для меня, и, насколько я понимаю, это нигде не было задокументировано.
источник
В вашем
sendmail.mc
добавлении:Затем пересоберите
sendmail.cf
и перезапустите sendmail. В Debian вы делаете это, запустивsendmailconfig
. В CentOS вы запускаете,/etc/mail/make
а затемservice sendmail restart
. Другие системы имеют другие способы сделать это.источник
Просто хотел поделиться этим для меня (сейчас в 2018 году), что работало, указав filter-aaaa-on-v4 yes; в моей локальной привязке named.conf, по адресу https://kb.isc.org/docs/aa-00576 (кроме упомянутой директивы filter-aaaa-on-v6, в моей голове не существует). Вероятно, с именем -4 тоже подойдет. Это с sendmail и привязкой к centos7 [.5.1804].
Со всем остальным, что я пробовал, включая ответ здесь, gmail отклонил мою почту со страшным «это сообщение не соответствует правилам отправки IPv6», потому что, действительно, у меня нет обратного для моего адреса ipv6 (isp затруднен).
Другие вещи, которые не работали: определить (
confBIND_OPTS',
-use_inet6 ') (иначе ResolverOptions) в submit.mc и sendmail.mc, согласно https://lists.debian.org/debian-user/2004/09/msg01410.html . Я не знаю, почему нет.Изменение /etc/gai.conf (согласно https://centosfaq.org/centos/etcgaiconf-fails-to-prefer-ipv4-over-ipv6-for-nfs/ ), предположительно, потому что sendmail использует gethostbyname / addr, а не getaddrinfo, и gai.conf влияет только на последнее.
О, у меня было еще одно решение: скомпилировать sendmail из исходного кода и отключить v6 на этом уровне. К сожалению, не существует эквивалентной директивы времени выполнения.
источник