Cours B2-07 - NAT/PAT et listes de contrôle d'accès
Cours · Fiche de cours

B2-07 - NAT/PAT et listes de contrôle d'accès

B2-07 NAT/PAT et listes de contrôle d'accès

🎓 SIO1 · semestre 2 ⏱️ 5 h (cours + TP) 🎯 Bloc 2 – SISR Faire sortir tout un réseau privé sur Internet avec une seule adresse publique (NAT, PAT, redirection de port), puis contrôler qui a le droit de joindre quoi grâce aux listes de contrôle d'accès (ACL) du routeur.

🎯 Objectifs

  • Expliquer pourquoi les adresses privées ne sortent pas sur Internet et à quoi sert le NAT.
  • Distinguer NAT statique, NAT dynamique et PAT, et lire une table de traduction (inside local/global, ports).
  • Configurer le PAT et une redirection de port sur un routeur Cisco, puis les vérifier.
  • Écrire des ACL standard et étendues, numérotées et nommées, avec leur wildcard.
  • Placer une ACL au bon endroit et dans le bon sens, et limiter l'accès aux lignes vty.
  • Dépanner une panne de NAT ou d'ACL à partir des commandes de vérification.

📋 Prérequis

🧭 Référentiel

  • B2.2 Installer et configurer des éléments d'infrastructure : accès à Internet, filtrage.
  • B2.2 Tester l'intégration et valider par une recette.
  • B2.3 Identifier, qualifier et réagir face à un incident (NAT, ACL).
Test express des prérequis 3 questions · 2 minutes · conseillé avant de commencer

1. Laquelle de ces adresses est une adresse privée ?

Le bloc privé 172.16.0.0/12 va de 172.16 à 172.31 : 172.20 en fait partie. Les deux autres adresses sont publiques. À revoir : B2-02 · Adressage IPv4.

2. Quand un routeur utilise-t-il sa route par défaut 0.0.0.0/0 ?

La plus longue correspondance l'emporte : /0 est le préfixe le moins précis, donc le dernier recours. À revoir : B2-06 · Routage statique et OSPF.

3. Quelles adresses peut-on donner à deux routeurs reliés par le réseau 203.0.113.0/30 ?

/30 : pas de 4, adresse du réseau .0, diffusion .3, donc seulement .1 et .2 sont utilisables. À revoir : B2-02 · Adressage IPv4.
ADRESSES PRIVÉES 172.16.10.1172.16.20.1172.16.30.1 INTERNET 203.0.113.2 UNE SEULE ADRESSE PUBLIQUE

Brocéliande Logistique (entreprise fictive, 60 salariés) vient de signer son accès Internet : l'opérateur livre une seule adresse publique, 203.0.113.2, pour tout le siège et l'agence de Rennes. Or tous les postes ont des adresses privées 172.16.x.x, que personne ne sait joindre sur Internet.

Deuxième sujet, interne cette fois : un terminal de l'entrepôt a ouvert par erreur un dossier de la comptabilité. Le responsable informatique veut que l'entrepôt ne puisse plus joindre la comptabilité, sans le couper du reste. Ta mission : faire sortir tout le monde par la même adresse (le NAT), puis poser le filtre sur le routeur (une ACL).

Le coursPourquoi et comment traduire les adresses (NAT, PAT, redirection de port), puis filtrer le trafic avec des ACL, les placer, les vérifier et dépanner l'ensemble.

1. Adresses privées, adresses publiques : pourquoi le NAT

IPv4 offre environ 4,3 milliards d'adresses : bien moins que d'appareils connectés dans le monde. Les adresses publiques sont donc rares et payantes. Pour que chaque entreprise ne gaspille pas les siennes, la RFC 1918 réserve trois blocs privés, réutilisables partout : 10.0.0.0/8, 172.16.0.0/12 et 192.168.0.0/16 (voir B2-02).

Mais un routeur d'Internet refuse de router une adresse privée : des millions de réseaux utilisent 172.16.10.1, personne ne saurait lequel joindre. Si PC-DIR envoyait tel quel un paquet à un serveur public, la réponse, adressée à 172.16.10.1, ne reviendrait jamais.

NAT (Network Address Translation) : le routeur de sortie réécrit les adresses des paquets qui le traversent. À l'aller, il remplace l'adresse source privée par une adresse publique ; au retour, il remet l'adresse privée dans la destination. Les postes gardent leurs adresses privées, Internet ne voit que l'adresse publique.

Clique sur le poste, sur le routeur R1 ou sur le serveur pour suivre l'adresse source d'un paquet.

RÉSEAU PRIVÉ · 172.16.0.0/16 INTERNET · adresses publiques PC-DIR 172.16.10.1 R1 · NAT G0/1 : 203.0.113.2 SRV-PUBLIC 198.51.100.10 source172.16.10.1 source203.0.113.2

Choisis un équipement : son rôle dans la traduction s'affiche ici.

Le NAT se fait sur le routeur qui relie le réseau privé à Internet : ici R1.
POSTES INTERNES poste 101 poste 102 poste 103 STANDARD 02 33 00 00 00 cahier d'appels CORRESPONDANT affiche : 02 33 00 00 00 le correspondant ne voit que le numéro du standard qui sait à quel poste passer la réponse

Pour bien comprendre : le standard téléphonique

Dans une entreprise, chaque bureau a un numéro de poste interne (101, 102…) que personne n'appelle de l'extérieur. Vers l'extérieur, tout le monde sort par le numéro du standard.

Quand le poste 102 appelle, le standard note dans son cahier d'appels « 102 a appelé ce correspondant » et le correspondant voit le numéro du standard. Quand il rappelle, le standard consulte son cahier et passe l'appel au poste 102.

Le routeur fait de même : postes = adresses privées, standard = adresse publique, cahier d'appels = table de traduction.

On dit souvent que le NAT « sécurise » le réseau parce que les postes ne sont pas joignables depuis Internet. C'est un effet de bord, pas une protection : le NAT ne filtre rien (un poste infecté sort très bien), et dès qu'on ajoute une redirection de port, le serveur redevient joignable. Le filtrage, c'est le rôle des ACL et du pare-feu (fiche B3-09).

2. Le vocabulaire du NAT : inside, outside, local, global

La documentation Cisco emploie quatre expressions qui déroutent au début. Elles répondent à deux questions : de quel côté du routeur se trouve la machine (inside : ton réseau, outside : Internet) et qui voit cette adresse (local : vue de l'intérieur, global : vue de l'extérieur).

CÔTÉ INSIDE · le paquet vu depuis ton LAN CÔTÉ OUTSIDE · le même paquet vu d'Internet SOURCE172.16.10.1inside local DESTINATION198.51.100.10outside local SOURCE203.0.113.2inside global DESTINATION198.51.100.10outside global R1 PC-DIR R1 SRV-PUBLIC paquet avec les adresses « local » paquet avec les adresses « global » Seule la source change : le serveur distant n'est pas traduit, son adresse est la même des deux côtés.
R1 réécrit l'adresse source (inside local → inside global). Aucun changement pour la destination.
  • Inside localL'adresse du poste de ton réseau, telle qu'il la connaît : 172.16.10.1 (privée).
  • Inside globalLa même machine, vue d'Internet : 203.0.113.2 (publique, celle de R1).
  • Outside localLa machine distante, vue de l'intérieur : 198.51.100.10.
  • Outside globalLa machine distante, vraie adresse : 198.51.100.10. Presque toujours identique à l'outside local.

« Inside » désigne tes machines, « outside » celles d'en face. « Local » = ce que voit ton LAN, « global » = ce que voit Internet. Dans la pratique, une seule paire change : inside local (privée) → inside global (publique).

