19.9. Correction d'un comportement de routage inattendu dû à la présence de plusieurs passerelles par défaut
Il n'y a que quelques scénarios, tels que l'utilisation de TCP multipath, dans lesquels vous avez besoin de plusieurs passerelles par défaut sur un hôte. Dans la plupart des cas, vous ne configurez qu'une seule passerelle par défaut afin d'éviter un comportement de routage inattendu ou des problèmes de routage asynchrone.
Pour acheminer le trafic vers différents fournisseurs d'accès à Internet, utilisez le routage basé sur des règles plutôt que plusieurs passerelles par défaut.
Conditions préalables
- L'hôte utilise NetworkManager pour gérer les connexions réseau, ce qui est la valeur par défaut.
- L'hôte possède plusieurs interfaces réseau.
- Plusieurs passerelles par défaut sont configurées sur l'hôte.
Procédure
Afficher la table de routage :
Pour IPv4, entrez :
# ip -4 route default via 192.0.2.1 dev enp1s0 proto static metric 101 default via 198.51.100.1 dev enp7s0 proto static metric 102 ...
Pour IPv6, entrez :
# ip -6 route default via 2001:db8:1::1 dev enp1s0 proto static metric 101 pref medium default via 2001:db8:2::1 dev enp7s0 proto static metric 102 pref medium ...
Les entrées commençant par
default
indiquent une route par défaut. Notez les noms d'interface de ces entrées affichés à côté dedev
.Utilisez les commandes suivantes pour afficher les connexions NetworkManager qui utilisent les interfaces identifiées à l'étape précédente :
# nmcli -f GENERAL.CONNECTION,IP4.GATEWAY,IP6.GATEWAY device show enp1s0 GENERAL.CONNECTION: Corporate-LAN IP4.GATEWAY: 192.168.122.1 IP6.GATEWAY: 2001:db8:1::1 # nmcli -f GENERAL.CONNECTION,IP4.GATEWAY,IP6.GATEWAY device show enp7s0 GENERAL.CONNECTION: Internet-Provider IP4.GATEWAY: 198.51.100.1 IP6.GATEWAY: 2001:db8:2::1
Dans ces exemples, les profils nommés
Corporate-LAN
etInternet-Provider
ont les passerelles par défaut définies. Étant donné que, dans un réseau local, la passerelle par défaut est généralement l'hôte le plus proche d'Internet, le reste de cette procédure suppose que les passerelles par défaut de l'adresseCorporate-LAN
sont incorrectes.Configurez NetworkManager pour qu'il n'utilise pas la connexion
Corporate-LAN
comme route par défaut pour les connexions IPv4 et IPv6 :# nmcli connection modify Corporate-LAN ipv4.never-default yes ipv6.never-default yes
Notez que le fait de définir
ipv4.never-default
etipv6.never-default
suryes
, supprime automatiquement du profil de connexion l'adresse IP de la passerelle par défaut pour le protocole correspondant.Activez la connexion
Corporate-LAN
:# nmcli connection up Corporate-LAN
Vérification
Affichez les tables de routage IPv4 et IPv6 et vérifiez qu'une seule passerelle par défaut est disponible pour chaque protocole :
Pour IPv4, entrez :
# ip -4 route default via 192.0.2.1 dev enp1s0 proto static metric 101 ...
Pour IPv6, entrez :
# ip -6 route default via 2001:db8:1::1 dev enp1s0 proto static metric 101 pref medium ...