Le versioni 11.2(13) e 11.3(3) del software Cisco IOS® hanno introdotto la funzionalità NAT (Network Address Translation) per supportare i numeri di porta FTP (File Transfer Protocol) non standard. Nelle versioni precedenti del software Cisco IOS, quando un router abilitato per NAT riceve un pacchetto con indirizzi IP che devono essere tradotti NAT e il numero di porta TCP standard è per la connessione di controllo FTP (21), il router riconosce il pacchetto come FTP e esegue le traduzioni necessarie nel payload (parte dati) del pacchetto. Tuttavia, se il server FTP utilizza un numero di porta FTP non standard, NAT ignora il payload del pacchetto. Questo può impedire la connessione dei dati FTP.
Per supportare l'uso di numeri di porta FTP non standard, è necessario usare il comando ip nat service. Nella tabella seguente vengono descritte le opzioni disponibili per questo comando:
Opzione | Definizione |
---|---|
elenco | Specificare l'elenco degli accessi che descrive gli indirizzi globali. |
nome | Nome dell'elenco degli accessi per l'indirizzo locale del server. |
numero | Numero elenco accessi per indirizzi globali. |
ftp | Protocollo FTP. |
tcp | Protocollo TCP. |
port | Porta speciale non standard. |
numero porta | Numero di porte speciali non standard. |
Di seguito viene riportata una sintassi di esempio:
router-6(config)#ip nat service list 10 ftp tcp port 2021
Alcune cose importanti da notare:
L'indirizzo dell'elenco degli accessi nel comando precedente deve corrispondere all'indirizzo IP locale interno del server FTP con la porta di controllo FTP non standard.
Se per un server FTP è configurata una porta di controllo FTP non standard, NAT interrompe il controllo delle connessioni di controllo FTP che utilizzano la porta 21 per tale server FTP. Tutti gli altri server FTP continuano a funzionare normalmente.
Un host con un server FTP che utilizza una porta di controllo non standard può inoltre avere un client FTP che utilizza la porta di controllo FTP standard (21).
Se un server FTP utilizza sia la porta 21 che una porta non standard, è necessario configurare entrambe le porte con il comando ip nat service list <acl> ftp tcp <port>. Ad esempio:
ip nat service list 10 ftp tcp port 2021 ip nat service list 10 ftp tcp port 21
Tuttavia, non è possibile configurare più elenchi degli accessi per la stessa porta e lo stesso servizio. Ad esempio:
router-6(config)#ip nat service list 17 ftp tcp port 2021 router-6(config)#ip nat service list 10 ftp tcp port 2021 % service "ftp tcp port 2021" is already configured for access-list 17
Nessun requisito specifico previsto per questo documento.
Le informazioni fornite in questo documento si basano sulle seguenti versioni software e hardware:
Software Cisco IOS release 11.2(13), 11.3(3) e successive
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.
Per ulteriori informazioni sulle convenzioni usate, consultare il documento Cisco sulle convenzioni nei suggerimenti tecnici.
In ciascuno degli esempi seguenti, i flussi elaborati da NAT come connessioni di controllo FTP sono descritti in una tabella che segue le configurazioni. In ogni tabella, il termine "qualsiasi indirizzo locale" si riferisce a un indirizzo diverso da 10.1.1.1.
Si supponga che questi server FTP siano in esecuzione nella rete locale:
Server FTP con indirizzo IP 10.1.1.1 in esecuzione sulla porta TCP numero 2021.
Server FTP aggiuntivi con indirizzo IP "any" (diverso da 10.1.1.1) alla porta TCP numero 21.
ip nat service list 10 ftp tcp port 2021 access-list 10 permit 10.1.1.1
Source address | Porta TCP di origine | Indirizzo di destinazione | Porta TCP di destinazione |
---|---|---|---|
qualsiasi indirizzo locale | qualsiasi porta | 10.1.1.1 | 2021 |
qualsiasi indirizzo locale | qualsiasi porta | qualsiasi indirizzo locale (vedere nota) | 21 |
10.1.1.1 | qualsiasi porta | qualsiasi indirizzo locale (vedere nota) | 21 |
Nota: gli indirizzi locali sono diversi da 10.1.1.1.
Questo elenco descrive il processo NAT descritto in dettaglio nella tabella precedente:
Prima riga: Un pacchetto con qualsiasi indirizzo di origine e numero di porta destinato al server FTP (10.1.1.1) e numero di porta TCP di destinazione 2021 deve avere la necessaria conversione NAT del payload.
Seconda riga: Un pacchetto con qualsiasi indirizzo di origine e qualsiasi numero di porta destinato a qualsiasi indirizzo locale (diverso da 10.1.1.1) con numero di porta TCP di destinazione 21 (porta di controllo FTP tipica) deve avere la necessaria traduzione NAT del payload. Di conseguenza, tutti i server FTP (diversi da 10.1.1.1) in esecuzione sulla porta 21 tipica possono avere la necessaria conversione NAT del payload.
Terza riga: Un pacchetto originato da 10.1.1.1 con qualsiasi numero di porta destinato a qualsiasi indirizzo locale (diverso da 10.1.1.1) con porta TCP di destinazione 21 deve avere la necessaria traduzione NAT del payload.
Si supponga che questi server FTP siano in esecuzione nella rete locale:
Server FTP con indirizzo IP 10.1.1.1 in esecuzione sulla porta TCP numero 21 e 2021.
Alcuni server FTP con indirizzo IP "any" (diverso da 10.1.1.1) alla porta TCP numero 21.
ip nat service list 10 ftp tcp port 21 ip nat service list 10 ftp tcp port 2021 access-list 10 permit 10.1.1.1
Source address | Porta TCP di origine | Indirizzo di destinazione | Porta TCP di destinazione |
---|---|---|---|
qualsiasi indirizzo locale | qualsiasi porta | 10.1.1.1 | 2021 |
qualsiasi indirizzo locale | qualsiasi porta | 10.1.1.1 | 21 |
qualsiasi indirizzo locale | qualsiasi porta | qualsiasi indirizzo locale | 21 |
qualsiasi indirizzo locale | qualsiasi porta | qualsiasi indirizzo locale | 21 |
Questo elenco descrive il processo NAT descritto in dettaglio nella tabella precedente:
Prima riga: Un pacchetto con qualsiasi indirizzo di origine e numero di porta destinato al server FTP (10.1.1.1) e numero di porta TCP di destinazione 2021 deve avere la necessaria conversione NAT del payload.
Seconda riga: Un pacchetto con qualsiasi indirizzo di origine e qualsiasi numero di porta destinato al server FTP (10.1.1.1) e il numero di porta TCP di destinazione 21 deve avere la necessaria conversione NAT del payload.
Terza riga: Un pacchetto con qualsiasi indirizzo di origine e qualsiasi numero di porta destinato a qualsiasi indirizzo locale con numero di porta TCP di destinazione 21 (porta di controllo FTP tipica) deve avere la necessaria conversione NAT del payload. In questo modo, tutti i server FTP in esecuzione sulla porta 21 tipica possono disporre della necessaria conversione NAT del payload.
Quarta riga: Un pacchetto originato da 10.1.1.1 con qualsiasi numero di porta destinato a qualsiasi indirizzo locale con porta TCP di destinazione 21 deve avere la necessaria traduzione NAT del payload.
Si supponga che questi server FTP siano in esecuzione nella rete locale:
Server FTP con indirizzo IP 10.1.1.1 in esecuzione sulla porta TCP numero 21.
Server FTP con indirizzo IP 10.1.1.0/24 (diverso da 10.1.1.1) sulla porta TCP numero 2021.
ip nat service list 10 ftp tcp port 2021 access-list 10 deny 10.1.1.1 access-list 10 permit 10.1.1.0 0.0.0.255
Source address | Porta TCP di origine | Indirizzo di destinazione | Porta TCP di destinazione |
---|---|---|---|
qualsiasi indirizzo locale | qualsiasi porta | 10.1.1.1 | 21 |
qualsiasi indirizzo locale | qualsiasi porta | 10.1.1.x (cfr. nota) | 2021 |
10.1.1.x (cfr. nota) | qualsiasi porta | Qualsiasi indirizzo diverso da 10.1.1.x (cfr. nota) | 21 |
Nota: 10.1.1.x non è uguale a 10.1.1.1.
Questo elenco descrive il processo NAT descritto in dettaglio nella tabella precedente:
Prima riga: Un pacchetto con qualsiasi indirizzo di origine e qualsiasi numero di porta destinato al server FTP (10.1.1.1) e il numero di porta TCP di destinazione 21 deve avere la necessaria conversione NAT del payload.
Nota: i pacchetti destinati alla porta 10.1.1.1 con porta 2021 non dispongono di una conversione del payload NAT a causa dell'istruzione deny 10.1.1.1 nell'elenco degli accessi.
Seconda riga: Un pacchetto con un indirizzo di origine e un numero di porta qualsiasi destinato a un indirizzo locale (diverso da 10.1.1.1) con numero di porta TCP di destinazione 2021 deve avere la necessaria traduzione NAT del payload.
Terza riga: Un pacchetto originato da una versione 10.1.1.x (fare riferimento alla nota sotto la tabella di cui sopra) (diversa da 10.1.1.1) con un numero di porta destinato a un indirizzo (diverso da 10.1.1.x) con porta TCP di destinazione 21 deve avere la necessaria traduzione NAT del payload.
È importante ricordare quando una porta di controllo FTP non standard è configurata per un server FTP, NAT interrompe le sessioni di controllo FTP che utilizzano la porta 21 per quel particolare server. Se un server FTP utilizza porte standard e non standard, è necessario configurare entrambe le porte con il comando ip nat service.
Il server FTP 10.1.1.1 alla porta TCP numero 2021 è in esecuzione sulla rete interna. Il router NAT è configurato per consentire il traffico FTP NAT per le connessioni di controllo alla porta 2021.
Esempio di rete
Configurazione:
interface Ethernet0 ip address 10.1.1.2 255.255.255.0 ip nat inside ! interface Serial0 ip address 192.168.10.1 255.255.255.252 ip nat outside ! ip nat service list 10 ftp tcp port 2021 ip nat inside source static 10.1.1.1 20.20.20.1 !--- Static NAT translation for inside local address 10.1.1.1 !--- to inside global address 20.20.20.1. ! access-list 10 permit 10.1.1.1
Revisione | Data di pubblicazione | Commenti |
---|---|---|
1.0 |
10-Aug-2005 |
Versione iniziale |