3. NAT statique, dynamique et PAT

Il existe trois façons de choisir l'adresse publique qui remplace l'adresse privée. Elles répondent à des besoins différents, et le routeur peut les utiliser en même temps.

NAT STATIQUE1 privée ↔ 1 publique, fixe NAT DYNAMIQUE1 privée → 1 publique d'un pool PAT (OVERLOAD)n privées → 1 publique, + ports 172.16.50.20 192.0.2.10 172.16.10.1172.16.20.1172.16.30.1 192.0.2.9192.0.2.10192.0.2.11192.0.2.12 172.16.10.1172.16.20.1172.16.30.1 203.0.113.21 seule ! :49200:1024:51000 toujours la même paire,dans les deux sens Pour un serveur à joindredepuis Internet plus d'adresse libre dansle pool = plus de sortie Rare : il faut un bloc public Le cas de presque toutesles entreprises et des box
Le PAT distingue les postes par le numéro de port : une seule adresse publique suffit.
TypePrincipeQuand l'utiliserCommande IOS (forme)
StatiqueUne adresse privée est liée à une adresse publique, en permanence et dans les deux sensUn serveur qui doit être joignable de l'extérieur, avec sa propre adresse publiqueip nat inside source static 172.16.50.20 192.0.2.10
DynamiqueLe routeur prend une adresse libre dans un pool et la garde le temps de la communicationPlusieurs adresses publiques, mais moins que de postesip nat inside source list 1 pool PUBLIC
PAT (surcharge, overload)Tous les postes partagent une adresse ; le routeur les distingue par le port sourceCas général : une seule adresse publique pour tout le siteip nat inside source list 1 interface g0/1 overload

Les trois termes désignent la même chose. Dans le langage courant, « faire du NAT » sur une box ou un routeur d'entreprise veut presque toujours dire faire du PAT. Les adresses 192.0.2.x des exemples statique et dynamique sont réservées à la documentation, comme 203.0.113.x et 198.51.100.x.

4. Le PAT en détail : la table de traduction

Avec une seule adresse publique, comment R1 sait-il, quand une réponse arrive, à quel poste la rendre ? Grâce aux ports. Chaque connexion TCP ou UDP est identifiée par un couple adresse : port. R1 garde dans sa table une ligne par connexion, et c'est le port qui joue le rôle du numéro de poste dans le standard téléphonique.

PC-DIR172.16.10.1 R1G0/1 : 203.0.113.2 SRV-PUBLIC198.51.100.10 INSIDEOUTSIDE src 172.16.10.1:49200dst 198.51.100.10:80 R1 note lacorrespondance src 203.0.113.2:49200dst 198.51.100.10:80 src 198.51.100.10:80dst 203.0.113.2:49200 src 198.51.100.10:80dst 172.16.10.1:49200 ProInside localInside globalOutside TABLE DE TRADUCTION DE R1 tcp172.16.10.1:49200203.0.113.2:49200198.51.100.10:80 une ligne par connexion · le port fait la différence entre les postes
La table de traduction est la mémoire du routeur : sans elle, la réponse ne pourrait pas retrouver le bon poste.

Et si deux postes choisissent le même port source ? C'est possible : le port est tiré au hasard dans une plage de 16 000 numéros environ. Dans ce cas, R1 choisit un autre port du côté public pour garder les lignes distinctes. Regarde l'animation : trois postes sortent en même temps par la même adresse.

PC-DIR172.16.10.1:49200 PC-COMPTA172.16.20.1:49200 PC-ENTREPOT172.16.30.1:51000 R1 vu d'Internet :203.0.113.2:49200 vu d'Internet :203.0.113.2:1024 vu d'Internet :203.0.113.2:51000 PC-DIR et PC-COMPTA ont tiré le même port 49200 : R1 donne 1024 au second. même adresse publique pour tous · trois ports différents
Une adresse publique, des dizaines de milliers de ports : un site entier tient derrière une seule adresse.

Une ligne de la table disparaît après un temps d'inactivité : environ 1 minute pour un ping (ICMP), 5 minutes pour UDP et jusqu'à 24 heures pour TCP par défaut. On peut aussi la supprimer à la main avec clear ip nat translation *. Dans Packet Tracer, les numéros de ports traduits sont attribués autrement (souvent à partir de 1025) : lis la structure de la table, pas les chiffres exacts.

5. Redirection de port : joindre un serveur depuis l'extérieur

Le PAT ne marche que dans un sens : c'est un poste du réseau qui ouvre la connexion. Un visiteur qui tape https://203.0.113.2 arrive sur R1, qui ne trouve aucune ligne dans sa table : il ne sait pas à qui transmettre. Pour publier un service, on écrit la ligne à la main : c'est la redirection de port (port forwarding), un NAT statique limité à un port.

PRIVÉ · VLAN 50 Visiteur198.51.100.50 R1203.0.113.2 SRV-WEB172.16.50.20 le visiteur vise203.0.113.2:443 R1 renvoie vers172.16.50.20:443 203.0.113.2:22 pas de règle : le paquet s'arrête ip nat inside source static tcp 172.16.50.20 443 203.0.113.2 443
Seul le port 443 est redirigé : tous les autres ports de l'adresse publique restent fermés.

La règle se lit « tout ce qui arrive sur 203.0.113.2, port TCP 443, est renvoyé vers 172.16.50.20, port 443 ». SRV-WEB, l'intranet de Brocéliande Logistique, est le serveur du plan d'adressage qui arrive à l'étape 13 du fil rouge. La ligne apparaît dans la table sans qu'aucun poste n'ait rien demandé :

Cisco IOS R1redirection de port
R1(config)# ip nat inside source static tcp 172.16.50.20 443 203.0.113.2 443
R1(config)# do show ip nat translations
Pro Inside global Inside local Outside local Outside global
tcp 203.0.113.2:443 172.16.50.20:443 --- ---

Une redirection de port ouvre un chemin d'Internet vers ton réseau interne. Le serveur ainsi publié devient une cible : on le place dans une DMZ (zone séparée), derrière un pare-feu, avec des correctifs à jour. Le NAT seul ne remplace rien de tout cela (fiche B3-09).

6. Configurer et vérifier le NAT sur Cisco

6.1 Les quatre étapes

  1. Désigner les interfaces : ip nat inside sur chaque interface qui reçoit le trafic du réseau privé, ip nat outside sur celle qui regarde Internet. Sur R1, il y a cinq sous-interfaces de VLAN et la liaison série vers Rennes à marquer « inside ».
  2. Choisir ce qui sera traduit : une ACL standard qui liste les adresses privées concernées. Ici, ce n'est pas un filtre : permit signifie « à traduire ».
  3. Écrire la règle : ip nat inside source list … interface … overload pour le PAT.
  4. Prévoir la sortie : une route par défaut vers l'opérateur, sinon le paquet traduit ne sait pas où aller.
Cisco IOS R1PAT de tout le réseau 172.16.0.0/16
R1(config)# interface g0/1
R1(config-if)# ip address 203.0.113.2 255.255.255.252
R1(config-if)# ip nat outside ! côté Internet
R1(config-if)# no shutdown
R1(config-if)# interface g0/0.10
R1(config-subif)# ip nat inside ! à répéter sur .20 .30 .50 .99 et s0/0/0
R1(config-subif)# exit
R1(config)# access-list 1 permit 172.16.0.0 0.0.255.255 ! qui a le droit d'être traduit
R1(config)# ip nat inside source list 1 interface g0/1 overload ! la règle du PAT
R1(config)# ip route 0.0.0.0 0.0.0.0 203.0.113.1 ! sortie vers l'opérateur

