2016-05-08 34 views
16

Mam aplikacje zbudowane w 2015 i 2014 roku. Jak mogę je przetestować pod kątem IPv6?
Jeśli moje aplikacje nie obsługują protokołu IPv6, co mam zrobić?Jak przetestować aplikację na iOS, czy obsługuje ona IPv6?

Moje aplikacje używają AFNetworking i Alamofire. Łączę się głównie z domenami (np. Api.example.com/v1/...). Tylko 1 aplikacja używa adresu IP: (np. 12.12.12.12:3000/api/v1/...).

Czy występuje problem z gniazdami internetowymi? (ws: //12.12.12.12: 8080/api/....).

+1

Testowałeś to? Więcej informacji można znaleźć w sekcji [Testowanie kompatybilności IPv6 DNS64/NAT64 regularnie] (https://developer.apple.com/library/ios/documentation/NetworkingInternetWeb/Conceptual/NetworkingOverview/UnderstandingandPreparingfortheIPv6Transition/UnderstandingandPreparingfortheIPv6Transition.html) z dokumentacji Apple. – yaakov

Odpowiedz

16

Trudno powiedzieć z całą pewnością, nie wiedząc więcej o swojej aplikacji. W szczególności:

  • Czy używasz adresów IP bezpośrednio?
  • Czy umożliwiasz użytkownikom wprowadzanie ich bezpośrednio w innej formie niż w adresie URL?
  • Czy tworzysz połączenia sieciowe bezpośrednio za pomocą interfejsów API innych niż interfejsy API oparte na NSURL firmy Apple?
  • Czy samodzielnie robisz wyszukiwania DNS z jakiegokolwiek powodu?

Jeśli odpowiedź na wszystkie z tych czterech pytań brzmi "nie", to nie trzeba wprowadzać żadnych zmian w celu obsługi protokołu IPv6.

Podczas bezpośredniego korzystania z adresów IP, jeśli użytkownik musi mieć możliwość wprowadzania tych adresów, prawdopodobnie będziesz chciał dodać kod, aby umożliwić użytkownikowi również wprowadzenie adresów IPv6 i odpowiednie ich rozwiązanie.

Jeśli kod wykonuje samodzielnie rozpoznawanie DNS, a następnie robi coś z adresami IP, musi zostać zaktualizowany, aby obsługiwać adresy IP i przekazywać je poprawnie do dowolnego interfejsu API, z którym nawiązywane są połączenia z adresami IP.

Zakodowane na sztywno adresy IP są problemem. Musisz utworzyć nazwę hosta dla tych adresów IP. W ten sposób funkcja rozpoznawania nazw DNS urządzenia może wykonywać różne czynności magiczne w celu utworzenia fałszywego adresu IPv6, który powoduje translację adresów sieciowych do rzeczywistego adresu IPv4 przez router w dowolnym miejscu.

O ile mi wiadomo, AFNetworking 3.0 i późniejsze powinny być w porządku, podobnie jak najnowsze wersje AlamoFire. Upewnij się, że jesteś na bieżąco.

+0

Zaktualizowałem moje pytanie godzinę temu. Przeczytaj go i zaktualizuj swoją odpowiedź. Dziękuję :) –

+0

Zrobiłem tak. – dgatwood

+0

Apple ma poradnik [jak przetestować aplikację dla IPV6] (https://developer.apple.com/library/ios/documentation/NetworkingInternetWeb/Conceptual/NetworkingOverview/Obsługa iPrzygotowanieIPv6Transition/Zrozumienie iPrzygotowaniedo IPv6Transition.html) – orkoden

Powiązane problemy