NAT (Network Address Translation)
Le NAT est un mécanisme réseau qui traduit les adresses IP (et parfois les ports) lors du passage d’un paquet d’un réseau à un autre. Il permet à des machines avec des adresses IP privées de communiquer avec Internet via une adresse IP publique partagée.
Problème résolu par le NAT
Les adresses IPv4 privées (RFC 1918) ne sont pas routables sur Internet :
| Plage privée | Taille |
|---|---|
10.0.0.0/8 | 16 millions d’adresses |
172.16.0.0/12 | 1 million d’adresses |
192.168.0.0/16 | 65 000 adresses |
Sans NAT, ces machines seraient isolées d’Internet. Le NAT fait office de traducteur entre le réseau privé et le monde extérieur.
Types de NAT
| Type | Description | Usage typique |
|---|---|---|
| NAT Statique (1:1) | Une adresse privée ↔ une adresse publique fixe | Serveurs exposés sur Internet (web, mail) |
| NAT Dynamique | Pool d’adresses publiques attribuées dynamiquement à la demande | Entreprises avec plusieurs IPs publiques |
| PAT / NAT Overload | Plusieurs adresses privées → 1 adresse publique, différenciées par le port source | Résidences, PME, cloud (le plus courant) |
Comment fonctionne le PAT (le cas le plus courant)
- La machine
192.168.1.10:5000envoie une requête vers8.8.8.8:53. - Le routeur NAT traduit la source :
192.168.1.10:5000→203.0.113.1:10500(IP publique + port unique alloué). - Il mémorise la correspondance dans sa table NAT (connexion suivie).
- La réponse arrive sur
203.0.113.1:10500→ le routeur retraduit vers192.168.1.10:5000.
Le trafic initié depuis l’extérieur vers une IP privée est bloqué par défaut (pas d’entrée dans la table NAT) — c’est un effet de sécurité secondaire du NAT.
NAT dans le cloud AWS
| Composant | Rôle | Direction | Sous-réseau |
|---|---|---|---|
| NAT Gateway | Permet aux instances privées d’accéder à Internet | Sortant uniquement (privé → Internet) | Déployé dans le subnet public |
| NAT Instance | EC2 configurée comme NAT (legacy) | Sortant uniquement | Subnet public, géré manuellement |
| Internet Gateway (IGW) | Accès Internet bidirectionnel | Entrant + Sortant | Subnet public uniquement |
Règle : un subnet privé → route
0.0.0.0/0vers le NAT Gateway.
Un subnet public → route0.0.0.0/0vers l’IGW.
Exemple de configuration AWS
[Subnet privé 10.0.2.0/24]
→ Table de routage : 0.0.0.0/0 → nat-0abc123 (NAT Gateway dans subnet public)
[Subnet public 10.0.1.0/24]
→ Table de routage : 0.0.0.0/0 → igw-0xyz456 (Internet Gateway)
→ NAT Gateway déployé ici avec Elastic IP
En relation avec
- Internet Gateway (IGW) — le NAT Gateway sort sur Internet via l’IGW ; ils sont complémentaires
- Table de Routage — la route
0.0.0.0/0 → nat-gateway-iddans le subnet privé active le NAT - Forward Proxy vs NAT — comparaison détaillée entre ces deux mécanismes de masquage d’IP