Les deux autres types utilisent le même schéma, seule la règle change. Avec un bloc public 192.0.2.8/29 acheté à l'opérateur :

Cisco IOS R1NAT dynamique et NAT statique (exemples)
! dynamique : un pool d'adresses publiques, chacune prêtée à un poste à la fois
R1(config)# ip nat pool PUBLIC 192.0.2.9 192.0.2.14 netmask 255.255.255.248
R1(config)# ip nat inside source list 1 pool PUBLIC
! statique : un serveur toujours joignable à la même adresse publique
R1(config)# ip nat inside source static 172.16.50.20 192.0.2.10

À toi : complète la configuration NAT de R1 pour Brocéliande Logistique. L'ACL numéro 1 autorise tout le réseau 172.16.0.0/16 ; l'interface vers Internet est G0/1 ; la sous-interface du VLAN 10 est G0/0.10. Vérifie chaque ligne avec ✓.

R1(config)#
R1(config)#
R1(config)#
R1(config-if)#
R1(config-if)#
R1(config-subif)#

6.2 Vérifier : show ip nat translations et statistics

Fais d'abord générer du trafic (un ping, une page web depuis un poste), puis lis la table. Elle est vide tant que personne n'a rien envoyé.

Cisco IOS R1la table, puis les statistiques
R1# show ip nat translations
Pro Inside global Inside local Outside local Outside global
tcp 203.0.113.2:49200 172.16.10.1:49200 198.51.100.10:80 198.51.100.10:80
tcp 203.0.113.2:1024 172.16.20.1:49200 198.51.100.10:80 198.51.100.10:80
icmp 203.0.113.2:7 172.16.30.1:7 198.51.100.10:7 198.51.100.10:7
R1# show ip nat statistics
Total active translations: 3 (0 static, 3 dynamic; 3 extended)
Outside interfaces:
  GigabitEthernet0/1
Inside interfaces:
  GigabitEthernet0/0.10, GigabitEthernet0/0.20, GigabitEthernet0/0.30, GigabitEthernet0/0.50, GigabitEthernet0/0.99, Serial0/0/0
Hits: 128 Misses: 3
Dynamic mappings:
-- Inside Source
[Id: 1] access-list 1 interface GigabitEthernet0/1 refcount 3
  • Inside globalCe qu'Internet voit : l'adresse publique de R1 et le port attribué (colonne 2).
  • Inside localL'adresse privée du poste et son port (colonne 3). C'est elle qui dit « qui ».
  • Outside local / globalLa machine distante et le service joint. Ici identiques : SRV-PUBLIC n'est pas traduit.
  • Hits et MissesHits : paquets traduits grâce à une ligne existante. Misses : paquets qui ont dû créer une ligne. Si les deux restent à 0 pendant un test, le NAT ne s'applique pas.

6.3 Observer en direct : debug ip nat

debug ip nat affiche chaque traduction au moment où elle a lieu. Utile pour comprendre ; à utiliser brièvement, car il ralentit un routeur chargé.

Cisco IOS R1lance un ping depuis PC-DIR pendant ce temps
R1# debug ip nat
IP NAT debugging is on
NAT*: s=172.16.10.1->203.0.113.2, d=198.51.100.10 [31]
NAT*: s=198.51.100.10, d=203.0.113.2->172.16.10.1 [32]
R1# undebug all ! indispensable : on arrête dès que c'est compris
R1# clear ip nat translation * ! vide la table pour refaire un test propre

La première ligne est l'aller (la source passe de 172.16.10.1 à 203.0.113.2), la seconde le retour (la destination repasse de 203.0.113.2 à 172.16.10.1). Le nombre entre crochets est l'identifiant du paquet IP.

7. Les ACL : une liste lue de haut en bas

