Risorsa gateway NAT di Azure
Questo articolo descrive i componenti chiave della risorsa gateway NAT che consentono di fornire connettività in uscita altamente sicura, scalabile e resiliente. Alcuni di questi componenti possono essere configurati nella sottoscrizione tramite il portale di Azure, l'interfaccia della riga di comando di Azure, Azure PowerShell, i modelli di Resource Manager o le alternative appropriate.
Architettura del gateway NAT
Il gateway NAT usa il networking definito da software per operare come servizio distribuito e completamente gestito. Poiché il gateway NAT ha più domini di errore, è in grado di resistere a più errori senza alcun effetto sul servizio.
Il gateway NAT fornisce SNAT (Source Network Address Translation) per le istanze private all'interno di subnet della rete virtuale di Azure. Se configurata in una subnet, gli indirizzi IP privati all'interno delle subnet SNAT vengono eseguiti negli indirizzi IP pubblici statici di un gateway NAT per connettersi in uscita a Internet. Il gateway NAT fornisce anche DNAT (Destination Network Address Translation) per i pacchetti di risposta solo a una connessione originata in uscita.
Figura: Gateway NAT per connessioni Internet in uscita
Quando un gateway NAT è collegato a una subnet all'interno di una rete virtuale, il gateway NAT presuppone il tipo di hop successivo predefinito della subnet per tutto il traffico in uscita diretto a Internet. Non sono necessarie configurazioni di routing aggiuntive. Il gateway NAT non fornisce connessioni in ingresso non richieste da Internet. DNAT viene eseguito solo per i pacchetti che arrivano come risposta a un pacchetto in uscita.
Subnet
Un gateway NAT può essere collegato a più subnet all'interno di una rete virtuale per fornire connettività in uscita a Internet. Quando un gateway NAT è collegato a una subnet, presuppone la route predefinita a Internet. Il gateway NAT sarà quindi il tipo di hop successivo per tutto il traffico in uscita destinato a Internet.
Non è possibile usare le configurazioni di subnet seguenti con un gateway NAT:
Quando il gateway NAT è collegato a una subnet, presuppone la route predefinita a Internet. Un solo gateway NAT può fungere da route predefinita verso Internet per una subnet.
Un gateway NAT non può essere collegato a subnet da reti virtuali diverse.
Un gateway NAT non può essere usato con una subnet del gateway. Una subnet del gateway è una subnet designata per un gateway VPN per inviare traffico crittografato tra una rete virtuale di Azure e un percorso locale. Per altre informazioni sulla subnet del gateway, vedere Subnet del gateway.
Indirizzi IP pubblici statici
Un gateway NAT può essere associato a indirizzi IP pubblici statici o prefissi IP pubblici per fornire connettività in uscita. Il gateway NAT supporta gli indirizzi IPv4. Un gateway NAT può usare indirizzi IP pubblici o prefissi in qualsiasi combinazione fino a un totale di 16 indirizzi IP. Se si assegna un prefisso IP pubblico, viene usato l'intero prefisso IP pubblico. È possibile usare un prefisso di indirizzo IP pubblico direttamente oppure distribuire gli indirizzi IP pubblici del prefisso tra più risorse gateway NAT. Il gateway NAT pulisce tutto il traffico verso l'intervallo di indirizzi IP del prefisso.
Non è possibile usare un gateway NAT con indirizzi IP pubblici O prefissi IPv6.
Non è possibile usare un gateway NAT con indirizzi IP pubblici SKU di base.
Porte SNAT
L'inventario delle porte SNAT viene fornito dagli indirizzi IP pubblici, dai prefissi IP pubblici o da entrambi collegati a un gateway NAT. L'inventario delle porte SNAT viene reso disponibile su richiesta a tutte le istanze all'interno di una subnet collegata al gateway NAT. Non è necessaria alcuna preallocazione delle porte SNAT per ogni istanza.
Per altre informazioni sulle porte SNAT e sul gateway NAT di Azure, vedere Source Network Address Translation (SNAT) con il gateway NAT di Azure.
Quando più subnet all'interno di una rete virtuale vengono collegate alla stessa risorsa gateway NAT, l'inventario delle porte SNAT fornito dal gateway NAT viene condiviso in tutte le subnet.
Le porte SNAT fungono da identificatori univoci per distinguere i diversi flussi di connessione l'uno dall'altro. La stessa porta SNAT può essere usata per connettersi contemporaneamente a endpoint di destinazione differenti.
Diverse porte SNAT vengono usate per stabilire connessioni allo stesso endpoint di destinazione per distinguere i diversi flussi di connessione l'uno dall'altro. Le porte SNAT riutilizzate per connettersi alla stessa destinazione vengono inserite in un timer di raffreddamento prima che possano essere riutilizzate.
Figura: allocazione delle porte SNAT
Un singolo gateway NAT può aumentare fino a 16 indirizzi IP. Ogni indirizzo IP pubblico del gateway NAT fornisce 64.512 porte SNAT per stabilire connessioni in uscita. Un gateway NAT può aumentare fino a oltre 1 milione di porte SNAT. TCP e UDP sono inventari delle porte SNAT separati e non sono correlati al gateway NAT.
Zone di disponibilità
È possibile creare un gateway NAT in una zona di disponibilità specifica o in nessuna zona. Quando un gateway NAT si trova in nessuna zona, Azure seleziona una zona in cui risiede il gateway NAT.
Gli indirizzi IP pubblici con ridondanza della zona possono essere usati con risorse del gateway NAT di zona o nessuna zona.
È consigliabile configurare un gateway NAT in singole zone di disponibilità. Inoltre, deve essere collegato alle subnet con istanze private dalla stessa zona. Per altre informazioni sulle zone di disponibilità e sul gateway NAT di Azure, vedere Considerazioni sulla progettazione delle zone di disponibilità.
Dopo la distribuzione di un gateway NAT, la selezione della zona non può essere modificata.
Protocolli
Il gateway NAT interagisce con le intestazioni di trasporto IP e IP dei flussi UDP e TCP. Il gateway NAT è indipendente dai payload del livello applicazione. Gli altri protocolli IP non sono supportati.
Reimpostazione TCP
Un pacchetto di reimpostazione TCP viene inviato quando un gateway NAT rileva il traffico su un flusso di connessione che non esiste. Il pacchetto di reimpostazione TCP indica all'endpoint ricevente che si è verificato il rilascio del flusso di connessione e qualsiasi comunicazione futura su questa stessa connessione TCP avrà esito negativo. La reimpostazione TCP è uni direzionale per un gateway NAT.
Il flusso di connessione potrebbe non esistere se:
Il timeout di inattività è stato raggiunto dopo un periodo di inattività nel flusso di connessione e la connessione viene interrotta automaticamente.
Il mittente, dal lato rete di Azure o dal lato Internet pubblico, ha inviato il traffico dopo l'eliminazione della connessione.
Un pacchetto di reimpostazione TCP viene inviato solo al rilevamento del traffico nel flusso di connessione eliminato. Questa operazione indica che un pacchetto di reimpostazione TCP potrebbe non essere inviato immediatamente dopo l'eliminazione di un flusso di connessione.
Il sistema invia un pacchetto di reimpostazione TCP in risposta al rilevamento del traffico in un flusso di connessione inesistente, indipendentemente dal fatto che il traffico provenga dal lato rete di Azure o dal lato Internet pubblico.
Timeout di inattività TCP
Un gateway NAT offre un intervallo di timeout di inattività configurabile da 4 minuti a 120 minuti per i protocolli TCP. I protocolli UDP hanno un timeout di inattività non configurabile di 4 minuti.
Quando una connessione diventa inattiva, il gateway NAT rimane sulla porta SNAT fino al timeout della connessione. Poiché i timer di timeout di inattività lunghi possono aumentare inutilmente la probabilità di esaurimento delle porte SNAT, non è consigliabile aumentare la durata del timeout di inattività TCP a più lungo del tempo predefinito di 4 minuti. Il timer inattiva non influisce su un flusso che non passa mai inattiva.
È possibile usare i keep-alive TCP per fornire un criterio di aggiornamento di connessioni a lungo inattive e rilevamento dell'attività degli endpoint. Per altre informazioni, vedere questi esempi .NET. I keep-alive TCP vengono considerati come ACK duplicati dagli endpoint, prevedono un sovraccarico ridotto e sono invisibili al livello applicativo.
I timer di timeout di inattività UDP non sono configurabili, è necessario usare i keep-alive UDP per assicurarsi che il valore di timeout di inattività non venga raggiunto e che la connessione venga mantenuta. A differenza delle connessioni TCP, un keep alive UDP abilitato su un lato della connessione si applica solo al flusso del traffico in una direzione. I keep-alive UDP devono essere abilitati su entrambi i lati del flusso di traffico per mantenere attivo il flusso di traffico.
Timer
Timer di riutilizzo delle porte
I timer di riutilizzo delle porte determinano la quantità di tempo dopo la chiusura di una connessione che una porta di origine è in attesa prima che possa essere riutilizzata per passare allo stesso endpoint di destinazione dal gateway NAT.
Nella tabella seguente vengono fornite informazioni su quando una porta TCP diventa disponibile per il riutilizzo allo stesso endpoint di destinazione dal gateway NAT.
Timer | Descrizione | valore |
---|---|---|
TCP FIN | Dopo che una connessione viene chiusa da un pacchetto TCP FIN, viene attivato un timer di 65 secondi che mantiene la porta SNAT. La porta SNAT è disponibile per il riutilizzo al termine del timer. | 65 secondi |
TCP RST | Dopo la chiusura di una connessione tramite un pacchetto TCP RST (reimpostazione), viene attivato un timer di 16 secondi che tiene premuta la porta SNAT. Al termine del timer, la porta è disponibile per il riutilizzo. | 16 secondi |
TCP half open | Durante la creazione della connessione in cui un endpoint di connessione è in attesa di conferma dall'altro endpoint, viene attivato un timer di 30 secondi. Se non viene rilevato alcun traffico, la connessione viene chiusa. Una volta chiusa la connessione, la porta di origine è disponibile per il riutilizzo allo stesso endpoint di destinazione. | 30 secondi |
Per il traffico UDP, dopo la chiusura di una connessione, la porta è in attesa per 65 secondi prima che sia disponibile per il riutilizzo.
Timer di timeout di inattività
Timer | Descrizione | valore |
---|---|---|
Timeout di inattività TCP | Le connessioni TCP possono andare inattive quando non vengono trasmessi dati tra uno degli endpoint per un periodo di tempo prolungato. Un timer può essere configurato da 4 minuti (impostazione predefinita) a 120 minuti (2 ore) per timeout di una connessione inattiva. Il traffico nel flusso reimposta il timer di timeout di inattività. | Configurabile; 4 minuti (impostazione predefinita) - 120 minuti |
Timeout di inattività UDP | Le connessioni UDP possono andare inattive quando non vengono trasmessi dati tra uno degli endpoint per un periodo di tempo prolungato. I timer di timeout di inattività UDP sono di 4 minuti e non sono configurabili. Il traffico nel flusso reimposta il timer di timeout di inattività. | Non configurabile; 4 minuti |
Nota
Queste impostazioni dei timer sono soggette a modifica. I valori vengono forniti per facilitare la risoluzione dei problemi e al momento non bisogna fare affidamento su timer specifici.
Larghezza di banda
Ogni gateway NAT può fornire fino a un totale di 50 Gbps di velocità effettiva. La limitazione della velocità effettiva dei dati è suddivisa tra i dati in uscita e in ingresso (risposta). La velocità effettiva dei dati è limitata a 25 Gbps per i dati in uscita e 25 Gbps per i dati in ingresso (risposta) per la risorsa gateway NAT. È possibile suddividere le distribuzioni in più subnet e assegnare ogni subnet o gruppo di subnet a un gateway NAT per aumentare il numero di istanze.
Prestazioni
Un gateway NAT può supportare fino a 50.000 connessioni simultanee per ogni indirizzo IP pubblico allo stesso endpoint di destinazione tramite Internet per TCP e UDP. Il gateway NAT può elaborare pacchetti di 1M al secondo e aumentare fino a 5M pacchetti al secondo.
Il numero totale di connessioni che un gateway NAT può supportare in qualsiasi momento è fino a 2 milioni. Se il gateway NAT supera 2 milioni di connessioni, si noterà un calo della disponibilità del percorso dati e le nuove connessioni avranno esito negativo.
Limiti
I servizi di bilanciamento del carico di base e gli indirizzi IP pubblici di base non sono compatibili con il gateway NAT. Usare invece i servizi di bilanciamento del carico SKU standard e gli indirizzi IP pubblici.
Per aggiornare il bilanciamento del carico da Basic a Standard, vedere Aggiornare il bilanciamento del carico pubblico di Azure
Per aggiornare un indirizzo IP pubblico da Basic a Standard, vedere Aggiornare un indirizzo IP pubblico
Il gateway NAT non supporta ICMP
La frammentazione IP non è disponibile per il gateway NAT.
Il gateway NAT non supporta gli indirizzi IP pubblici con il tipo di configurazione di routing Internet. Per visualizzare un elenco dei servizi di Azure che supportano il tipo di configurazione di routing Internet negli indirizzi IP pubblici, vedere Servizi supportati per il routing su Internet pubblico.
Gli indirizzi IP pubblici con protezione DDoS abilitata non sono supportati con il gateway NAT. Per altre informazioni, vedere Limitazioni DDoS.zzzzz
Il gateway NAT di Azure non è supportato in un'architettura vWAN (Virtual Hub Network) protetta.
Passaggi successivi
Vedere Gateway NAT di Azure.
Informazioni su metriche e avvisi per il gateway NAT.
Informazioni su come risolvere i problemi del gateway NAT.