日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

有关路由汇总(路由的包含与被包含关系)的一点小感悟

發(fā)布時間:2024/1/18 编程问答 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 有关路由汇总(路由的包含与被包含关系)的一点小感悟 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

路由匯總,是將多條路由匯總成一條路由,通過俗點(diǎn)說,就是把多個IP地址匯聚成一個可以表示它們所有IP地址的IP地址。

舉個例子,有如下路由:

192.168.1.0 192.168.2.0 192.168.3.0......192.168.255.0

匯總路由為:192.168.0.0

下面解釋如何計算匯總路由:

現(xiàn)有明確路由:

172.16.1.0/24 172.16.2.0/24 172.16.3.0/24...........172.16.31.0/24

我們只看這些IP地址的第三個八位,就可以確定它們的不同的地方

172.16.1.0:00000001

172.16.2.0:00000010

172.16.3.0:00000011

.................

172.16.30.0:00011110

172.16.31.0:00011111

對比其前三位,相同。后五位,不同。因此確定其掩碼位數(shù)為8+8+3=19

將后五位(不同位)全部相與(與運(yùn)算),則可得出172.16.0.0

因此,通過這種計算我們可以得出其精確的路由匯總為:172.16.0.0/19

我在查看有關(guān)華為eNSP的書籍的時候,發(fā)現(xiàn)了以下路由:10.0.1.1/32與10.0.3.0/24匯聚路由是多少?

當(dāng)時看到書上的實(shí)驗命令是這么寫的:rule deny source 10.0.1.0 0.0.254.255//注意0.0.254.255為通配符掩碼,在我之前配置ACL的實(shí)驗中可以看到詳細(xì)解釋,這里不再贅述:

https://blog.csdn.net/weixin_62594100/article/details/123942609https://blog.csdn.net/weixin_62594100/article/details/123942609

把10.0.1.1/32和10.0.3.0/24做路由匯聚:

只看第三個八位(不解釋,前面寫的很清楚了)

10.0.1.1/32:00000001

10.0.3.0/24:00000011

好,一眼看出前六位相同,后兩位不同。得出掩碼位數(shù):8+8+6=22

后兩位全相與,得出路由匯聚的精確路由為:10.0.1.0/22

結(jié)果我當(dāng)時錯算成10.0.3.0/22,然后開始和同學(xué)討論,為什么算出來的和書上的不一樣?(其實(shí)就是算錯了,當(dāng)時沒想那么多),然后我就誤以為10.0.1.0/22包含了10.0.3.0/22,所以實(shí)驗?zāi)茏鰧Α?/strong>

這便引出了一個新的問題:

如何判斷IP地址的包含于被包含的關(guān)系呢?

很簡單,我們都知道如何判斷兩個IP地址是否屬于同一網(wǎng)段,將IP地址與子網(wǎng)掩碼進(jìn)行與運(yùn)算,得出的網(wǎng)絡(luò)地址進(jìn)行對比,即可得出結(jié)論,詳細(xì)的解釋請看我之前的一篇文章:

https://blog.csdn.net/weixin_62594100/article/details/124276183https://blog.csdn.net/weixin_62594100/article/details/124276183

我們只看第三和第四個八位

10.0.1.0/22:00000001

11111111 11111111 11111100 00000000

10.0.3.0/22:00000011

11111111 11111111 11111100 00000000

與運(yùn)算,得出結(jié)果:00000000

兩者屬于同一網(wǎng)段!

同理......................................

接下來討論“真包含”這種情況。

很顯然,只可能是寬的IP區(qū)間段去包含窄的IP區(qū)間段。(根據(jù)最長匹配原則判斷)(最長匹配是指存在多條目的網(wǎng)段相同的路由時,匹配掩碼最長的那一條。?因為掩碼越長,表示的網(wǎng)段就越小,匹配也就越精確。?)

我們知道,子網(wǎng)掩碼位數(shù)越大則IP區(qū)間段越窄,所以,在子網(wǎng)掩碼位數(shù)不相等的情況下,我們所要解決的問題實(shí)際上就轉(zhuǎn)換成了:

子網(wǎng)掩碼位數(shù)較大的那個IP地址,是否屬于子網(wǎng)掩碼位數(shù)較小的那個IP地址段?

這個問題那就好辦多了……

不妨令:

子網(wǎng)掩碼位數(shù)較大的那個IP地址段的IP地址為ipAddr1

子網(wǎng)掩碼位數(shù)較小的那個IP地址段的IP地址為ipAddr2,子網(wǎng)掩碼為mask2

那么:

只要

(ipAddr1 & mask2) == (ipAddr2 & mask2)

成立,就說明包含關(guān)系成立!

證畢。

PS:不管對于IPv4地址還是IPv6地址,上面的思路都適用!

總結(jié)

以上是生活随笔為你收集整理的有关路由汇总(路由的包含与被包含关系)的一点小感悟的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。