Kiedy Postfix używa IPv6, a kiedy IPv4?

10

Skonfigurowałem mój serwer poczty dla IPv6 i IPv4, ale w większości przypadków używa on IPv4, podczas gdy IPv6 jest dostępny na zdalnym hoście. Używam Postfix w wersji 2.9. Więc pomyślałem, że postfiks korzysta z IPv6, jeśli jest dostępny i ma rezerwę na IPv4, czy się mylę?

nazco
źródło
Czy na pewno masz IPv6? Zamieść kopię swojego /etc/gai.confwyjścia z ip addri ping6 -c 5 www.google.com.
Michael Hampton
Wiem, że to działa, ponieważ mogę odbierać wiadomości e-mail przez IPv6, a także przetestowałem moją konfigurację IPv6, zanim o to poprosiłem.
nazco
2
Ze względu na to, że Google wysyła wszystkie moje wiadomości e-mail IPv6 do SPAM, skończyło się na tym, że „smtp_address_preference = ipv4”. Zdecydowanie odradzam preferowanie IPv6, ponieważ większość głównych dostawców poczty e-mail (Gmail, AOL, Yahoo, Hotmail / Outlook itp.) Nie akceptuje, nie obsługuje lub będzie spamować bin od nadawców IPv6. Tylko mówię ... IPv6 jest gotowy na świat, ale świat nie jest na to gotowy>. <: (...
2
@BOB Aby uzyskać dostęp do Gmaila, potrzebujesz głównie odwrotnego DNS na swoich adresach IPv6.
Michael Hampton

Odpowiedzi:

11

Czy ustawiłeś opcję smtp_address_preference na jawność preferującą IPv6?

Z 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
źródło
2
Nie jestem pewien, w jakich warunkach taka awaria się wydarzy. Sam ustawiłem „smtp_address_preference = ipv6” i zweryfikowałem przypadki, w których nastąpił powrót do rekordu A po awarii połączenia z rekordem AAAA.
andol
4
Może to być przydatne w przypadkach, w których można połączyć się przez IPv6, ale istnieje jeszcze inny problem. Brak skonfigurowanego odwrotnego DNS dla źródłowego adresu IPv6 jest częstym zjawiskiem. Miejsce docelowe (np. Google Mail) akceptuje połączenie IPv6, ale następnie odrzuca twoją pocztę, ponieważ odwrotne sprawdzenie DNS nie powiedzie się. Jeśli wolisz IPv6, zawsze otrzymasz odrzucenie. Gdy losowo wybierzesz protokół, wiadomość może być nieco opóźniona, ale przy następnej próbie przejdzie.
Sander Steffann
1
@sander: Hmm, nie, właśnie przetestowałem. Nawet przy „smtp_address_preference = ipv6” odrzucenie 4xx na AAAA nadal spowoduje ponowne wysłanie na adres A.
andol
1
@sander: Do mojego szybkiego testu poszedłem bez MX i dostarczałem bezpośrednio na nazwę hosta. Ale nie, nie ma drugiego rekordu MX. paste.ubuntu.com/6696807
andol
1
@sander: Dokładnie ten sam wynik z odpowiednim rekordem MX - paste.ubuntu.com/6696854
andol
2

Zakładając, że Postfix jest poprawnie skonfigurowany z IPv6, poinstruowano go, aby używać obu protokołów, a host MX, z którym się łączy, ma zarówno rekord A, jak i AAAA, Postfix za każdym razem dokonuje losowego wyboru, jak wyjaśnił sam Wietse Wenema :

Ostatnio klienci SMTP Postfix losowo wybierają IPv4 i IPv6, aby poczta nie utknęła, gdy jeden z nich nie działa.

Lrosa
źródło
Ok, więc oznacza to, że nie ma już „Próbuję IPv6, a jeśli zawiedzie IPv4”, jak w starszych wersjach Postfix?
nazco