Commande route Linux
1. Aperçu de la commande route
La commande route est un outil puissant dans les systèmes Linux pour afficher et manipuler la table de routage IP. En tant que commande de base pour la configuration réseau, elle permet aux administrateurs de :
- Afficher les informations actuelles de la table de routage
- Ajouter/supprimer des routes statiques
- Modifier les règles de routage existantes
- Gérer le chemin de transmission des paquets réseau
Syntaxe de base
route [选项] [操作] [目标] [命令参数]
2. Concepts de base de la table de routage
1. Qu'est-ce qu'une table de routage
La table de routage est une structure de données maintenue par le noyau du système d'exploitation qui détermine comment les paquets réseau sont transmis de l'adresse source à l'adresse de destination. On peut la comparer à :
"Un système de navigation du trafic urbain : lorsque vous voulez vous rendre à une destination, le système vous indique quelle route prendre est la plus rapide et la plus efficace"
2. Champs clés de la table de routage
Viaroute -nLors de l'affichage de la table de routage, les colonnes importantes suivantes sont affichées :
| Nom de colonne | Description | Valeur d'exemple |
|---|---|---|
| Destination | Réseau ou hôte de destination | 192.168.1.0 |
| Passerelle | Passerelle du saut suivant | 192.168.1.1 |
| Genmask | Masque réseau | 255.255.255.0 |
| Indicateurs | Indicateurs de route | U (route activée) |
| Métrique | Coût de la route | 0 |
| Iface | Interface sortante | eth0 |
3. Opérations courantes de la commande route
1. Afficher la table de routage
Exemple
route -n
# Exemple de sortie :
Table de routage IP du noyau
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
2. Ajouter une route
Exemple
route add -host 192.168.1.100 dev eth0
# Ajouter une route vers un réseau
route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.1.1
# Ajouter une passerelle par défaut
route add default gw 192.168.1.1
3. Supprimer une route
Exemple
route del -net 192.168.2.0 netmask 255.255.255.0
# Supprimer la passerelle par défaut
route del default gw 192.168.1.1
4. Explication détaillée des options de commande
La commande route prend en charge les options courantes suivantes :
| Option | Description |
|---|---|
| -n | Afficher les adresses sous forme numérique (ne pas résoudre les noms d’hôtes) |
| -e | Afficher la table de routage au format netstat |
| -v | Afficher des informations détaillées sur l'opération |
| -A famille | Spécifier la famille d’adresses (inet, inet6, etc.) |
| -F | Afficher la table de routage FIB du noyau |
| -C | Afficher le cache de routes |
Paramètres de commande spéciaux :
add: Ajouter une routedel: Supprimer une route-host: L’opération cible un hôte spécifique-net: L’opération cible un réseau entiergw: Spécifier la passerelledev: Spécifiez l'interface réseau
5. Scénarios d'application pratiques
Scénario 1 : Configuration de route multi-NIC
Lorsqu'un serveur dispose de plusieurs interfaces réseau, vous devez spécifier l'interface de sortie pour différents réseaux :
Exemple
route add -net 10.0.0.0 netmask 255.255.255.0 dev eth1
Scénario 2 : Paramètres de route VPN
Après vous être connecté à un VPN, vous devez ajouter des routes spécifiques :
Exemple
route add -net 172.16.0.0 netmask 255.240.0.0 dev tun0
Scénario 3 : Test de route temporaire
Exemple
route add -host 8.8.8.8 gw 192.168.1.254
ping 8.8.8.8 # Vérifier si la route est effective
route del -host 8.8.8.8 # Supprimer une fois le test terminé
6. Configuration persistante des routes
Les routes ajoutées via la commande route seront perdues après un redémarrage. Pour qu'elles prennent effet de façon permanente :
1. Systèmes Debian/Ubuntu
Édition/etc/network/interfaces:
Exemple
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
up route add -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.1.2
2. Systèmes RHEL/CentOS
Créer un fichier de configuration de route/etc/sysconfig/network-scripts/route-eth0:
10.0.0.0/8 via 192.168.1.2
7. Dépannage des problèmes courants
1. Étapes à vérifier lorsqu'une route n'est pas effective

2. Résolution des erreurs typiques
Erreur 1:"SIOCADDRT: Network is unreachable"
- Cause : La passerelle ne se trouve pas dans le domaine de diffusion directe du réseau local
- Solution : Assurez-vous d'abord que vous pouvez ping l'adresse de la passerelle
Erreur 2:"RTNETLINK answers: File exists"
- Cause : Tentative d'ajout d'une route déjà existante
- Solution : Supprimez d'abord l'ancienne route, puis ajoutez-la, ou utilisez la
replaceoption
8. Commande alternative : ip route
Les systèmes Linux modernes recommandent d'utiliser laip routecommande :
Exemple
ip route show
# Ajouter une route
ip route add 10.0.0.0/8 via 192.168.1.2
# Supprimer une route
ip route del 10.0.0.0/8
Bien queip routeest plus puissante, mais laroutecommande reste encore largement utilisée car elle est simple et intuitive.
Grâce à ce guide, vous devriez avoir maîtrisé l'utilisation essentielle de la commande route. Il est recommandé de pratiquer davantage ces commandes dans un environnement réel et d'observer l'impact des modifications de route sur les connexions réseau. Lorsque vous rencontrez des problèmes de routage complexes, vous pouvez les combiner avectracerouteetpinget d'autres outils pour un diagnostic complet.
Référence des commandes Linux