Я настроил свой почтовый сервер для IPv6 и IPv4, но в большинстве случаев он использует IPv4, в то время как IPv6 доступен на удаленном хосте. Я использую Postfix в версии 2.9. Итак, я подумал, что postfix использует IPv6, если он доступен, и имеет запасной вариант для IPv4, или я ошибаюсь?
Вы установили smtp_address_preference вариант по явному предпочтению IPv6?
Из 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.
При условии, что Postfix правильно настроен с IPv6, ему дано указание использовать оба протокола, и хост MX, к которому он подключается, имеет записи A и AAAA, Postfix каждый раз делает случайный выбор, поскольку Сам Витсе Венема объяснил:
Недавние клиенты SMTP Postfix случайным образом выбирают между IPv4 и IPv6, чтобы почта не зависала, когда один из двух не работает.