最長前綴匹配

最長前綴匹配是指在IP協議中,被路由器用於在路由表中進行選擇的一個算法

因為路由表中的每個表項都指定了一個網絡,所以一個目的地址可能與多個表項匹配。最明確的一個表項——即子網掩碼最長的一個——就叫做最長前綴匹配。之所以這樣稱呼它,是因為這個表項也是路由表中,與目的地址的高位匹配得最多的表項。

例如,考慮下面這個IPv4的路由表(這裡用CIDR來表示):

192.168.20.16/28
192.168.0.0/16

在要查找地址192.168.20.19的時候,這兩個表項都「匹配」。也就是說,兩個表項都包含著要查找的地址。這種情況下,前綴最長的路由就是192.168.20.16/28,因為它的子網掩碼(/28)比其他表項的掩碼(/16)要長,使得它更加明確。

路由表中常常包含一個默認路由。這個路由在所有表項都不匹配的時候有著最短的前綴匹配。