Bienvenue sur Racstore

Site de Tuto - Mémo informatique

Routage: route statique et route par défaut

Quelques exemples pour mieux comprendre le mécanisme de routage.

Pour ces exemples, on a un routeur sous linux dans une configuration très basique, ROUTEUR LINUX avec 3 interfaces réseaux Enp5s0, enp5s1 et enp4s0 installées et 2 machines clientes, PC WINDOWS et PC LINUX. .

Les 3 interfaces, enp5s0, enp5s1 et enp4s0 du routeur sont configurées manuellement (ip fixe) dans le fichier interface (/etc/network/interface).

L’IP de interface enp5s0 sera en plus fixé dans la configuration dhcp de la routeur box internet, pour éviter un changement de l’IP après un nouveau bail .

Dans un premier temps, le routage ne sera pas activé (par défaut) sur le routeur Linux.

N.B :
Pour cette démonstration, les passerelles ne seront pas configurées de façon permanente dans la configuration réseaux des machines clientes ("fichier interface" et "paramètres réseau et internet") ..

Routage statique/défaut
Routage

Route statique sous Linux

Visualisons, la table de routage du PC LINUX avec la commande ip route.

Routage statique/défaut
ip route

On voit qu’il est directement connecté à l’interfaces enp5s1 du pc ROUTEUR LINUX, et qu'il n’a aucun chemin pour accéder au réseau 10.0.0.0 et 192.168.1.0
On va lui donner, dans un premier temps, un chemin pour qu’il accède au réseau 192.168.1.0

ip route add 192.168.1.0/24 via 172.16.1.50 dev enp3s0
Un ping de l’interface 192.168.1.50 permet de constater qu'il arrive bien à joindre le réseau 192.168.1.0
ip route add 192.168.1.0/24 via 172.16.1.60 dev enp3s0,
permet aussi de à la machine d’accéder au réseau 192.168.1.0, mais en passant cette fois ci, par sa propre interface de sortie .
La capture ci-dessous, permet de voir qu’une nouvelle entrée a été ajoutée à la table de routage.

Routage statique/défaut
ip route add

On va également donner un autre chemin à ce pc pour qu’il accède au réseau 10.0.0.0 en passant par l’adresse ip du routeur dont il est directement connecté.

ip route add 10.0.0.0/8 via 172.16.1.50 dev enp3s0

Route statique sous Windows

Routage statique/défaut
Table de routage windows

D’après la table de routage ci-dessus, on voit que PC WINDOWS est directement connecté au réseau 10.0.0.0.
Un ping à partir de ce pc de l’interface réseau enp4s0 du routeur permet de voir qu’il arrive bien à communiquer avec le routeur. Mais si on essais de communiquer avec les interfaces réseaux enp5s0 et enp5s1 de ce même routeur, on s’aperçoit que la communication n’est pas possible.
On peut donc en conclure, que ce pc, ne connais pas les chemins pour accéder à ces réseaux

Routes statiques pour accéder au réseau 192.168.1.0 et 172.16.1.0

route add 172.16.0.0 mask 255.255.0 .0 10.0.0.10
OU
route add 172.16.0.0 mask 255.255.0.0 10.0.0.50
route add 192.168.1.0 mask 255.255.0 .0 10.0.0.10 
OU
route add 192.168.1.0 mask 255.255.0.0 10.0.0.50
Routage statique/défaut
Table de routage windows
On voit que les réseaux 192.168.1.0 et 172.16.1.0 ont bien été ajoutés dans la table de routage du PC WINDOWS.
Un ping de ces interfaces, (enp5s0 et enp5s1), permet de voir qu’elles sont bien accessibles.
Pour supprimer ce chemin,
route delete 172.16.0.0 mask 255.255.0.0

Communication entre pc clients de réseaux différents

Si on essaie de faire communiquer (ping) le client PC WINDOWS et le client PC LINUX, on constate que la communication est impossible.
Or, les chemins qui permettent à ces pc d’accéder à ces différents réseaux ont bien été ajoutés à leurs tables de routage.
Le problème vient du fait que le routage n’a pas été activé sur le ROUTEUR LINUX.

NB :
Pour faire transiter des paquets entre différents réseaux locaux (classes réseaux différentes), un mécanisme doit être mis en place.
Ici pour cette démonstration, c’est l’activation de la commande du routage dans le noyau du ROUTEUR LINUX.

La commande,
echo 1 > /proc/sys/net/ipv4/ip_forward,
permet activer le routage sur le ROUTEUR LINUX.

Route par défaut - Ecriture simplifié des routes

On a vu que pour faire communiquer les différents pc clients entre eux, on leurs donnent des chemins, ou plus précisément, des ROUTES STATIQUES pour accéder aux différents réseaux.

Route statique pour le client PC WINDOWS :

route add 172.16.0.0 mask 255.255.0 .0 10.0.0.10 
OU
route add 172.16.0.0 mask 255.255.0.0 10.0.0.50
route add 192.168.1.0 mask 255.255.0 .0 10.0.0.10 
OU
route add 192.168.1.0 mask 255.255.0.0 10.0.0.50

Route statique pour le client PC LINUX :

ip route add 192.168.1.0/24 via 172.16.1.50 dev enp3s0
OU
ip route add 192.168.1.0/24 via 172.16.1.60 dev enp3s0
p route add 10.0.0.0/8 via 172.16.1.50 dev enp3s0
OU
ip route add 10.0.0.0/8 via 172.16.1.60 dev enp3s0
On constate que, quelle que soit la destination, (réseau qui n’est pas directement connecté), on passe toujours par la même interface.
10.0.0.50 ou 10.0.0.10 pour le pc client PC WINDOWS et 172.16.1.60 ou 172.16.1.50 pour le client PC LINUX

Supprimer ces routes statiques dans un premier temps

Suppression des routes statiques sous Windows

route delete 172.16.0.0 mask 255.255.0.0
route delete 192.168.1.0

Suppression des routes statiques sous Linux

ip route delete 10.0.0.0
ip route del 192.168.1.0

et simplifions l'écriture

Route par défaut sous Windows

route add 0.0.0.0 mask 0.0.0.0 10.0.0.10
(ne permet pas de communiquer vers un pc d'un autre réseau).
route add 0.0.0.0 mask 0.0.0.0 10.0.0.50  -p
(le p pour persistant).
route add 0.0.0.0 mask 0.0.0.0 192.168.1.254 -p
(permet de sortir du réseau local, en passant par l'interface de la BOX INTERNET).
Le 0.0.0.0 signifie, n’importe quelle destination ou toute autre destination qu’on ne connait pas.

Chemin par défaut pour le PC LINUX

ip route add default via 172.16.1.50

RCA @ Publié, le 15 mai 2020 / Modifié, le 03 Oct 2020