⌂ Accueil 🌐 TCP/IP 1·Intro 2·Couches 3·Paquets 4·TCP/UDP 5·IP 6·Handshake 7·DNS 8·NAT 9·Ports 10·CIDR 11·Diag 12·Synthèse 13·Quiz 📖 Glossaire
🌐 Réseaux & Protocoles

NAT : partager une IP publique

Comment des millions de machines privées partagent quelques millions d'adresses publiques grâce à la translation de ports.

Intermédiaire ⏱ ~8 min 🔵 Intermédiaire 🏁 Palier 2/2 📍 Section 8/13
🎯

Objectifs de cette section

  • Comprendre le problème que résout le NAT (épuisement IPv4)
  • Distinguer NAT statique, NAT dynamique et PAT (Port Address Translation)
  • Tracer le voyage d'un paquet à travers un routeur NAT
1
Topologie NAT & table de translation

Le NAT est une technique qui permet à plusieurs appareils d'un réseau privé de partager une seule adresse IP publique. Le routeur (votre box internet) maintient une table de correspondance entre les connexions internes et les ports publics utilisés.

💻
PC
192.168.1.10
📱
Téléphone
192.168.1.11
📺
TV
192.168.1.12
📦 Box NAT
LAN: 192.168.1.1
WAN: 90.100.200.1
IP privée → → IP publique
☁️
Internet
8.8.8.8
📋 Table NAT (PAT)
IP src interne Port src IP publique Port traduit Destination État
192.168.1.10 52341 90.100.200.1 60001 8.8.8.8:443 ESTABLISHED
192.168.1.11 48920 90.100.200.1 60002 142.250.74.68:443 ESTABLISHED
192.168.1.12 53102 90.100.200.1 60003 151.101.1.69:443 ESTABLISHED
Comment ça marche : quand le PC envoie un paquet, la box remplace 192.168.1.10 par 90.100.200.1 et note « port 60001 = PC ». Quand la réponse revient sur le port 60001, la box redirige vers le PC. C'est le PAT (Port Address Translation).
2
Simulateur : tracer un paquet NAT

Sélectionnez un appareil et suivez le voyage complet d'un paquet depuis l'émission interne jusqu'à la réponse du serveur distant. Chaque étape détaille les transformations effectuées par la box NAT.

1
📤 Émission interne
Le PC envoie un paquet vers 8.8.8.8:443.
La box reçoit ce paquet sur son interface LAN.
SRC: 192.168.1.10:52341 DST: 8.8.8.8:443 → interface LAN
2
🔄 Translation sortante (SNAT)
La box remplace l'IP source privée par son IP publique.
Un port traduit unique est attribué et enregistré dans la table NAT.
AVANT: 192.168.1.10:52341 APRÈS: 90.100.200.1:60001 TABLE NAT ✓
3
🌐 Voyage sur Internet
Le paquet traverse Internet avec l'IP publique de la box.
Le serveur distant ne voit jamais l'adresse privée interne.
SRC: 90.100.200.1:60001 DST: 8.8.8.8:443 → interface WAN
4
📥 Réponse du serveur
Le serveur 8.8.8.8 répond à l'IP publique de la box.
La réponse arrive sur l'interface WAN avec le port traduit comme destination.
SRC: 8.8.8.8:443 DST: 90.100.200.1:60001 ← interface WAN
5
🔁 Translation entrante (DNAT)
La box consulte la table NAT : port 60001192.168.1.10:52341.
L'IP destination est remplacée et le paquet est transmis au PC sur le réseau interne.
AVANT: 90.100.200.1:60001 LIVRÉ: 192.168.1.10:52341 ← PC ✓
Étape 0 / 5
Limite : une IP publique ne gère que 65 535 ports simultanés. Pour de grandes structures, plusieurs IP publiques sont nécessaires. CGNAT crée un double NAT qui peut bloquer certains services P2P et VPN.
3
Les 3 types de NAT

Il existe trois variantes de NAT, chacune adaptée à un cas d'usage précis. La quasi-totalité des connexions résidentielles et professionnelles utilisent le PAT.

1-pour-1 NAT Statique Serveurs internes

Chaque adresse IP privée est mappée de façon permanente à une adresse IP publique unique. La traduction est toujours identique, dans les deux sens. Utilisé principalement pour exposer des serveurs internes sur Internet.

192.168.1.50 81.0.0.10 // serveur web interne
192.168.1.51 81.0.0.11 // serveur mail interne
192.168.1.52 81.0.0.12 // VPN endpoint
  • Traduction fixe et bidirectionnelle : Internet peut initier une connexion vers le serveur interne
  • Nécessite autant d'IPs publiques que de serveurs à exposer
  • Coûteux en IPv4 : réservé aux besoins d'accessibilité externe spécifiques
  • Exemple : hébergement web interne, accès RDP distant, serveur FTP
Pool d'IPs NAT Dynamique Entreprises

Un pool d'adresses IP publiques est défini. Chaque connexion sortante se voit attribuer dynamiquement une IP publique disponible du pool. L'attribution n'est pas permanente.

// Pool public disponible
pool: 81.0.0.10 - 81.0.0.20
192.168.1.10 81.0.0.14 // attribué dynamiquement
192.168.1.11 81.0.0.15 // autre IP du pool
  • Plus flexible que le statique : les IPs sont réutilisées quand les sessions se terminent
  • Limite stricte : pas plus de connexions simultanées que d'IPs dans le pool
  • Si le pool est épuisé, les nouvelles connexions sont rejetées
  • Moins courant aujourd'hui : généralement remplacé par PAT
1 IP → N ports PAT / NAT Overload Le plus courant

Une seule IP publique supporte des milliers de connexions simultanées grâce à la différenciation par numéro de port. C'est ce que fait votre box internet. C'est aussi ce que fait CGNAT chez votre opérateur.

// Toutes les machines, une seule IP publique
192.168.1.10:52341 90.100.200.1:60001
192.168.1.11:48920 90.100.200.1:60002
192.168.1.12:53102 90.100.200.1:60003
// Jusqu'à 65 535 connexions par IP publique
  • Une seule IP publique suffit pour tout un réseau : économie maximale d'IPv4
  • Le port traduit est l'identifiant unique de chaque session
  • Maximum théorique : 65 535 connexions simultanées par IP publique
  • C'est ce que fait votre box, votre routeur d'entreprise, et CGNAT chez les FAI
NAT STATIQUE
🏢
1 IP privée
= 1 IP publique
NAT DYNAMIQUE
🔄
N IPs privées
= pool d'IPs publiques
PAT / OVERLOAD
N IPs privées
= 1 IP + N ports
4
Hairpin NAT & problèmes courants

Le NAT introduit des cas limites qui peuvent surprendre les administrateurs réseau. Deux situations méritent une attention particulière : le hairpin NAT et le CGNAT.

🔄 Hairpin NAT (NAT loopback)

Quand un appareil interne tente d'accéder à un serveur interne en utilisant son IP publique (ex: depuis le LAN, accès à monserveur.com qui pointe vers 90.100.200.1).

Certaines box gèrent ce cas automatiquement (hairpin actif). D'autres rejettent la connexion car le paquet revient d'où il vient. Problème classique en homelab.

💡 Solution : DNS split-brain : résoudre monserveur.com vers l'IP privée en interne, vers l'IP publique en externe.
🏭 CGNAT (Carrier-Grade NAT)

Les FAI eux-mêmes font du NAT sur leurs abonnés. Votre box NAT, puis le réseau de l'opérateur NAT encore. C'est le double NAT. Les adresses CGNAT utilisent la plage 100.64.0.0/10 (RFC 6598).

⚠️ Héberger un serveur : impossible sans port forwarding explicite
⚠️ P2P (torrents, jeux) : connexions directes cassées
⚠️ Certains VPN (IPsec NAT-T) : complications
⚠️ IP publique partagée avec d'autres abonnés
💡 Solution : demander une IP fixe à votre FAI, ou utiliser IPv6.
🗺️ Vue d'ensemble : où se situe chaque NAT ?
💻 192.168.1.10 [Box NAT: 192.168.1.1 / 100.64.x.x] [CGNAT FAI: 100.64.x.x / 90.100.200.1] ☁️ Internet
                  ↑ NAT résidentiel            ↑ CGNAT opérateur (RFC 6598)
5
Les limites du NAT

Le NAT est un compromis pragmatique face à l'épuisement IPv4. Il résout le problème des adresses mais introduit des contraintes fondamentales sur l'architecture réseau.

🔢
65 535 ports par IP publique, c'est le maximum théorique de connexions simultanées pour une IP publique unique. Les ports 0–1023 sont réservés (well-known), les ports 1024–65535 sont utilisables pour NAT.
🏗️
Les grandes structures utilisent plusieurs IPs publiques : opérateurs, datacenters et clouds disposent de blocs d'adresses publiques (/24, /16…) et répartissent les sessions sur plusieurs IPs pour dépasser la limite des 65K ports.
🚫
NAT casse le modèle end-to-end d'Internet, il est impossible d'initier une connexion depuis Internet vers un appareil NATé sans configuration préalable (port forwarding, UPnP, STUN/TURN). Les protocoles qui embarquent des IPs dans leurs données (FTP actif, SIP) nécessitent des ALG (Application Layer Gateway).
🌍
Solution long terme : IPv6 : avec 340 undécillions d'adresses disponibles, chaque appareil peut avoir une IP publique globale unique. Le NAT devient optionnel. La transition est en cours mais lente (legacy IPv4 encore dominant).
❌ IPv4 + NAT
  • ~4,3 milliards d'adresses au total
  • Épuisé depuis 2011 (IANA)
  • NAT obligatoire pour partager
  • Connexions entrantes bloquées
✅ IPv6 (solution)
  • 340 undécillions d'adresses
  • Une IP publique par appareil
  • NAT optionnel (NPTv6)
  • Modèle end-to-end restauré
Bon à savoir : les plages d'adresses privées (RFC 1918) sont 10.0.0.0/8, 172.16.0.0/12 et 192.168.0.0/16. Ces adresses ne sont jamais routées sur Internet, elles nécessitent obligatoirement un NAT pour accéder au réseau public.

Voir aussi

5
Exercice : Construire une table NAT

Un routeur NAT gère la correspondance entre les connexions internes et l'adresse publique. Complétez les entrées manquantes de la table PAT ci-dessous.

IP Privée : Port
IP Publique : Port NAT
Destination
Protocole
État
Rappel : En PAT, le routeur remplace l'IP privée + port source par son IP publique + un port NAT unique (1024–65535). La destination reste inchangée.