Plus facile à lire avec un fond crème, une teinte, plus de contraste ou un texte plus grand ? Choisissez vos couleurs et votre texte, une fois pour toutes les pages.

Leçon gratuite

Connecter un bureau à internet avec le NAT

Après cette leçon: Je peux connecter un petit bureau à internet en gardant ses appareils à l’abri.

Leçon de 45 min5 commandesLab de passerelle NAT : masquerade et redirection de port avec nftables dans le navigateur

Comment plusieurs appareils partagent une adresse internet

Chez toi, dix appareils vont sur internet, mais ton fournisseur ne t’a donné qu’une seule adresse publique. Le NAT (Network Address Translation) fait le partage.

La box remplace l’adresse privée de chaque appareil par l’adresse publique, et rend chaque réponse au bon appareil.

À la fin, tu sauras connecter un petit bureau à internet et ouvrir un seul port.

À la fin de cette leçon

Remarque

Je peux connecter un petit bureau à internet en gardant ses appareils à l’abri.

Mots clés

MotCe que ça veut dire
NATle remplacement d’une adresse privée par une adresse publique, sur chaque paquet qui sort
Passerellel’appareil entre le réseau du bureau et internet
Portun numéro qui dit à quel programme un message est destiné
Redirection de portune règle qui envoie un port extérieur vers un seul appareil intérieur
Pare-feules règles qui disent ce qui a le droit de passer
Table NATla mémoire de la passerelle : qui a demandé quoi

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

Une adresse privée ne reçoit pas de réponse

Les adresses privées sont les mêmes dans des millions de maisons et de bureaux. Aucun routeur d’internet ne sait où est la tienne.

Une demande partie de ton ordinateur peut atteindre un site. Mais la réponse ne sait pas revenir. C’est le travail du NAT.

Découvre les trois machines

Commande
netlab status

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

Demande une page depuis l’intérieur

Commande
sudo ip netns exec lan curl --noproxy '*' -sS -m 3 http://203.0.113.2:8000/

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

Demande la même page depuis la passerelle

Commande
sudo ip netns exec gw curl --noproxy '*' -sS -m 3 http://203.0.113.2:8000/

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

Une demande reçoit une réponse, l’autre pas

L’état montre gw avec deux adresses, 10.0.0.1 à l’intérieur et 203.0.113.1 à l’extérieur. La machine interne lan est 10.0.0.2.

Depuis lan, curl attend trois secondes puis affiche Connection timed out. Depuis gw, la page arrive tout de suite : outside-server: you are 203.0.113.1.

La passerelle remplace l’adresse et garde une note

Pour chaque paquet qui sort, la passerelle met sa propre adresse publique à la place de l’adresse privée. Elle note l’échange dans sa table.

Quand la réponse revient, elle lit la table et rend le paquet au bon appareil. Si deux appareils utilisent le même port, elle en change un.

Exemple travaillé : un bureau de trois ordinateurs

AppareilPart avecSort avec
Comptabilité192.168.1.10 port 41000198.51.100.7 port 41000
Accueil192.168.1.11 port 41000198.51.100.7 port 41001
Imprimante192.168.1.50 port 9100198.51.100.7 port 9100

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

Lis la mémoire de la passerelle

Commande
sudo ip netns exec gw conntrack -L

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

La passerelle suit chaque connexion

Chaque ligne est une connexion. Celle de lan montre UNREPLIED : aucune réponse n’est revenue. Celle de gw montre ASSURED : elle a eu sa réponse.

Une ligne dure environ deux minutes. C’est cette mémoire qui permet de rendre chaque réponse au bon appareil.

Une redirection ouvre un seul port vers l’intérieur

Le NAT marche pour ce qui part de l’intérieur. Une demande venue de dehors ne trouve aucune ligne dans la table : elle est jetée.

Pour montrer un site du bureau, tu ajoutes une redirection de port : le port extérieur 8080 va vers un seul serveur. Tout le reste reste fermé.

Lis les règles du pare-feu de la passerelle

Commande
sudo ip netns exec gw nft list ruleset

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

Une erreur fréquente

Attention

Beaucoup pensent que le NAT est un pare-feu. Il remplace seulement des adresses. Ce sont les règles du pare-feu qui décident ce qui entre. Ici, la règle policy drop de la chaîne forward jette ce qui vient de dehors. N’ouvre que les ports dont tu as besoin.

À propos de ce labo et de sa source: Lab de passerelle NAT : masquerade et redirection de port avec nftables dans le navigateur

Vous enseignez à une classe ? Proposez ce module à vos étudiants avec un guide de l'enseignant, des devoirs corrigés et un laboratoire pour chaque étudiant.