Les versions 11.2(13) et 11.3(3) du logiciel Cisco IOS® ont introduit la fonctionnalité NAT (Network Address Translation) pour prendre en charge les numéros de port FTP (File Transfer Protocol) non standard. Dans les versions antérieures du logiciel Cisco IOS, lorsqu’un routeur compatible NAT reçoit un paquet avec des adresses IP qui doivent être traduites NAT, et que le numéro de port TCP standard correspond à la connexion de contrôle FTP (21), le routeur reconnaît le paquet en tant que paquet FTP et effectue toute traduction nécessaire dans la charge utile (partie données) du paquet. Cependant, si le serveur FTP utilise un numéro de port FTP non standard, NAT ignore la charge utile du paquet. Cela peut empêcher l’établissement de connexions de données FTP.
Afin de prendre en charge l'utilisation de numéros de port FTP non standard, vous devez utiliser la commande ip nat service. Ce tableau décrit les options disponibles sur cette commande :
Option | Définition |
---|---|
liste | Spécifiez la liste d'accès décrivant les adresses globales. |
name (nom) | Nom de la liste d'accès pour l'adresse locale du serveur. |
nombre | Numéro de liste d’accès pour les adresses globales. |
ftp | Protocole FTP. |
tcp | Protocole TCP. |
port | Port spécial non standard. |
port number (numéro de port) | Nombre de ports non standard spéciaux. |
Voici un exemple de syntaxe :
router-6(config)#ip nat service list 10 ftp tcp port 2021
A noter :
L'adresse de liste d'accès de la commande ci-dessus doit correspondre à l'adresse IP locale interne du serveur FTP avec le port de contrôle FTP non standard.
Si un port de contrôle FTP non standard est configuré pour un serveur FTP, NAT arrête de vérifier les connexions de contrôle FTP qui utilisent le port 21 pour ce serveur FTP. Tous les autres serveurs FTP continuent de fonctionner normalement.
Un hôte avec un serveur FTP utilisant un port de contrôle non standard peut également avoir un client FTP utilisant le port de contrôle FTP standard (21).
Si un serveur FTP utilise à la fois le port 21 et un port non standard, vous devez configurer les deux ports à l’aide de la commande ip nat service list <acl> ftp tcp <port>. Exemple :
ip nat service list 10 ftp tcp port 2021 ip nat service list 10 ftp tcp port 21
Cependant, vous ne pouvez pas configurer plusieurs listes d'accès pour le même port et le même service. Exemple :
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
Aucune spécification déterminée n'est requise pour ce document.
Les informations contenues dans ce document sont basées sur les versions de matériel et de logiciel suivantes :
Logiciel Cisco IOS versions 11.2(13), 11.3(3) et ultérieures
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
Pour plus d'informations sur les conventions utilisées dans ce document, reportez-vous à Conventions relatives aux conseils techniques Cisco.
Dans chacun des exemples ci-dessous, les flux que la NAT traite en tant que connexions de contrôle FTP sont décrits dans un tableau suivant les configurations. Dans chaque table, « toute adresse locale » fait référence à toute adresse qui n'est pas égale à 10.1.1.1.
Supposez que ces serveurs FTP s'exécutent sur votre réseau local :
Un serveur FTP avec l'adresse IP 10.1.1.1 s'exécutant sur le numéro de port TCP 2021.
Serveurs FTP supplémentaires avec adresse IP « any » (autre que 10.1.1.1) au numéro de port TCP 21.
ip nat service list 10 ftp tcp port 2021 access-list 10 permit 10.1.1.1
Adresse source | Port TCP source | Adresse de destination | Port TCP de destination |
---|---|---|---|
Toute adresse locale | tout port | 10.1.1.1 | 2021 |
Toute adresse locale | tout port | toute adresse locale (voir remarque) | 21 |
10.1.1.1 | tout port | toute adresse locale (voir remarque) | 21 |
Remarque : toute adresse locale n'est pas égale à 10.1.1.1.
Cette liste décrit le processus NAT détaillé dans le tableau précédent :
Première ligne : Un paquet avec toute adresse source et tout numéro de port destiné au serveur FTP (10.1.1.1) avec le numéro de port TCP de destination 2021 doit avoir la traduction NAT nécessaire de la charge utile.
Deuxième ligne : Un paquet avec toute adresse source et tout numéro de port destiné à une adresse locale (autre que 10.1.1.1) avec le numéro de port TCP de destination 21 (port de contrôle FTP typique) doit avoir la traduction NAT nécessaire de la charge utile. Par conséquent, en activant tous les serveurs FTP (autres que 10.1.1.1) qui s'exécutent sur le port 21 standard pour avoir la traduction NAT nécessaire de la charge utile.
Troisième ligne : Un paquet provenant de 10.1.1.1 avec n'importe quel numéro de port destiné à n'importe quelle adresse locale (autre que 10.1.1.1) avec le port TCP de destination 21 doit avoir la traduction NAT nécessaire de la charge utile.
Supposez que ces serveurs FTP s'exécutent sur votre réseau local :
Un serveur FTP avec l'adresse IP 10.1.1.1 s'exécutant sur les ports TCP 21 et 2021.
Certains serveurs FTP avec l'adresse IP « any » (autre que 10.1.1.1) au numéro de port TCP 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
Adresse source | Port TCP source | Adresse de destination | Port TCP de destination |
---|---|---|---|
Toute adresse locale | tout port | 10.1.1.1 | 2021 |
Toute adresse locale | tout port | 10.1.1.1 | 21 |
Toute adresse locale | tout port | Toute adresse locale | 21 |
Toute adresse locale | tout port | Toute adresse locale | 21 |
Cette liste décrit le processus NAT détaillé dans le tableau précédent :
Première ligne : Un paquet avec toute adresse source et tout numéro de port destiné au serveur FTP (10.1.1.1) avec le numéro de port TCP de destination 2021 doit avoir la traduction NAT nécessaire de la charge utile.
Deuxième ligne : Un paquet avec toute adresse source et tout numéro de port destiné au serveur FTP (10.1.1.1) avec le numéro de port TCP de destination 21 doit avoir la traduction NAT nécessaire de la charge utile.
Troisième ligne : Un paquet avec toute adresse source et tout numéro de port destiné à toute adresse locale avec le numéro de port TCP de destination 21 (port de contrôle FTP typique) doit avoir la traduction NAT nécessaire de la charge utile. Par conséquent, en activant tous les serveurs FTP s'exécutant sur le port 21 standard pour avoir la traduction NAT nécessaire de la charge utile.
Quatrième ligne : Un paquet provenant de 10.1.1.1 avec n'importe quel numéro de port destiné à n'importe quelle adresse locale avec le port TCP 21 de destination doit avoir la traduction NAT nécessaire de la charge utile.
Supposez que ces serveurs FTP s'exécutent sur votre réseau local :
Un serveur FTP avec l'adresse IP 10.1.1.1 s'exécutant sur le port TCP numéro 21.
Serveurs FTP avec l'adresse IP 10.1.1.0/24 (autre que 10.1.1.1) sur le numéro de port TCP 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
Adresse source | Port TCP source | Adresse de destination | Port TCP de destination |
---|---|---|---|
Toute adresse locale | tout port | 10.1.1.1 | 21 |
Toute adresse locale | tout port | 10.1.1.x (voir note) | 2021 |
10.1.1.x (voir note) | tout port | Toute adresse autre que 10.1.1.x (voir remarque) | 21 |
Remarque : 10.1.1.x n'est pas égal à 10.1.1.1.
Cette liste décrit le processus NAT détaillé dans le tableau précédent :
Première ligne : Un paquet avec toute adresse source et tout numéro de port destiné au serveur FTP (10.1.1.1) avec le numéro de port TCP de destination 21 doit avoir la traduction NAT nécessaire de la charge utile.
Remarque : les paquets destinés à 10.1.1.1 avec le port 2021 n'ont pas de traduction de charge utile NAT en raison de l'instruction deny 10.1.1.1 de la liste d'accès.
Deuxième ligne : Un paquet avec toute adresse source et tout numéro de port destiné à une adresse locale (autre que 10.1.1.1) avec le numéro de port TCP de destination 2021 doit avoir la traduction NAT nécessaire de la charge utile.
Troisième ligne : Un paquet provenant de n'importe quel 10.1.1.x (voir la note ci-dessus) (autre que 10.1.1.1) avec n'importe quel numéro de port destiné à n'importe quelle adresse (autre que 10.1.1.x) avec le port TCP de destination 21 doit avoir la traduction NAT nécessaire de la charge utile.
Il est important de se rappeler quand un port de contrôle FTP non standard est configuré pour un serveur FTP, NAT arrête les sessions de contrôle FTP qui utilisent le port 21 pour ce serveur particulier. Si un serveur FTP utilise des ports standard et non standard, vous devez configurer les deux ports à l'aide de la commande ip nat service.
Le serveur FTP 10.1.1.1 du port TCP numéro 2021 est exécuté sur le réseau interne. Le routeur NAT est configuré pour autoriser la NAT du trafic FTP pour les connexions de contrôle au port 2021.
Diagramme du réseau
Configuration:
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
Révision | Date de publication | Commentaires |
---|---|---|
1.0 |
10-Aug-2005 |
Première publication |