Une ACL (liste de contrôle d'accès) est une liste de règles permit (autorise) et deny (refuse). On la applique à une interface, dans un sens : à chaque paquet qui passe, le routeur parcourt la liste de haut en bas et s'arrête à la première règle qui correspond. Cette règle décide.

Si aucune règle ne correspond, le paquet est refusé : à la fin de toute ACL, IOS ajoute une dernière règle invisible, le deny implicite (deny ip any any). Suis deux paquets de l'entrepôt dans l'ACL de Brocéliande Logistique.

ip access-list extended ENTREPOT-VERS-COMPTA 10 deny ip 172.16.30.0 0.0.0.255 172.16.20.0 0.0.0.255 20 permit ip any any deny ip any any← invisible : le deny implicite lecture de haut en bas paquet 1 · PC-ENTREPOT172.16.30.1 → 172.16.20.1 REFUSÉ · on s'arrête ≠ paquet 2 · PC-ENTREPOT172.16.30.1 → 172.16.50.10 AUTORISÉ ≠ ligne 20 oubliée paquet 2 · PC-ENTREPOT172.16.30.1 → 172.16.50.10 REFUSÉ · deny implicite 1Lecture de haut en basdans l'ordre des numéros 2La première correspondance gagneles lignes suivantes sont ignorées 3Fin de liste = deny implicitetout ce qui n'est pas permis est refusé
Une ACL qui ne contient que des « deny » refuse tout : il faut presque toujours finir par un « permit ».

De haut en bas, la première ligne qui correspond décide, puis on s'arrête. On écrit donc les règles précises d'abord, les règles larges ensuite. En fin de liste, le deny implicite refuse tout ce qui n'a pas été autorisé.

La même commande access-list sert à deux choses très différentes. Appliquée à une interface avec ip access-group, elle filtre (permit = laisse passer, deny = jette). Citée par une règle NAT (ip nat inside source list 1), elle sélectionne les adresses à traduire : permit = « à traduire », deny = « ne pas traduire », rien n'est jeté.

Une ACL est sans état (stateless) : elle juge chaque paquet isolément, sans savoir s'il répond à une connexion déjà ouverte. L'ACL qui interdit 172.16.30.0/24 → 172.16.20.0/24 bloque donc aussi les réponses du VLAN 30 aux requêtes venues du VLAN 20. Un pare-feu « à états » (pfSense, fiche B3-09) suit les connexions et n'a pas ce défaut.

8. Wildcard, ACL standard, étendues, numérotées et nommées

8.1 Le wildcard : un masque à l'envers

Dans une ACL, une adresse est suivie d'un wildcard. Il se lit à l'inverse d'un masque : 0 = ce bit doit être identique, 1 = peu importe. Pour passer d'un masque au wildcard, on retranche chaque octet de 255.

1er octet2e3e4e octet 172.16.30.00.0.0.255 1720 160 300 0255 tout le VLAN 30 172.16.30.320.0.0.31 1720 160 300 3231 de .32 à .63(un bloc /27) 172.16.30.50.0.0.0 1720 160 300 50 cette adresse seule= « host »
Dans chaque case : l'octet de l'adresse (en haut) et celui du wildcard (en bas). Bleu : comparé. Orange : ignoré. Jaune : comparé en partie.
RéseauMasqueWildcardMot-clé possible
Une seule machine (/32)255.255.255.2550.0.0.0host 172.16.99.20
Liaison /30255.255.255.2520.0.0.3–
Bloc /27255.255.255.2240.0.0.31–
Un VLAN (/24)255.255.255.00.0.0.255–
Tout le siège (/16)255.255.0.00.0.255.255–
Tout le monde (/0)0.0.0.0255.255.255.255any

Pour vérifier une plage, le décodeur d'adresse te donne le réseau, la diffusion et le nombre d'hôtes (le wildcard est le masque « retourné »).

Entraîne-toi : donne le wildcard de chaque réseau (calcule 255 moins l'octet du masque).

VLAN 20 : 172.16.20.0/24 ›
Liaison WAN : 10.0.0.0/30 ›
Bloc 192.0.2.8/29 ›
Tout le siège : 172.16.0.0/16 ›
Bloc 172.16.60.0/22 ›

8.2 Standard ou étendue

ACL standardACL étendue
Critères lusL'adresse source seulementProtocole, adresse source, adresse destination, ports
Numéros1 à 99 (et 1300 à 1999)100 à 199 (et 2000 à 2699)
Exempleaccess-list 10 permit 172.16.99.0 0.0.0.255access-list 110 deny tcp 172.16.30.0 0.0.0.255 host 172.16.50.10 eq 3389
Usage typiqueQui peut administrer le routeur (vty) ; qui est traduit par le NATFiltrer les échanges entre deux réseaux, par service

Une ligne d'ACL étendue se décompose ainsi :

Cisco IOS une entrée d'ACL étendue
deny  tcp  172.16.30.0 0.0.0.255  host 172.16.50.10  eq 3389
  • Actionpermit laisse passer, deny jette le paquet.
  • Protocoleip (tous), icmp (ping), tcp ou udp (les seuls à avoir des ports).
  • Source + wildcardQui envoie : un réseau (172.16.30.0 0.0.0.255), une machine (host …) ou tout le monde (any).
  • Destination + wildcardQui reçoit, avec la même écriture que la source.
  • Port (facultatif)eq 3389 (égal), range 20 21, gt 1023 (supérieur) ; un nom remplace le numéro pour certains ports connus : eq www (= eq 80) ; sinon on donne le numéro, par exemple eq 443.

8.3 Numérotée ou nommée

ACL numérotéeACL nommée
CréationUne commande par ligne : access-list 110 …ip access-list extended NOM, puis les lignes
LisibilitéUn numéro dont on oublie le rôleUn nom parlant : ENTREPOT-VERS-COMPTA
ModificationDifficile : les lignes se suivent dans l'ordre d'écritureFacile : numéros de séquence, insertion et suppression d'une ligne
Commentaireaccess-list 110 remark …remark …
Cisco IOS R1modifier une ACL nommée
R1(config)# ip access-list extended ENTREPOT-VERS-COMPTA
R1(config-ext-nacl)# remark Interdit le VLAN 30 vers le VLAN 20
R1(config-ext-nacl)# 5 permit tcp host 172.16.30.50 host 172.16.20.10 eq 443 ! insérée AVANT la ligne 10
R1(config-ext-nacl)# no 5 ! supprime cette seule ligne
R1(config-ext-nacl)# end

Pour un usage professionnel, utilise des ACL nommées : le nom dit ce que fait la liste, et les numéros de séquence permettent d'insérer une exception sans tout réécrire. Les numérotées restent utiles pour les ACL courtes (une ligne pour le NAT, une pour les vty) et sont attendues à l'examen.

9. Où et dans quel sens poser une ACL

9.1 Standard près de la destination, étendue près de la source

Une ACL standard ne regarde que la source : posée près de la source, elle bloquerait cette source vers toutes les destinations. On la pose donc au plus près de la destination. Une ACL étendue sait désigner précisément le flux à refuser : on la pose au plus près de la source, pour que le trafic refusé ne traverse pas le réseau pour rien.

Clique sur « ACL étendue » puis sur « ACL standard » : l'interface choisie s'allume.

ACL étendue ACL standard PC-ENTREPOTVLAN 30 PC-COMPTAVLAN 20 R1 G0/0.30G0/0.20 étendue · in standard · out Paquet visé : source 172.16.30.0/24 → destination 172.16.20.0/24 Pose proche de la source pour l'étendue · proche de la destination pour la standard

Choisis un type d'ACL : la bonne interface et le bon sens s'affichent ici.

Le fil rouge utilise une ACL étendue : elle se pose en entrée de G0/0.30, près de l'entrepôt.

Standard : près de la destination. Étendue : près de la source. Une ACL standard mal placée coupe trop de choses ; une ACL étendue trop loin de la source fait voyager des paquets qui seront jetés.

9.2 Le sens : in ou out

Le sens se juge du point de vue du routeur. in : le paquet est testé à son arrivée sur l'interface, avant la décision de routage. out : il est testé à son départ, après la décision de routage. Une interface peut avoir une ACL par sens (une en in, une en out), pas davantage. Le NAT s'intercale à un endroit précis de ce trajet, ce qui compte quand on filtre une adresse traduite :

Un paquet qui sort (LAN → Internet) Un paquet qui entre (Internet → LAN) ACL in Routage NAT : source ACL out ACL in NAT : dest. Routage ACL out voit l'adresse privéeprivée → publiquevoit l'adresse publique voit l'adresse publiquepublique → privéevoit l'adresse privée Une ACL en entrée de G0/1 voit donc 203.0.113.2, pas 172.16.50.20.
in = avant le routage, à l'arrivée ; out = après le routage, au départ. Le NAT se place entre les deux.

Un test pour ne pas se tromper : pose-toi la question « le paquet que je veux arrêter entre-t-il dans le routeur par cette interface ? » Si oui, c'est in. L'erreur classique est de poser out sur l'interface d'arrivée ou in sur l'interface de départ : l'ACL est alors correcte mais ne voit jamais le trafic visé.

9.3 Protéger l'accès au routeur : les lignes vty

Les lignes vty sont les « portes » par lesquelles on administre un équipement à distance (SSH). Pour n'autoriser que le poste d'administration, on ne touche pas aux interfaces : on applique une ACL standard avec access-class, sur les lignes vty, en in. C'est l'adresse source de celui qui se connecte qui est testée.

ip access-group s'applique à une interface et filtre le trafic qui la traverse. access-class s'applique à une ligne vty et filtre qui peut ouvrir une session d'administration sur le routeur lui-même. Les confondre est une erreur de syntaxe très fréquente.

10. Configurer et vérifier les ACL sur Cisco

10.1 Interdire l'entrepôt vers la comptabilité

Cisco IOS R1ACL étendue nommée, appliquée près de la source
R1(config)# ip access-list extended ENTREPOT-VERS-COMPTA
R1(config-ext-nacl)# deny ip 172.16.30.0 0.0.0.255 172.16.20.0 0.0.0.255 ! le flux à refuser
R1(config-ext-nacl)# permit ip any any ! tout le reste passe (sinon : deny implicite)
R1(config-ext-nacl)# exit
R1(config)# interface g0/0.30
R1(config-subif)# ip access-group ENTREPOT-VERS-COMPTA in ! en entrée, côté entrepôt

À toi : écris les lignes qui manquent pour créer l'ACL, puis l'appliquer au bon endroit. Vérifie chaque ligne avec ✓.

R1(config)#
R1(config-ext-nacl)#
R1(config-ext-nacl)#
R1(config)#
R1(config-subif)#

10.2 Limiter l'administration aux postes de gestion

Cisco IOS R1ACL standard sur les lignes vty
R1(config)# access-list 10 permit 172.16.99.0 0.0.0.255 ! le VLAN 99 GESTION
R1(config)# line vty 0 4
R1(config-line)# access-class 10 in ! pas ip access-group : on est sur une ligne
R1(config-line)# end

Avant d'appliquer une ACL sur les vty, assure-toi d'avoir une session ouverte depuis une adresse autorisée et ne ferme pas la fenêtre avant d'avoir testé. Une faute de frappe et tu t'enfermes dehors : il faudra alors le câble console.

10.3 Vérifier

Cisco IOS R1les compteurs « matches » prouvent que la règle sert
R1# show access-lists
Standard IP access list 1
    10 permit 172.16.0.0, wildcard bits 0.0.255.255 (128 matches)
Extended IP access list ENTREPOT-VERS-COMPTA
    10 deny ip 172.16.30.0 0.0.0.255 172.16.20.0 0.0.0.255 (8 matches)
    20 permit ip any any (53 matches)
R1# show ip interface g0/0.30 | include access list
  Outgoing access list is not set
  Inbound  access list is ENTREPOT-VERS-COMPTA
R1# clear access-list counters ! remet les compteurs à zéro avant un test

Teste toujours les deux côtés : le flux refusé doit échouer (et son compteur monter sur la ligne deny), et un flux voisin autorisé doit continuer de marcher. Une ACL « qui marche » parce que tout est coupé n'est pas une réussite.

11. Dépanner le NAT et les ACL

11.1 La méthode : du poste vers Internet

Un poste n'atteint pas Internet. Ne change rien au hasard : avance du poste vers la sortie, une question à la fois, et chaque réponse te dit où chercher.

Un poste n'accède pas à Internet Réponds à partir de tes tests

Le poste joint-il sa passerelle (par exemple ping 172.16.10.254) ?Si la passerelle ne répond pas, le NAT n'est pas en cause.

Depuis R1, ping 198.51.100.10 répond-il ?R1 utilise alors sa propre adresse publique : on teste la liaison avec l'opérateur et la route par défaut.

Après un ping du poste, show ip nat translations contient-il une ligne pour ce poste ?Lance le ping, puis lis la table tout de suite (les lignes de ping disparaissent en 1 minute).

Dans show ip nat statistics, l'interface d'arrivée du poste est-elle bien « inside » et G0/1 « outside » ?Pense aux cinq sous-interfaces et à la liaison série de Rennes.

Problème d'adressage ou de VLAN, pas de NAT : revois la passerelle du poste, son masque et son VLAN (fiches B2-02 et B2-03).

La sortie de R1 est en cause : vérifie le câble et l'adresse de G0/1 (show ip interface brief), la route par défaut (show ip route) et l'état de R-FAI.

Corrige les marquages : ip nat inside sur l'interface d'arrivée, ip nat outside sur G0/1. Une interface oubliée ou inversée n'est jamais traduite.

Les interfaces sont bonnes : regarde l'ACL de traduction (show access-lists) : le réseau du poste est-il bien couvert, le wildcard est-il juste ? Vérifie aussi la présence de overload dans la règle ip nat inside source.

Le NAT fonctionne : la panne est ailleurs. Cherche une ACL qui bloque le retour ou le service, la résolution de noms (teste d'abord par adresse IP) ou le serveur lui-même.

11.2 Pannes fréquentes

SymptômeCause probableVérification et correction
Table de traduction vide, Hits à 0ip nat inside / outside absent ou inverséshow ip nat statistics : lister les interfaces et corriger
Un seul poste sort à la foisMot-clé overload oubliéshow running-config | include nat, ajouter overload
Le siège sort, pas RennesS0/0/0 pas « inside », ou route par défaut non diffusée dans OSPFshow ip nat statistics sur R1, show ip route sur R2
Le ping répond, la page web nonPort refusé par une ACL, ou nom non résolu (DNS)Tester par adresse IP ; show access-lists et ses compteurs
L'ACL n'a aucun effetNon appliquée, mauvais sens ou mauvaise interface, règle trop large placée avantshow ip interface g0/0.30, show access-lists (matches à 0 ?)
Tout est coupé après la pose de l'ACLPas de permit final : le deny implicite refuse le resteAjouter permit ip any any en dernière ligne

11.3 Entraîne-toi : les tickets du support

Tu es de permanence au support de Brocéliande Logistique. Six tickets arrivent les uns après les autres : lis le message, observe le relevé, puis choisis la cause.

File d'attente du support6 tickets · un à la fois · l'explication s'affiche après ta réponse
Ticket n° 1De : toute l'entreprisePriorité haute
« Depuis la mise en place du NAT ce matin, plus personne ne sort sur Internet. Les routeurs se pingent entre eux. »
Cisco IOS R1 · show ip nat statistics
Total active translations: 0 (0 static, 0 dynamic; 0 extended)
Outside interfaces:
  GigabitEthernet0/0.10, GigabitEthernet0/0.20, GigabitEthernet0/0.30
Inside interfaces:
  GigabitEthernet0/1
Hits: 0  Misses: 0

Quelle est la cause ?

Cause : les sous-interfaces des VLAN sont déclarées « outside » et G0/1, qui regarde Internet, « inside ». Aucun paquet n'entre par une interface inside vers une interface outside : rien n'est traduit (Hits à 0). Correction : ip nat inside sur les sous-interfaces, ip nat outside sur G0/1, après avoir retiré les mauvaises commandes avec no ip nat outside et no ip nat inside.

Ticket n° 2De : agence de RennesPriorité haute
« Nous joignons le serveur du siège, mais impossible d'ouvrir un site Internet. Au siège, tout marche. »
Cisco IOS relevés sur R1 et R2
R1# show ip nat statistics
Outside interfaces:
  GigabitEthernet0/1
Inside interfaces:
  GigabitEthernet0/0.10, GigabitEthernet0/0.20, GigabitEthernet0/0.30,
  GigabitEthernet0/0.50, GigabitEthernet0/0.99
Hits: 214  Misses: 3

R2# show ip route | include last resort
Gateway of last resort is 10.0.0.1 to network 0.0.0.0

Quelle est la cause ?

Cause : R2 a bien sa route par défaut (le relevé le montre). Mais le trafic de Rennes entre dans R1 par S0/0/0, qui n'est pas listée parmi les interfaces inside : il est routé vers Internet sans traduction, avec une source privée que R-FAI ne sait pas joindre. Correction : interface s0/0/0 puis ip nat inside.

Ticket n° 3De : comptabilitéPriorité moyenne
« La direction navigue sans problème, mais chez nous, à la comptabilité, rien ne sort. »
Cisco IOS R1 · show running-config | include nat|access-list 1
access-list 1 permit 172.16.10.0 0.0.0.255
ip nat inside source list 1 interface GigabitEthernet0/1 overload

Quelle est la cause ?

Cause : l'ACL de traduction ne contient que le VLAN 10 : seuls ses postes sont traduits. Les autres VLAN sortent avec leur adresse privée et ne reçoivent jamais de réponse. Correction : no access-list 1, puis access-list 1 permit 172.16.0.0 0.0.255.255.

Ticket n° 4De : agence de RennesPriorité haute
« Nous joignons toujours le siège. Mais depuis hier, le NAT du siège est en place et nous n'avons toujours pas Internet. »
Cisco IOS relevés sur R1 et R2
R1# show ip route static
S*    0.0.0.0/0 [1/0] via 203.0.113.1
R1# show ip ospf neighbor
2.2.2.2   0   FULL/  -   00:00:33   10.0.0.2   Serial0/0/0

R2# show ip route
Gateway of last resort is not set
C   10.0.0.0/30 is directly connected, Serial0/0/0
O   172.16.10.0/24 [110/65] via 10.0.0.1, Serial0/0/0
C   172.16.60.0/24 is directly connected, GigabitEthernet0/0

Quelle est la cause ?

Cause : le voisinage est bien en FULL et R2 reçoit les réseaux du siège, mais « Gateway of last resort is not set » : la route par défaut de R1 est statique et OSPF ne la transmet pas tout seul. Correction : sur R1, router ospf 1 puis default-information originate. R2 affichera alors O*E2 0.0.0.0/0 via 10.0.0.1.

Ticket n° 5De : entrepôtPriorité haute
« Depuis ce matin, l'entrepôt ne joint plus rien : ni le serveur, ni Internet, ni les imprimantes. La comptabilité, elle, fonctionne. »
Cisco IOS R1 · show access-lists
Extended IP access list ENTREPOT-VERS-COMPTA
    10 deny ip 172.16.30.0 0.0.0.255 172.16.20.0 0.0.0.255 (312 matches)

Quelle est la cause ?

Cause : l'ACL ne contient qu'un deny. Tout paquet de l'entrepôt qui ne vise pas la comptabilité ne correspond à rien et tombe sur le deny implicite. Correction : ip access-list extended ENTREPOT-VERS-COMPTA puis permit ip any any (ajouté en fin de liste).

Ticket n° 6De : responsable informatiquePriorité moyenne
« J'ai posé l'ACL qui bloque l'entrepôt vers la comptabilité, mais un poste de l'entrepôt ouvre toujours les dossiers de la compta. »
Cisco IOS R1 · show access-lists
Extended IP access list ENTREPOT-VERS-COMPTA
    10 permit ip any any (947 matches)
    20 deny ip 172.16.30.0 0.0.0.255 172.16.20.0 0.0.0.255

Quelle est la cause ?

Cause : la ligne 10 laisse tout passer et la première correspondance gagne : la ligne 20 n'est jamais lue (aucune « matches »). Correction : ip access-list extended ENTREPOT-VERS-COMPTA, no 10, puis 30 permit ip any any pour que le deny passe en premier.

12. À l'examen et en entreprise

  • Documenter le NAT : l'adresse publique, la liste des réseaux traduits, les interfaces inside et outside, et les redirections de port avec leur justification. Le schéma montre l'adresse avant et après le routeur.
  • Documenter le filtrage : une matrice de flux (qui a le droit de joindre quoi, sur quel port) d'où l'on déduit chaque ACL. Chaque ACL est nommée, commentée (remark) et appliquée sur une interface précise, dans un sens précis.
  • Prouver : show ip nat translations pendant un test, show access-lists avec les compteurs, et un cahier de recette avec un test qui réussit et un test qui doit échouer.
  • Justifier : pourquoi du PAT plutôt qu'un pool, pourquoi une ACL étendue ici, pourquoi proche de la source. Le jury demande souvent ce qui se passe si l'on inverse deux lignes.
  • Connaître les limites : une ACL est sans état et le NAT ne protège pas. En entreprise, le filtrage sérieux se fait avec un pare-feu (pfSense, fiche B3-09), les ACL des routeurs servant de première barrière.

13. L'essentiel

  1. Les adresses privées (10/8, 172.16/12, 192.168/16) ne sont pas routées sur Internet : le NAT les remplace par une adresse publique.
  2. Vocabulaire : inside = ton réseau, outside = Internet ; local = vu du LAN, global = vu d'Internet.
  3. Trois types : statique (1 pour 1, fixe), dynamique (pool), PAT (plusieurs postes, une adresse, distingués par les ports).
  4. Le routeur garde une table de traduction, une ligne par connexion : c'est ce qui permet de rendre la réponse au bon poste.
  5. La redirection de port (ip nat inside source static tcp …) publie un seul service d'un serveur interne.
  6. PAT sur Cisco : ip nat inside / ip nat outside, une ACL de traduction, puis ip nat inside source list 1 interface g0/1 overload, et une route par défaut.
  7. Une ACL se lit de haut en bas : la première correspondance décide ; en fin de liste, le deny implicite refuse le reste.
  8. Wildcard = masque inversé (0 = comparé, 1 = ignoré) : 0.0.0.255 pour un /24, host pour une adresse, any pour tout.
  9. Standard (source seule) près de la destination ; étendue (source, destination, port) près de la source. ip access-group … in|out sur une interface, access-class sur les vty.
  10. On vérifie avec show ip nat translations, show ip nat statistics et show access-lists ; on teste toujours un flux refusé et un flux autorisé.
NAT + ACLtraduire · filtrer Pourquoiprivées non routées (RFC 1918)1 adresse publique pour tous Trois typesstatique · dynamique · PAT+ redirection de port La tableinside local ↔ inside globalune ligne par connexion (ports) Configurer le NATip nat inside / outsidelist … interface … overload Lire une ACLhaut en bas · 1re correspondancedeny implicite · wildcard Placerstandard : près destinationétendue : près source · in/out
La fiche en une image : à refaire de mémoire, sur une feuille, avant de passer aux exercices.

Les commandes clés

Pour…Commandes (Cisco IOS)
Marquer les interfacesip nat inside (LAN, sous-interfaces, série) · ip nat outside (G0/1)
PATaccess-list 1 permit 172.16.0.0 0.0.255.255 · ip nat inside source list 1 interface g0/1 overload
Redirection de portip nat inside source static tcp 172.16.50.20 443 203.0.113.2 443
Sortie Internetip route 0.0.0.0 0.0.0.0 203.0.113.1 · default-information originate (dans OSPF)
ACL étendue nomméeip access-list extended NOM · deny ip 172.16.30.0 0.0.0.255 172.16.20.0 0.0.0.255 · permit ip any any · ip access-group NOM in
Limiter les vtyaccess-list 10 permit 172.16.99.0 0.0.0.255 · line vty 0 4 · access-class 10 in
Vérifiershow ip nat translations · show ip nat statistics · show access-lists · clear ip nat translation *

Tout cela tient sur une page : utilise le bouton Mémo à imprimer en haut de la fiche.

La pratiqueLe quiz noté pour vérifier tes acquis, les exercices à rendre à ton professeur, puis le fil rouge Packet Tracer pour mettre en pratique.

14. Quiz noté

8 questions · 10 minutesRéponds à toutes les questions, puis valide. Seule ta première tentative est enregistrée : elle compte dans ton suivi. Ensuite, tu peux t'entraîner autant que tu veux.

1. PC-DIR (172.16.10.1) contacte SRV-PUBLIC à travers R1 en PAT. Quelle adresse source SRV-PUBLIC voit-il ?

2. Dans show ip nat translations, que contient la colonne « Inside local » ?

3. Que permet le mot-clé overload dans ip nat inside source list 1 interface g0/1 overload ?

4. Quel est l'effet de ip nat inside source static tcp 172.16.50.20 443 203.0.113.2 443 ?

5. Quel wildcard désigne tout le réseau 172.16.30.0/24 ?

6. Une ACL contient, dans cet ordre : 10 permit ip any any puis 20 deny ip 172.16.30.0 0.0.0.255 172.16.20.0 0.0.0.255. Que devient un paquet de 172.16.30.1 vers 172.16.20.1 ?

7. Où place-t-on de préférence une ACL étendue ?

8. Une ACL nommée ne contient qu'une ligne deny et est appliquée à une interface. Que devient le trafic qui ne correspond pas à cette ligne ?

15. Exercices : à toi de répondre

Écris ta réponse sous chaque énoncé et envoie-la à ton professeur. Quand il l'a validée, le corrigé s'affiche à la place du cadenas ; s'il te la renvoie « à revoir », lis son commentaire et corrige. Montre ta méthode, pas seulement le résultat.

Exercice 1 – Lire une table de traduction (SIO1)

Voici la table de R1 relevée pendant un test. R1 a une seule adresse publique, 203.0.113.2.

Cisco IOS R1 · show ip nat translations
Pro  Inside global         Inside local          Outside local         Outside global
tcp  203.0.113.2:49200     172.16.10.1:49200     198.51.100.10:80      198.51.100.10:80
tcp  203.0.113.2:1024      172.16.20.2:49200     198.51.100.10:80      198.51.100.10:80
tcp  203.0.113.2:51000     172.16.30.1:51000     198.51.100.10:443     198.51.100.10:443

1) Quel poste ouvre une connexion HTTPS ? 2) Quelle adresse source SRV-PUBLIC voit-il pour la connexion de 172.16.20.2 ? 3) Pourquoi la 2e ligne a-t-elle le port 1024 alors que le poste utilise le port 49200 ? 4) SRV-PUBLIC répond à 203.0.113.2:51000 : vers quelle adresse R1 envoie-t-il la réponse ? 5) Combien d'adresses publiques cette table consomme-t-elle ?

