Reti solo IPv6

Dal 1° giugno 2016, tutte le app inviate all’App Store devono supportare le reti solo IPv6. La maggior parte delle app non ha bisogno di modifiche perché le API NSURLSession e CFNetwork già supportano IPv6. Le app che utilizzano API specifiche per IPv4 o indirizzi IP con codifica fissa, invece, devono essere modificate. Assicurati di testare l’app per verificare se è compatibile con IPv6 prima di inviarla all’App Store per la revisione.

Per maggiori informazioni su come supportare le reti IPv6, consulta la sezione relativa a come supportare le reti DNS64/NAT64 IPv6 (inglese).

Testare l’app in un ambiente solo IPv6

Le app devono essere testate su una rete solo IPv6. Se non disponi di una rete di questo tipo, puoi configurarne una di prova seguendo le istruzioni riportate nella sezione su come testare regolarmente la compatibilità con le reti DNS64/NAT64 IPv6 (inglese).

IMPORTANTE: per eseguire i test con un dispositivo compatibile con rete WWAN, devi disattivare la rete WWAN prima di procedere. In questo modo, il dispositivo si collegherà alla rete Wi-Fi solo IPv6.

Nota: per disattivare la rete WWAN, vai su Impostazioni > Cellulare > Dati cellulare (per le localizzazioni in inglese non destinate al Nord America usa Settings > Mobile > Mobile Data).

Riferimenti a IPv4

Non è necessario rimuovere dall’app tutti i riferimenti ai costrutti solo IPv4 se questi funzionano correttamente in un ambiente solo IPv6.

IMPORTANTE: è opportuno adottare API indipendenti dalla famiglia di indirizzi anziché gestire percorsi di codice separati per IPv4 e IPv6.

Aggiornamenti del server

Non è necessario aggiornare immediatamente il server quando viene eseguito su internet. Il server sarà accessibile ai dispositivi solo IPv6 tramite la rete DNS64/NAT64.

Nota: successivamente sarà comunque necessario aggiornare il server per fare in modo che supporti IPv6.

Se il server è integrato nell’app di iOS (ad esempio, un server web che permette di trasferire i file da e verso la tua app), assicurati che funzioni correttamente in un ambiente solo IPv6.

Eseguire la sintesi da un indirizzo IPv4

Come descritto nella sezione sull’uso delle API di sistema per eseguire la sintesi degli indirizzi IPv6 (inglese), a partire da iOS 9.2 e OS X 10.11.2 puoi utilizzare getaddrinfo per eseguire la sintesi di un indirizzo IPv6 da un indirizzo IPv4. La tua app verrà testata su un dispositivo con l’ultima versione rilasciata di iOS.

ATTENZIONE: eseguire la sintesi manuale degli indirizzi IPv6 non è un’operazione semplice. In particolare, non è sicuro formare un indirizzo IPv6 combinando un indirizzo IPv4 con il prefisso noto (Well-Known Prefix) 64:ff9b::/96. Questo potrebbe funzionare in alcune reti NAT64, ma non è una soluzione universale al problema.

Accessori basati su reti IPv4

È opportuno modificare l’accessorio affinché possa funzionare su una rete solo IPv6. A tal fine, l’accessorio deve supportare il protocollo IPv6 oppure gli indirizzi link local IPv4. Entrambe le opzioni permettono all’app di comunicare con l’accessorio quando i dispositivi si trovano su una rete solo IPv6.

Se nessuna di queste opzioni è supportata e non è possibile apportare le modifiche necessarie, significa che l’accessorio presenta un’incompatibilità di base e non può supportare IPv6.

Nota: quanto riportato sopra vale solo per la comunicazione tra l’app e l’accessorio su una rete locale. Si prevede che gli altri aspetti dell’app, invece, funzionino come previsto in un ambiente solo IPv6.