GNU/Linux >> Tutoriels Linux >  >> Linux

Modification de l'entrée de route existante sous Linux

(Combinant divers commentaires en une réponse)

Actuellement, il n'est pas possible de modifier la métrique d'une route. Comme l'indique un message de 2005 sur LKML :

[...] La métrique/priorité ne peut pas être modifiée car nous n'avons pas de champs séparés pour les champs à faire correspondre et les nouvelles valeurs, donc si vous spécifiez une métrique, l'entrée ne sera tout simplement pas trouvée et la demande échoue avec ENOENT car NLM_F_CREATE n'est pas spécifié. C'est une limitation du protocole actuel et il serait peut-être judicieux de changer cela, cependant ce n'est pas anodin [...]

Cela semble s'appliquer à la fois à ip route change et ip route replace - le premier entraîne une erreur pour moi, tandis que le second crée une route supplémentaire comme annoncé (sa page de manuel indique que replace remplacera ou créer un itinéraire). Ceci est cohérent avec le noyau répondant avec ENOENT, et ip route replace suivi d'une demande de création de route.

La solution consiste donc à supprimer l'itinéraire existant et à en ajouter un nouveau, par exemple

ip route del 40.2.2.0/24 via 30.1.2.2
ip route add 40.2.2.0/24 via 30.1.2.2 metric 1234

Comme indiqué dans un commentaire à la question, citant un message sur la liste de diffusion linux-net :"La métrique/priorité ne peut pas être modifiée [...] Ceci est une limitation du protocole actuel [...]."
Le seul moyen est de supprimer l'itinéraire et d'en ajouter un nouveau.

Ceci est fait en utilisant le route commande, exemple :

sudo route add -net default gw 10.10.0.1 netmask 0.0.0.0 dev wlan0 metric 1

Page de manuel Debian pour la commande route


ifmetric vous permettra de modifier votre métrique d'itinéraire à la volée, en fonction de l'interface par laquelle les itinéraires que vous souhaitez modifier passent.

Utilisation

ifmetric <iface> [<metric>]

Par exemple, utilisez ifmetric tun0 12 pour changer la métrique à 12 pour toutes les routes passant par tun0 .


Linux
  1. Comment ajouter une nouvelle route statique sur RHEL7 Linux

  2. Comment ajouter une entrée dans la base de données des pages de manuel Linux

  3. Que fait Linux avec les fichiers existants dans un point de montage ?

  4. Sous Linux, quelle métrique a une route sans métrique ?

  5. Linux - trouver les hits de la route par défaut

Commande Linux Route Add avec exemples

Créer un répertoire personnel pour un utilisateur existant sous Linux

Commande Route sous Linux

Comment ajouter une route sous Linux

7 exemples de commande de route Linux (comment ajouter une route sous Linux)

Route Exemples de commandes sous Linux