/ / Jak obsługiwać literały adresów IPv4 dla sieci tylko IPv6 w iOS8 - ios, networking, ios8, ipv6

Jak radzić sobie z literami adresów IPv4 dla sieci tylko IPv6 w iOS8 - ios, networking, ios8, ipv6

Wdrażam moją aplikację, aby była kompatybilna z sieciami tylko IPv6. Czy jest jakiś sposób na obsługę zakodowanych literałów adresu IPv4 (takich jak 172.1.2.3) w iOS8.x?

Zgodnie z dokumentacja jabłek,

- W iOS 9 i nowszych, NSURLSession i CFNetwork automatycznie syntetyzują adresy IPv6 z literałów IPv4 lokalnie na urządzeniach działających w sieciach DNS64 / NAT64.

- Dodano możliwość syntezy adresów IPv6 do getaddrinfo () w iOS 9.2.

Ale nie ma wzmianki o tym, jak obsługiwać literały adresowe iOS8.x.

Odpowiedzi:

1 dla odpowiedzi № 1

Poprawny. Użytkownicy korzystający ze starych wersji iOS w nowoczesnych sieciach łączących się ze starszymi usługami będą mieli problemy z łącznością. Najlepsze rozwiązania to:

  • Nigdy nie używaj zakodowanych adresów w kodzie
    • Istnieje wiele doskonałych powodów, po prostu nie używaj sztywnych adresów i używaj DNS
    • Jeśli korzystasz z DNS, dostawca NAT64 zajmie się tłumaczeniem
  • Upewnij się, że twoje serwery są osiągalne zarówno przez IPv4, jak i IPv6
    • To znacznie poprawia osiągalność twojej usługi
    • To sprawia, że ​​NAT64 jest niepotrzebny, można używać natywnego IPv6 bez żadnych włamań

Jeśli chcesz uruchomić dobrą usługę i napisać dobrą aplikację, wykonaj obie powyższe czynności.