Le corrigé s'affichera ici dès que ton professeur aura validé ta réponse. Cherche d'abord par toi-même : c'est en se trompant qu'on retient.

Exercice 2 – Écrire des ACL (SIO1)

R1 porte déjà ENTREPOT-VERS-COMPTA en entrée de G0/0.30 (lignes 10 deny vers le VLAN 20 et 20 permit ip any any). La direction demande maintenant que le VLAN 30 ne puisse plus ouvrir de session bureau à distance (TCP 3389) sur SRV-01 (172.16.50.10), sans rien changer d'autre. Écris les commandes, en expliquant pourquoi tu ne crées pas une deuxième ACL. Puis écris celles qui limitent les connexions SSH vers R1 au seul PC-ADMIN (172.16.99.20).

Le corrigé s'affichera ici dès que ton professeur aura validé ta réponse. Cherche d'abord par toi-même : c'est en se trompant qu'on retient.

Exercice 3 – Corriger une configuration (SIO1)

Un collègue a configuré le NAT de R1, mais les postes ne sortent pas. Trouve les trois erreurs, corrige-les et dis quelle commande de vérification les aurait révélées.

Cisco IOS R1 · extrait de la configuration
interface GigabitEthernet0/0.20
 ip nat inside
interface GigabitEthernet0/0.30
 ip nat outside
