La documentazione per questo prodotto è stata redatta cercando di utilizzare un linguaggio senza pregiudizi. Ai fini di questa documentazione, per linguaggio senza di pregiudizi si intende un linguaggio che non implica discriminazioni basate su età, disabilità, genere, identità razziale, identità etnica, orientamento sessuale, status socioeconomico e intersezionalità. Le eventuali eccezioni possono dipendere dal linguaggio codificato nelle interfacce utente del software del prodotto, dal linguaggio utilizzato nella documentazione RFP o dal linguaggio utilizzato in prodotti di terze parti a cui si fa riferimento. Scopri di più sul modo in cui Cisco utilizza il linguaggio inclusivo.
Cisco ha tradotto questo documento utilizzando una combinazione di tecnologie automatiche e umane per offrire ai nostri utenti in tutto il mondo contenuti di supporto nella propria lingua. Si noti che anche la migliore traduzione automatica non sarà mai accurata come quella fornita da un traduttore professionista. Cisco Systems, Inc. non si assume alcuna responsabilità per l’accuratezza di queste traduzioni e consiglia di consultare sempre il documento originale in inglese (disponibile al link fornito).
In questo documento viene descritto come comprendere e configurare Network Address Translation (NAT).
Cisco raccomanda la conoscenza dei seguenti argomenti:
Il documento può essere consultato per tutte le versioni software o hardware.
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
NAT64 è un meccanismo per la transizione da IPv4 a IPv6 e la coesistenza di IPv4 e IPv6. Insieme a DNS64, lo scopo principale di NAT64 è consentire a un client solo IPv6 di avviare le comunicazioni con un server solo IPv4. NAT64 può inoltre essere utilizzato per client solo IPv4 che avviano comunicazioni con server solo IPv6 utilizzando associazioni statiche o manuali. In questo documento vengono illustrati entrambi gli scenari.
Poiché IPv6 non è compatibile con IPv4, è necessario disporre di meccanismi di transizione che rientrano in una delle tre classi seguenti:
#Come altri metodi di transizione, la traduzione non è una strategia a lungo termine e l'obiettivo finale può essere l'IPv6 nativo. Tuttavia, la traduzione offre due vantaggi principali rispetto al tunneling:
In NAT64 stateless lo stato non viene mantenuto, il che significa che per ogni utente IPv6 è necessario un indirizzo IPv4 dedicato. Poiché siamo nella fase di esaurimento dell'IPv4, è molto difficile adottare questa modalità di NAT64. L'unico vantaggio dell'utilizzo di NAT64 senza stato quando si dispone di un numero limitato di indirizzi IPv6 (NAT46).
In NAT64 con stato, gli stati vengono mantenuti. Un unico indirizzo IP viene utilizzato per tutti gli utenti privati con numeri di porta diversi. Nel diagramma precedente, per accedere a un server IPv4 pubblico viene utilizzato un unico indirizzo IPv4 con numeri di porta diversi per tutti gli utenti di IPv6 che fanno parte della LAN.
Di seguito sono riportati ulteriori dettagli sulla differenza tra la traduzione di Stateful e Stateless NAT64:
NAT64 stateless |
NAT64 stateful |
Traduzione 1:1 |
Traduzione 1:N |
Nessuna conservazione dell'indirizzo IPv4 |
Conservazione degli indirizzi IPv4 |
Garanzia di trasparenza e scalabilità degli indirizzi end-to-end |
Utilizza il sovraccarico degli indirizzi, pertanto manca la trasparenza degli indirizzi end-to-end |
Nessuno stato o binding creato sulla traduzione |
Lo stato o i binding vengono creati in ogni traduzione univoca |
Richiede l'assegnazione di indirizzi IPv4 convertibili (requisito obbligatorio) |
Nessun requisito sulla natura dell'assegnazione di indirizzi IPv6 |
Per gli host IPv6 è necessaria l'assegnazione di indirizzi manuale o basata su DHCPv6 |
Libertà di scegliere qualsiasi modalità di assegnazione degli indirizzi IPv6 (manuale, DHCPv6, SLAAC) |
NAT64 include tre componenti principali.
1. Si supponga che nella figura precedente l'host presente nella rete IPv6 desideri comunicare con il server Web www.example.com (10.1.113.2), che è un server solo IPv4.
2. Per rendere possibile questa comunicazione, è necessario che nella rete IPv6 sia installato il server DNS64 in grado di comprendere e risolvere il DNS per le richieste ipv4.
3. Il server DNS64 funziona come un normale server DNS per i record AAAA IPv6, ma può anche tentare di individuare un record A IPv4 quando non è disponibile un record AAAA. Se è presente un record A, DNS64 converte il record A IPv4 in un record AAAA IPv6 utilizzando il prefisso NAT64. In questo modo l'host con solo IPv6 ha l'impressione di poter comunicare con un server che utilizza IPv6.
4. Ora la richiesta di risoluzione DNS per www.example.com viene inviata al server DNS64. Innanzitutto cerca nella tabella dei record AAAA IPv6, ma non trova alcun record AAAA IPv6 perché il server Web appartiene all'indirizzo IPv4. Quindi, cerca nel suo database IPv4 e trova l'indirizzo IPv4 corrispondente a questo sito Web. Il server DNS64 può ora convertire l'indirizzo IPv4 in indirizzo IPv6 convertendo l'indirizzo IPv4 in formato esadecimale e inserendovi il prefisso NAT64. In questo modo, l'host IPv6 è in grado di comunicare con il server Web utilizzando IPv6.
5. I pacchetti vengono indirizzati nella rete solo IPv6 verso il dispositivo che esegue NAT64 con l'aiuto del prefisso NAT64 che era preceduto dal valore esadecimale dell'indirizzo IPv4.
6. Il router NAT64 annuncia il prefisso NAT64 nella rete solo IPv6 ed esegue la conversione tra le reti solo IPv6 e solo IPv4.
7. Dopo che il pacchetto è arrivato al dispositivo durante la traduzione NAT64, i pacchetti possono essere confrontati con l'ACL configurato per Nat64. Se i pacchetti corrispondono all'ACL, possono essere ulteriormente convertiti usando il protocollo NAT64. Se il pacchetto non corrisponde all'ACL configurato, può essere indirizzato utilizzando il normale routing IPv6 verso la destinazione.
8. Il protocollo NAT64 stateful utilizza gli elenchi di controllo di accesso (ACL) e gli elenchi di prefissi configurati per filtrare i flussi di traffico originati da IPv6 che possono creare lo stato NAT64. Il filtro dei pacchetti IPv6 viene eseguito nella direzione da IPv6 a IPv4 perché l'allocazione dinamica del mapping tra un host IPv6 e un indirizzo IPv4 può essere eseguita solo in questa direzione. NAT64 stateful supporta il filtro dipendente dall'endpoint per il flusso di pacchetti da IPv4 a IPv6 con configurazione PAT.
9. In una configurazione PAT NAT64 stateful, il flusso del pacchetto deve provenire dal realm IPv6 e creare le informazioni sullo stato nelle tabelle di stato NAT64. I pacchetti dal lato IPv4 che non hanno uno stato creato in precedenza vengono scartati. Il filtro indipendente dall'endpoint è supportato nelle configurazioni statiche NAT (Network Address Translation) e non PAT.
Il primo pacchetto IPv6 viene instradato all'interfaccia virtuale NAT (NVI) in base all'impostazione di routing automatico configurata per il prefisso con conservazione dello stato. Il protocollo stateful NAT64 esegue una serie di ricerche per determinare se il pacchetto IPv6 corrisponde a uno dei mapping configurati in base a una ricerca ACL (Access Control List). In base al mapping, all'indirizzo di destinazione IPv6 vengono associati un indirizzo IPv4 e una porta.
Il pacchetto IPv6 viene convertito e il pacchetto IPv4 viene formato utilizzando i metodi seguenti:
10. Viene creata una nuova traduzione NAT64 nel database della sessione e nel database di binding. I database del pool e della porta vengono aggiornati in base alla configurazione.
11.Il traffico di ritorno e il traffico successivo del flusso del pacchetto IPv6 possono utilizzare questa voce del database di sessione per la traduzione.
Passaggio 1. L'host A è un host solo IPv6 che desidera comunicare con il server www.example.com. Verrà attivata una query DNS (AAAA: www.example.com) sul server DNS64. Il DNS64 è un componente chiave di questo processo. Un server DNS64 è sia un server DNS per IPv6 che IPv4. Crea l'illusione per il client che i server IPv4 possano essere raggiunti utilizzando un indirizzo IPv6.
L'host A invia una query DNS (AAAA: www.example.com) al server DNS64. Per quanto riguarda l'host A, si tratta di una normale query AAAA DNS per un server IPv6.
Passaggio 2. Il server DNS64 riceve la query AAAA DNS dall'host A. Nel tentativo di risolvere il nome di dominio, il server DNS64 invia una query al server DNS autorevole AAAA per www.example.com.
Passaggio 3. Il server autorevole DNS AAAA IPv6 restituisce una risposta che indica che non dispone di un record di risorse AAAA per www.example.com.
Passaggio 4. Alla ricezione di una risposta vuota (errore di nome) alla query AAAA, il server DNS64 viene attivato per inviare una query A (A: www.example.com) al server autorevole DNS A IPv4.
Passaggio 5. Il server autorevole DNS IPv4 A non dispone di un record di risorse A per www.example.com e restituisce una risposta con l'indirizzo IPv4 del server (A: www.example.com 10.1.113.2).
Passaggio 6. Il server DNS64 riceve l'indirizzo IPv4 dal server DNS autorevole A e sintetizza un record AAAA aggiungendo all'indirizzo il prefisso NAT64, 2800:1503:2000:1:1::/96, e converte l'indirizzo IPv4 in esadecimale, 0a01:7102. Questo indirizzo può essere utilizzato dall'host A come indirizzo IPv6 di destinazione per raggiungere il server www.example.com.
Passaggio 7. Il record AAAA sintetizzato è completamente trasparente per l'host A. Per l'host A, sembra che www.example.com sia raggiungibile tramite la rete IPv6 e Internet. L'host A dispone ora delle informazioni di indirizzamento necessarie per trasmettere i pacchetti IPv6 a www.example.com con queste informazioni:
Passaggio 8. Il router NAT64 riceve il pacchetto IPv6 inviato dall'host A sull'interfaccia abilitata per NAT64. Corrisponde ai pacchetti in arrivo nell'ACL configurato. Se non viene trovata alcuna corrispondenza, il pacchetto viene inoltrato senza essere tradotto utilizzando il normale routing IPv6. Se viene trovata una corrispondenza, il pacchetto viene sottoposto a questa conversione:
Passaggio 9. Dopo la traduzione NAT64, il pacchetto IPv4 tradotto viene inoltrato usando il normale processo di ricerca route IPv4. In questo scenario, l'indirizzo di destinazione IPv4 10.1.13.2 viene usato per inoltrare il pacchetto.
Passaggio 10. Il server www.example.com alle risposte 10.1.13.2, che viene in ultima analisi ricevuto dal router NAT64.
Passaggio 11. Il router NAT64 riceve il pacchetto IPv4 dal server www.example.com su una delle sue interfacce abilitate per NAT64. Il router esamina il pacchetto IPv4 per determinare se esiste uno stato di conversione NAT64 per l'indirizzo di destinazione IPv4. Se lo stato di traduzione non esiste, il pacchetto viene scartato. Se per l'indirizzo di destinazione IPv4 non è disponibile uno stato di conversione, il router NAT64 esegue le seguenti attività:
Passaggio 12. Dopo la traduzione, il pacchetto IPv6 viene inoltrato utilizzando il normale processo di ricerca route IPv6.
1. Interfaccia IPv6:
2. Interfaccia IPv4:
3. Creare un ACL corrispondente al traffico ipv6.
4. Abilitare il mapping degli indirizzi IPv6-IPv4 NAT64:
Prefisso #nat64 con stato 2800:1503:2000:1:1::/96 —> È possibile mappare l'IP del server a questo indirizzo IP ipv6. È possibile configurare qui qualsiasi indirizzo di rete ipv6, ma questo indirizzo di rete ipv6 può essere raggiunto dalla rete ipv6. Inoltre, il server DNS64 deve disporre del mapping di questo indirizzo di rete ipv6 all'indirizzo ipv4 del server.
#ping 2800:1503:2000:1:1:0a01:7102
Traduzione di #show nat64
statistiche #show nat64
Passaggio 1. Il primo passaggio consiste nella configurazione del mapping statico da IPv6 a IPv4 sul router NAT46 per fornire l'accesso al server IPv6 2001:DB8:3001::9/64 dall'indirizzo IPv4 10.1.113.2. Inoltre, l'indirizzo IPv4 10.50.50.50 deve essere registrato come record di risorse DNS per www.examplev6.com sul server DNS. Il mapping NAT64 statico viene creato utilizzando questo comando:
NAT64-Router(config)# nat64 v6v4 statico 2001:DB8:3001::9 10.50.50.50
Passaggio 2. Il PC A è un host solo IPv4 che desidera comunicare con il server www.examplev6.com . In questo modo viene attivata una query DNS (A: www.examplev6.com) sul relativo server DNS autorevole IPv4.
Passaggio 3. Il server DNS risponde con un record di risorse A per www.examplev6.com, 10.50.50.50.
Passaggio 4. L'host A dispone ora delle informazioni di indirizzamento necessarie per trasmettere i pacchetti IPv4 a www.examplev6.com con
Passaggio 5. Il router NAT64 riceve il pacchetto IPv4 sull'interfaccia abilitata per NAT64 ed esegue le seguenti attività:
Passaggio 6. Dopo la conversione, il pacchetto IPv6 viene instradato utilizzando il normale processo di routing IPv6. Il pacchetto viene infine indirizzato al server www.examplev6.com in modalità 2001:DB8:3001::9 .
Passaggio 7. Il server www.examplev6.com risponde con un pacchetto destinato all'host A.
Passaggio 8. Il router NAT64 riceve il pacchetto IPv6 inviato dal server IPv6 sull'interfaccia abilitata per NAT64 ed esegue le seguenti attività:
Passaggio 9. Dopo la conversione, il router NAT64 inoltra il pacchetto alla versione 10.1.13.2, utilizzando il normale processo di routing IPv4.
Al termine della configurazione, eseguire il ping tra la versione 10.50.50.50 e l'host IPv4.
#ping 10.50.50.50
Verifica di NAT46
traduzioni di #show nat64
statistiche #show nat46
Scenari per la traduzione IPv6/IPv4 |
Applicabilità |
Esempio |
Scenario 1: una rete IPv6 per l'accesso Internet IPv4 |
· Rete solo IPv6 che desidera accedere in modo trasparente sia al contenuto IPv6 che a quello IPv4 esistente. · Avviato da host e rete IPv6. |
· Gli ISP implementano nuovi servizi e reti per gli smartphone solo IPv6 (3G, Long-Term Evolution [LTE] e così via). · Aziende che implementano reti solo IPv6. |
Scenario 2: Connessione Internet IPv4 a una rete IPv6 |
· Server in reti solo IPv6 che desiderano servire in modo trasparente utenti IPv4 e IPv6. · Avviato dagli host e dalla rete IPv4. |
Provider di contenuti nuovi o esistenti che implementano servizi in ambienti solo IPv6. |
Scenario 3: Connessione Internet IPv6 a una rete IPv4 |
· Server nella rete IPv4 esistente che desiderano servire gli utenti Internet IPV6. · Avviato da host e rete IPv6. |
Provider di contenuti esistenti che eseguono la migrazione all'IPv6 e desiderano pertanto offrire servizi agli utenti Internet IPv6 come parte della strategia di coesistenza. |
Scenario 4: una rete IPv4 per l'accesso Internet IPv6 |
Caso improbabile nel prossimo futuro; questo scenario può verificarsi solo dopo la prima fase della transizione di IPv6/IPv4. |
Nessuna |
Scenario 5: da una rete IPv6 a una rete IPv4 |
Una rete IPv4 e una rete IPv6 sono entrambe all'interno della stessa organizzazione. |
Analogamente allo scenario 1, il servizio è intranet anziché Internet. |
Scenario 6: da una rete IPv4 a una rete IPv6 |
Una rete IPv4 e una rete IPv6 sono entrambe all'interno della stessa organizzazione. |
Analogamente allo scenario 2, il servizio è intranet anziché Internet. |
Scenario 7: Da Internet IPv6 a Internet IPv4 |
Soffrirebbe di una scarsa produttività. |
Nessuna |
Scenario 8: Da Internet IPv4 a Internet IPv6 |
Nessuna tecnica di traduzione praticabile per gestire la traduzione illimitata degli indirizzi IPv6. |
Nessuna |
#show platform hardware qfp statistiche attive non elaborate (per verificare la presenza di perdite NAT64)
#show running-config | includere nat64 (per vedere se tutto è configurato su Cisco IOS®)
#show platform hardware qfp active feature nat64 datapath statistiche (per controllare il motivo per il contatore di rilascio)
#show platform hardware qfp active feature pool di percorsi dati nat64 (per verificare che il pool sia configurato correttamente)
#show platform hardware qfp active feature nat64 datapath map (per verificare e vedere se la configurazione da pool a mapping è stata eseguita correttamente)
#show platform software object-manager F0 in attesa di aggiornamento (per verificare la presenza di oggetti in sospeso)
Revisione | Data di pubblicazione | Commenti |
---|---|---|
2.0 |
02-Nov-2023 |
PII rimossa.
Testo alternativo aggiunto.
Titolo aggiornato, introduzione, branding, descrizione dell'articolo, requisiti di stile, traduzione automatica e formattazione. |
1.0 |
23-Jun-2021 |
Versione iniziale |