Regle Du Longest Match

CCST Networking (Cisco Certified Support Technician)IP Routing

Regle du longest match

Définition

La regle du longest match (ou longest prefix match) signifie que le routeur choisit, parmi toutes les routes correspondantes dans sa table, celle dont le prefixe est le plus long (masque le plus specifique) pour la destination du paquet.

Contexte

CCST teste regulierement cette notion dans les exercices de lecture de table de routage. C'est le mecanisme fondamental par lequel un routeur decide ou envoyer un paquet lorsque plusieurs routes pourraient correspondre.

Details techniques

Principe

Le routeur effectue un AND binaire entre l'adresse IP de destination et le masque de chaque route. Si le resultat correspond au reseau de la route, c'est un match. Parmi tous les matches, le routeur choisit celui avec le masque le plus long (le plus de bits a 1).

Exemple avec table de routage

Router# show ip route
S    10.0.0.0/8 [1/0] via 192.168.1.1        ← /8  (8 bits)
O    10.10.0.0/16 [110/20] via 192.168.1.2    ← /16 (16 bits)
C    10.10.10.0/24 is directly connected, Gi0/0  ← /24 (24 bits)

Paquet pour 10.10.10.14 :

Route Masque Match ? Longueur du prefixe
10.0.0.0/8 255.0.0.0 Oui (10.x.x.x) 8 bits
10.10.0.0/16 255.255.0.0 Oui (10.10.x.x) 16 bits
10.10.10.0/24 255.255.255.0 Oui (10.10.10.x) 24 bits ← gagne

Le routeur utilise la route /24 car 24 > 16 > 8.

Cas concrets

Destination Routes candidates Route choisie Raison
10.10.10.14 /8, /16, /24 /24 Masque le plus long
10.10.20.5 /8, /16 /16 /24 ne matche pas (.20 ≠ .10)
10.50.1.1 /8 /8 Seule route qui matche
8.8.8.8 /8, /16, /24 Aucune → default route ou drop Aucun match

Lien avec la route par defaut

La route par defaut 0.0.0.0/0 a un prefixe de longueur 0 (aucun bit). Elle matche toute destination mais perd toujours face a une route plus specifique. C'est le "dernier recours" (gateway of last resort).

0.0.0.0/0       → prefixe 0 bits  (matche tout mais perd toujours)
10.0.0.0/8      → prefixe 8 bits
10.10.10.0/24   → prefixe 24 bits (gagne si applicable)
10.10.10.128/25 → prefixe 25 bits (encore plus specifique)

Visualisation binaire

Destination : 10.10.10.14  = 00001010.00001010.00001010.00001110

Route /8  : 00001010.|........|........|........  → 8 bits matchent
Route /16 : 00001010.00001010.|........|........  → 16 bits matchent
Route /24 : 00001010.00001010.00001010.|........  → 24 bits matchent ← BEST

Pourquoi le longest match ?

Un prefixe plus long = un reseau plus petit et plus precis. Le routeur prefere toujours la route la plus specifique car elle guide le paquet plus precisement vers sa destination, comme un code postal plus complet mene plus pres de l'adresse.

Exemple concret

Un routeur d'entreprise a une route par defaut (0.0.0.0/0 vers Internet), une route OSPF (10.10.0.0/16 vers le WAN), et une route connected (10.10.10.0/24 sur son LAN). Un paquet destine a 10.10.10.50 est livre directement sur le LAN (/24 gagne). Un paquet destine a 10.10.20.1 part vers le WAN (/16 gagne). Un paquet destine a 8.8.8.8 part vers Internet (default route, /0).