interface GigabitEthernet0/1
 ip address 203.0.113.2 255.255.255.252
 ip nat outside
!
access-list 1 permit 172.16.0.0 0.0.0.255
ip nat inside source list 1 interface GigabitEthernet0/1

Le corrigé s'affichera ici dès que ton professeur aura validé ta réponse. Cherche d'abord par toi-même : c'est en se trompant qu'on retient.

Exercice 4 – Concevoir (SIO2)

Brocéliande Logistique veut publier son intranet en HTTPS (SRV-WEB, 172.16.50.20) pour les commerciaux en déplacement, avec la seule adresse publique 203.0.113.2. Le directeur technique demande aussi de filtrer l'entrée de G0/1 : seul l'HTTPS vers l'intranet doit pouvoir démarrer depuis Internet, les réponses aux connexions du réseau doivent revenir, et les adresses privées ne doivent pas être acceptées en provenance d'Internet. Propose la redirection de port et l'ACL (nom, lignes, interface, sens). Explique pourquoi l'ACL doit citer 203.0.113.2 et non 172.16.50.20, puis les limites de cette solution.

Le corrigé s'affichera ici dès que ton professeur aura validé ta réponse. Cherche d'abord par toi-même : c'est en se trompant qu'on retient.

16. Fil rouge : Internet et le filtrage de l'entrepôt

