CodeGym /Cours /Docker SELF /Configuration des routes : commandes `ip route`, `ne...

Configuration des routes : commandes `ip route`, `netstat`, `ss`

Docker SELF
Niveau 4 , Leçon 1
Disponible

Configuration des routes : commandes ip route, netstat, ss

1. Concept de routage

Aujourd'hui, on plonge encore plus profond : on va configurer des routes, analyser des connexions réseau et gérer les ports. C'est ici que commence la vraie magie de l'administration réseau – on va comprendre où et comment circulent les paquets, et pourquoi c'est important d'être "celui qui contrôle les routes".

Le routage, ce n'est pas juste un truc qui a l'air complexe, c'est la base des bases du réseau moderne. Imagine : ton ordinateur – c'est un touriste qui veut aller vers un autre ordinateur (un hôtel), et les routes – ce sont les chemins et les panneaux de direction. S'il n'y a pas de routes, le touriste va se perdre, demander son chemin aux passants (les passants pourraient être des serveurs DNS, mais on n'en parle pas maintenant) ou même rester chez lui.

Pourquoi a-t-on besoin de routes

Chaque appareil sur le réseau a besoin de savoir comment atteindre les autres appareils. Par exemple, si ton ordinateur veut envoyer une requête au site example.com, il doit savoir :

  1. Où envoyer les paquets.
  2. Par quelle passerelle ou quelle interface le faire.

Il existe deux types de routes :

  • Routes locales : des indications pour les appareils de ton sous-réseau (par exemple, ton ordinateur et ton imprimante).
  • Routes externes : des indications pour les appareils en dehors de ton sous-réseau (par exemple, pour une ressource sur internet).

2. Table de routage

Une table de routage, c'est une table avec des règles qui définissent où envoyer les paquets en fonction des adresses IP. C'est comme Google Maps pour ton ordi : "Si tu veux aller là-bas, passe par ce gateway".

Essaie d'afficher ta table de routage :

ip route show

Exemple de sortie :

default via 192.168.1.1 dev eth0 proto dhcp metric 100
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.100 metric 100

Qu'est-ce que ça signifie :

  • default via 192.168.1.1: si un paquet n'a pas de destination précise, envoie-le via le gateway avec l'adresse 192.168.1.1.
  • dev eth0: on utilise l'interface eth0.
  • 192.168.1.0/24: c'est la route pour tout le sous-réseau 192.168.1.0/24. Les paquets restent "chez eux" dans le réseau local.
  • proto et metric – paramètres supplémentaires, on en parle un peu plus tard.

3. Commande ip route

Voir les routes

Pour visualiser la table de routage, on a déjà utilisé ip route show. Tu peux ajouter des filtres, par exemple, pour identifier une route uniquement pour le réseau local :

ip route show match 192.168.1.0/24

Ajouter des routes

Tu peux ajouter une route statique – c’est comme poser toi-même un panneau de signalisation. Par exemple, pour rediriger toutes les requêtes vers le sous-réseau 10.0.0.0/24 via une certaine passerelle :

sudo ip route add 10.0.0.0/24 via 192.168.1.1 dev eth0

Détaillons :

  • 10.0.0.0/24 – le sous-réseau de destination.
  • via 192.168.1.1 – la passerelle par laquelle les paquets sont envoyés.
  • dev eth0 – l’interface par laquelle les paquets sortent.

Supprimer des routes

Si tu ne veux plus qu’une route existe, supprime-la avec la commande :

sudo ip route del 10.0.0.0/24

4. Pratique : Configurer une route statique

  1. Assurez-vous que vous avez accès à un autre sous-réseau.
  2. Ajoutez une route :
sudo ip route add 192.168.2.0/24 via 192.168.1.1 dev eth0
  1. Vérifiez la table de routage :
ip route show
  1. Supprimez la route si elle n'est plus nécessaire.

5. La commande netstat

Quand il s'agit d'analyser les connexions courantes, netstat – c'est un vieil ami fidèle de l'admin système (bien qu'il existe déjà une alternative plus moderne – ss, dont on parlera plus tard).

Vérification des connexions actives

netstat -tun

Ce que ça signifie :

  • -t – afficher les connexions TCP.
  • -u – afficher les connexions UDP.
  • -n – utiliser les adresses numériques (au lieu des noms d'hôtes).

Exemple de sortie :

Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 192.168.1.100:22        192.168.1.50:50240      ESTABLISHED

Ce que ça signifie :

  • L'adresse locale 192.168.1.100:22 – c'est votre ordinateur qui écoute sur le port 22 (SSH).
  • L'adresse distante 192.168.1.50:50240 – c'est l'hôte distant connecté à votre port.
  • ESTABLISHED – c'est une connexion active, des données sont en cours de transmission.

Les ports en écoute

Pour voir quels ports "écoutent" sur votre ordinateur :

netstat -ltn

Le flag -l affiche uniquement les ports en écoute, et les options -t et -n ont été déjà discutées.


6. Commande ss

Si netstat est un dinosaure, alors ss est une machine DeLorean du futur : ça fonctionne plus vite et ça donne plus d’infos.

Vérification des connexions actives

ss -tun

L'exemple de sortie est similaire à netstat, mais avec plus de vitesse et de détails.

Ports en écoute

ss -tln

Pareil que pour netstat, mais c'est plus pratique et moderne avec ss.


7. Surveillance des connexions

  1. Utilisez netstat ou ss pour voir quels ports sont écoutés par votre ordinateur.
  2. Ouvrez une connexion SSH sur un autre appareil et vérifiez si elle apparaît dans la liste des connexions.
  3. Essayez d'interpréter la sortie des commandes.

On est plongés dans le monde du routage et de la surveillance des connexions : maintenant, vous pouvez utiliser ip route pour gérer la table des routes et netstat/ss pour analyser les connexions réseau. Ces outils sont votre couteau suisse pour résoudre les problèmes réseau les plus compliqués. Un copain se plaint que "internet ne marche pas" ? Ressortez vos nouvelles compétences et montrez vos talents !

Dans la prochaine conférence, ce sera encore plus cool : on plongera dans le DNS et sa magie. Mais en attendant, entraînez-vous avec ip route et voyez comment les paquets trouvent leur chemin jusqu'à la maison.

Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION