有类和无类路由下的路由匹配原则
生活随笔
收集整理的這篇文章主要介紹了
有类和无类路由下的路由匹配原则
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
有類和無類路由下的路由匹配原則
使用有類路由:路由器首先匹配主網絡號,如果主網絡號存在,就繼續匹配子網號,且不考慮缺省路由,如果子網
無法匹配,丟棄數據包(在分類路由下,路由器認為知道所有主網絡下的全部子網),并使用ICMP返回一個不可達回
應。如果主網絡號不存在,使用缺省路由(缺省路由存在前提)。
上述情況出現在某些早期IOS版本里(12.0以前版本),這些早期版本默認沒有打開ip classless.
打開ip classless以后將改變路由器的路由行為,此時路由器將進行最長最精確匹配或使用默認路由進行匹配
使用無類路由,如果沒有找到最具體的匹配,就使用缺省路由。
ip classless命令的作用主要是改變有類路由協議的查找路由表的行為。
例1:某路由器上運行的路由協議為RIP(有類的路由協議),路由表如下:
R 10.1.0.0/16 via 1.1.1.1
R 10.2.0.0/26 via 1.1.1.2
R* 0.0.0.0/0 via 1.1.1.3
現在假設有3個IP報文,報文A的目標IP是10.1.1.1、報文B的目標IP是10.3.1.1、報文C的目標IP是11.11.1.1
有類路由協議查找路由表的行為如下:
首先查找目標IP所在的主網絡,若路由表中有該主網絡的任何一個子網路由的話,就必須精確匹配其中的子網路
由;如果沒有找到精確匹配的子網路由,它不會選擇最后的缺省路由,而是丟棄報文。若路由表中不存在該主網絡的任
何一個子網路由,則最終選擇缺省路由。
報文A:目標IP為10.1.1.1,所在的主網絡為10.0.0.0,目前的路由表中存在10.0.0.0的子網路由,此時路由器要進
一步查找子網路由,是否能夠精確匹配,我們看到10.1.0.0/16可以匹配我們的目標地址,所以報文A根據這條路由進行
轉發。
報文B:目標IP為10.3.1.1,所在的主網絡為10.0.0.0,目前的路由表中存在10.0.0.0的子網路由,此時路由器要進
一步查找子網路由,是否能夠精確匹配,我們看到路由表中的兩條子網路由10.1.0.0/16和10.2.0.0/16均不能匹配我們
的目標地址,根據有類路由協議的原則,它不會選擇缺省路由,所以報文B被路由器丟棄。
報文C:目標IP為11.1.1.1,所在的主網絡為11.0.0.0,目前的路由表中不存在11.0.0.0的子網路由,此時路由器直
接采用缺省路由,所以路由器采用缺省路由對報文C進行轉發。
上面的結果是有類路由協議查找路由的行為,而配置ip classless的目的就是改變它的這種行為,配置完該命令后
查找路由的行為是根據最長匹配的原則,那上例中的報文B就可以通過缺省路由進行轉發了。
注意:該命令對于一個無類路由協議來說沒有任何意義,因為無類路由協議查找路由的方式就是最長匹配的原則。
第1 頁
使用有類路由:路由器首先匹配主網絡號,如果主網絡號存在,就繼續匹配子網號,且不考慮缺省路由,如果子網
無法匹配,丟棄數據包(在分類路由下,路由器認為知道所有主網絡下的全部子網),并使用ICMP返回一個不可達回
應。如果主網絡號不存在,使用缺省路由(缺省路由存在前提)。
上述情況出現在某些早期IOS版本里(12.0以前版本),這些早期版本默認沒有打開ip classless.
打開ip classless以后將改變路由器的路由行為,此時路由器將進行最長最精確匹配或使用默認路由進行匹配
使用無類路由,如果沒有找到最具體的匹配,就使用缺省路由。
ip classless命令的作用主要是改變有類路由協議的查找路由表的行為。
例1:某路由器上運行的路由協議為RIP(有類的路由協議),路由表如下:
R 10.1.0.0/16 via 1.1.1.1
R 10.2.0.0/26 via 1.1.1.2
R* 0.0.0.0/0 via 1.1.1.3
現在假設有3個IP報文,報文A的目標IP是10.1.1.1、報文B的目標IP是10.3.1.1、報文C的目標IP是11.11.1.1
有類路由協議查找路由表的行為如下:
首先查找目標IP所在的主網絡,若路由表中有該主網絡的任何一個子網路由的話,就必須精確匹配其中的子網路
由;如果沒有找到精確匹配的子網路由,它不會選擇最后的缺省路由,而是丟棄報文。若路由表中不存在該主網絡的任
何一個子網路由,則最終選擇缺省路由。
報文A:目標IP為10.1.1.1,所在的主網絡為10.0.0.0,目前的路由表中存在10.0.0.0的子網路由,此時路由器要進
一步查找子網路由,是否能夠精確匹配,我們看到10.1.0.0/16可以匹配我們的目標地址,所以報文A根據這條路由進行
轉發。
報文B:目標IP為10.3.1.1,所在的主網絡為10.0.0.0,目前的路由表中存在10.0.0.0的子網路由,此時路由器要進
一步查找子網路由,是否能夠精確匹配,我們看到路由表中的兩條子網路由10.1.0.0/16和10.2.0.0/16均不能匹配我們
的目標地址,根據有類路由協議的原則,它不會選擇缺省路由,所以報文B被路由器丟棄。
報文C:目標IP為11.1.1.1,所在的主網絡為11.0.0.0,目前的路由表中不存在11.0.0.0的子網路由,此時路由器直
接采用缺省路由,所以路由器采用缺省路由對報文C進行轉發。
上面的結果是有類路由協議查找路由的行為,而配置ip classless的目的就是改變它的這種行為,配置完該命令后
查找路由的行為是根據最長匹配的原則,那上例中的報文B就可以通過缺省路由進行轉發了。
注意:該命令對于一個無類路由協議來說沒有任何意義,因為無類路由協議查找路由的方式就是最長匹配的原則。
第1 頁
轉載于:https://blog.51cto.com/itboy/108995
總結
以上是生活随笔為你收集整理的有类和无类路由下的路由匹配原则的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 内推学弟进了腾讯,看看他的标杆简历!
- 下一篇: 准备出发到成都