Étape 7sur 17
Fil rouge Packet Tracer · Accès Internet : NAT/PAT et ACLTu construis le réseau de Brocéliande Logistique fiche après fiche : chaque étape repart de la précédente.
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17

Tu pars de ta maquette de l'étape 6 (B2-06) : FR-06-NOM-Prenom.pkt.

Tu enregistres FR-07-NOM-Prenom.pkt, point de départ de l'étape 8 (B2-08 · Le Wi-Fi de l'entrepôt).

Où tu en es, où tu vas

Le tableau donne l'état de chaque équipement à l'entrée de l'étape (fin de l'étape 6) et ce que tu dois obtenir à la sortie. Tu n'as pas ta maquette FR-06 ? Reconstruis-la d'abord avec les fiches B2-03, B2-04 puis B2-06. Compte 45 minutes.

ÉquipementModèleÀ l'entréeÀ la sortie
R1Routeur 1941Router-on-a-stick sur G0/0 (.10 .20 .30 .50 .99) ; S0/0/0 = 10.0.0.1/30 ; OSPF processus 1, zone 0 ; G0/1 libreG0/1 = 203.0.113.2/30, ip nat outside ; route par défaut vers 203.0.113.1 ; ip nat inside sur les cinq sous-interfaces et S0/0/0 ; PAT overload sur G0/1 pour 172.16.0.0/16 ; default-information originate dans OSPF ; ACL ENTREPOT-VERS-COMPTA en entrée de G0/0.30
R-FAIRouteur 1941(n'existe pas)Opérateur fictif : G0/0 = 203.0.113.1/30 (vers R1), G0/1 = 198.51.100.1/24 (vers SRV-PUBLIC). Aucune route vers 172.16.0.0/16, volontairement
SRV-PUBLICServer-PT(n'existe pas)198.51.100.10/24, passerelle 198.51.100.1, service HTTP activé : le serveur web « Internet »
R2Routeur 1941OSPF, S0/0/0 = 10.0.0.2/30, G0/0 = 172.16.60.254/24Aucune commande à saisir : reçoit la route par défaut d'OSPF (O*E2 0.0.0.0/0)
SW1, SW2, SW3, postes, SRV-012960-24TT, PC-PT, Server-PTVLAN, Rapid PVST+, Po1, adresses des étapes 4 à 6Inchangés

Câblage ajouté à cette étape :

DePortVersPortCâble
R1G0/1R-FAIG0/0Cuivre croisé (deux routeurs)
R-FAIG0/1SRV-PUBLICFa0Cuivre croisé (routeur vers serveur)

Au labo, tu disposes des mêmes modèles en vrai : routeurs Cisco 1941, commutateurs Cisco 2960 et, pour le routage de niveau 3, commutateurs Cisco 3750. Dans Packet Tracer, choisis le 1941 et le 2960-24TT ; le 3750 n'y existe pas, on le remplace par le 3560-24PS, qui se configure de la même façon. R-FAI joue ici le rôle de l'opérateur : en vrai, c'est lui qui te fournit l'adresse publique et la passerelle.

SIÈGE · 172.16.0.0/16 PC-DIRVLAN 10 PC-COMPTAVLAN 20 PC-ENTREPOTVLAN 30 SRV-01 · VLAN 50 R1 R2 · RennesOSPF · reçoit la route par défaut S0/0/0 · 10.0.0.0/30ip nat inside R-FAI SRV-PUBLIC198.51.100.10 203.0.113.0/30198.51.100.0/24 G0/1 .2 : ip nat outside avant R1src 172.16.10.1 après R1 (PAT)src 203.0.113.2 G0/0.30 · ACL ENTREPOT-VERS-COMPTA (in)
À la sortie de l'étape : tout le monde sort par 203.0.113.2, Rennes aussi, et l'entrepôt ne joint plus la comptabilité.

Ce que tu ajoutes à cette étape

  • Un Internet fictif : R-FAI et SRV-PUBLIC, avec une adresse publique pour R1.
  • Le PAT sur G0/1 : tous les VLAN et Rennes sortent par une seule adresse.
  • La route par défaut diffusée à Rennes par OSPF.
  • Une ACL étendue : l'entrepôt (VLAN 30) ne joint plus la comptabilité (VLAN 20).

1 Repartir de l'étape précédente

Ouvre FR-06-NOM-Prenom.pkt et enregistre-la tout de suite sous FR-07-NOM-Prenom.pkt (File → Save As) : ton travail de l'étape précédente reste intact.

2 Construire l'Internet fictif

Pose un routeur 1941 et un Server-PT à droite de R1, nomme-les R-FAI et SRV-PUBLIC, puis passe les deux câbles croisés du tableau. Configure R-FAI :

Cisco IOS R-FAIl'opérateur fictif
Router(config)# hostname R-FAI
R-FAI(config)# interface g0/0
R-FAI(config-if)# description Vers R1 (client Broceliande)
R-FAI(config-if)# ip address 203.0.113.1 255.255.255.252
R-FAI(config-if)# no shutdown
R-FAI(config-if)# interface g0/1
R-FAI(config-if)# description Vers SRV-PUBLIC
R-FAI(config-if)# ip address 198.51.100.1 255.255.255.0
R-FAI(config-if)# no shutdown
R-FAI(config-if)# end
R-FAI# copy running-config startup-config

Sur SRV-PUBLIC (Desktop → IP Configuration) : adresse 198.51.100.10, masque 255.255.255.0, passerelle 198.51.100.1. Onglet Services → HTTP : service activé (On), la page d'accueil par défaut suffit.

3 Raccorder R1 et constater l'impasse

Cisco IOS R1adresse publique et route par défaut
R1(config)# interface g0/1
R1(config-if)# description Vers R-FAI (Internet)
R1(config-if)# ip address 203.0.113.2 255.255.255.252
R1(config-if)# no shutdown
R1(config-if)# exit
R1(config)# ip route 0.0.0.0 0.0.0.0 203.0.113.1
R1(config)# do ping 198.51.100.10 ! !!!!! : R1 joint SRV-PUBLIC avec sa propre adresse publique

Depuis PC-DIR, ping 198.51.100.10 : il échoue. Le paquet part avec la source 172.16.10.1 ; SRV-PUBLIC pourrait répondre, mais R-FAI ne connaît aucune route vers 172.16.0.0/16. C'est exactement le problème que le PAT va résoudre.

4 Configurer le PAT

Marque d'abord les interfaces : les cinq sous-interfaces et la liaison série vers Rennes sont « inside », G0/1 est « outside ».

Cisco IOS R1interfaces, ACL de traduction et règle
R1(config)# interface g0/1
R1(config-if)# ip nat outside
R1(config-if)# interface g0/0.10
R1(config-subif)# ip nat inside
R1(config-subif)# interface g0/0.20
R1(config-subif)# ip nat inside
R1(config-subif)# interface g0/0.30
R1(config-subif)# ip nat inside
R1(config-subif)# interface g0/0.50
R1(config-subif)# ip nat inside
R1(config-subif)# interface g0/0.99
R1(config-subif)# ip nat inside
R1(config-subif)# interface s0/0/0
R1(config-if)# ip nat inside ! sans cela, Rennes ne sort pas traduit
R1(config-if)# exit

À toi, pour finir le PAT : l'ACL numéro 1 qui désigne tout le réseau 172.16.0.0/16, puis la règle de traduction vers l'interface G0/1 avec surcharge. Vérifie chaque ligne avec ✓, ou tout d'un coup avec Vérifier.

R1(config)#
R1(config)#

Dans Packet Tracer, la commande ip nat inside source list 1 interface g0/1 overload est refusée si l'ACL 1 n'existe pas encore ou si G0/1 n'a pas d'adresse. Écris l'ACL avant la règle, et vérifie l'adresse de G0/1 avec show ip interface brief.

5 Diffuser la route par défaut à Rennes

R2 ne connaît pas Internet : sa table n'a que le siège et Rennes. Plutôt que d'écrire une route par défaut sur chaque routeur, demande à R1 de l'annoncer dans OSPF.

Complète les deux commandes sur R1 (processus OSPF 1, puis l'annonce de la route par défaut).

R1(config)#
R1(config-router)#

Après quelques secondes, show ip route sur R2 affiche O*E2 0.0.0.0/0 [110/1] via 10.0.0.1, Serial0/0/0 et la ligne « Gateway of last resort is 10.0.0.1 ». Tu n'as rien tapé sur R2.

6 Tester et observer la traduction

  1. Depuis le siège : sur PC-DIR, ping 198.51.100.10 (le premier paquet peut expirer le temps de l'ARP) puis, dans Web Browser, ouvre http://198.51.100.10 : la page de SRV-PUBLIC s'affiche.
  2. Depuis Rennes : même test sur PC-RENNES.
  3. La table : sur R1, show ip nat translations affiche l'inside global 203.0.113.2 face aux inside local 172.16.10.1 et 172.16.60.1 ; show ip nat statistics liste G0/1 en outside et les six interfaces inside.
  4. L'adresse change : passe en mode Simulation, refais le ping de PC-DIR et clique sur le paquet entre R1 et R-FAI (Outbound PDU Details) : la source est devenue 203.0.113.2.
  5. Le retour : sur R-FAI, show ip route ne contient que deux réseaux connectés ; aucune ligne 172.16.x.x. R-FAI ne connaît pas ton réseau privé.

7 Poser l'ACL de l'entrepôt

Avant de la poser, vérifie que le problème existe : ping 172.16.20.1 depuis PC-ENTREPOT répond. Puis crée l'ACL et applique-la près de la source.

Cisco IOS R1ACL étendue nommée en entrée de G0/0.30
R1(config)# ip access-list extended ENTREPOT-VERS-COMPTA
R1(config-ext-nacl)# deny ip 172.16.30.0 0.0.0.255 172.16.20.0 0.0.0.255
R1(config-ext-nacl)# permit ip any any
R1(config-ext-nacl)# exit
R1(config)# interface g0/0.30
R1(config-subif)# ip access-group ENTREPOT-VERS-COMPTA in
R1(config-subif)# end
R1# show access-lists ! les compteurs montent après tes tests
R1# copy running-config startup-config

L'ACL étant sans état, PC-COMPTA ne peut plus non plus joindre PC-ENTREPOT : la réponse du VLAN 30 serait refusée au passage. C'est attendu : vérifie-le avec le test 11 de la recette.

8 Valider l'étape : le cahier de recette

Sauvegarde d'abord : wr sur R1 et R-FAI, puis enregistre le fichier .pkt.

N°TestCommandeRésultat attenduOK
1La liaison avec l'opérateur est activeping 203.0.113.1 depuis R1Réponses reçues
2R1 a une route par défautshow ip route static sur R1S* 0.0.0.0/0 [1/0] via 203.0.113.1
3Le siège sort sur Internetping 198.51.100.10 depuis PC-DIR, puis navigateurRéponses reçues, page de SRV-PUBLIC affichée
4Les interfaces NAT sont correctesshow ip nat statistics sur R1Outside : G0/1 ; inside : G0/0.10 .20 .30 .50 .99 et Serial0/0/0
5Les adresses sont traduitesshow ip nat translations sur R1Inside global 203.0.113.2 pour des inside local 172.16.x.x
6Rennes reçoit la route par défautshow ip route ospf sur R2O*E2 0.0.0.0/0 via 10.0.0.1
7Rennes sort aussi sur Internetping 198.51.100.10 depuis PC-RENNESRéponses reçues
8L'opérateur ignore le réseau privéshow ip route sur R-FAIDeux routes C, aucune route 172.16.x.x
9L'entrepôt ne joint pas la comptabilitéping 172.16.20.1 depuis PC-ENTREPOTÉchec attendu ; compteur de la ligne 10 en hausse (show access-lists)
10L'entrepôt garde le resteping 172.16.50.10 puis ping 198.51.100.10 depuis PC-ENTREPOTRéponses reçues (serveur et Internet)
11La comptabilité ne joint pas non plus l'entrepôt (ACL sans état)ping 172.16.30.1 depuis PC-COMPTAÉchec attendu : la réponse du VLAN 30 est refusée par l'ACL
Suis ta progressionConnecte-toi pour marquer les ressources comme terminées et retrouver ton avancement.
Se connecter