L'ordre de routage est-il important:
> route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
123.x.x.151 0.0.0.0 255.255.255.255 UH 0 0 0 vmbr0
123.x.x.154 0.0.0.0 255.255.255.255 UH 0 0 0 vmbr0
123.x.x.128 0.0.0.0 255.255.255.224 U 0 0 0 vmbr0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 vmbr1
0.0.0.0 123.x.x.129 0.0.0.0 UG 0 0 0 vmbr0
est-ce la même chose que:
> route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
123.x.x.128 0.0.0.0 255.255.255.224 U 0 0 0 vmbr0
123.x.x.151 0.0.0.0 255.255.255.255 UH 0 0 0 vmbr0
123.x.x.154 0.0.0.0 255.255.255.255 UH 0 0 0 vmbr0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 vmbr1
0.0.0.0 123.x.x.129 0.0.0.0 UG 0 0 0 vmbr0
?
où la différence est que
123.x.x.128 123.x.x.129 255.255.255.224 U 0 0 0 vmbr0
est d'ordre supérieur à
123.x.x.151 0.0.0.0 255.255.255.255 UH 0 0 0 vmbr0
donc, si j'envoie à 123.x.x.151
, où ira-t-il:
- the routed way over `123.x.x.129`, because it matches the `123.x.x.128` rule, or
- the direct way using the arp table, because it matches the `123.x.x.151` rule
?
L'ordre dans la table n'a pas d'importance; les itinéraires avec un préfixe plus long sont toujours prioritaires. Si vous arrêtez de vous accrocher aux masques de réseau et considérez plutôt les longueurs de préfixe (ce que montre ip route
), vous avez 123.x.x.128/27
et 123.x.x.151/32
, et ce dernier - plus spécifique - route aura la priorité sur le précédent (plus générique).
L'ordre ne compte que si vous avez des itinéraires en double. Ne fais pas ça.
Par exemple, si deux interfaces ont la même destination, masque de réseau et passerelle, 0.0.0.0, la première capturera tout le trafic de ce réseau.
De plus, j'ai constaté que certains systèmes réorganiseraient au démarrage le premier. Si une seule fonctionne ou si une passerelle de routeur est configurée, cela peut entraîner une perte d'accès à ce réseau lors du redémarrage.