為什么要用namespace封裝router

為什么要用namespace封裝router,很多新手對此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

創(chuàng)新互聯(lián)公司專業(yè)提供成都主機(jī)托管四川主機(jī)托管成都服務(wù)器托管四川服務(wù)器托管,支持按月付款!我們的承諾:貴族品質(zhì)、平民價(jià)格,機(jī)房位于中國電信/網(wǎng)通/移動機(jī)房,四川服務(wù)器托管服務(wù)有保障!

今天探討為什么要用 namespace 封裝 router

我們需要討論一個(gè)深層次的問題: 為什么不直接在 tape17162c5-00 和 tapd568ba1a-74 上配置 Gateway IP,而是引入一個(gè) namespace,在 namespace 里面配置 Gateway IP 呢?

首先考慮另外一個(gè)問題: 如果不用 namespace,直接 Gareway IP 配置到 tape17162c5-00 和 tapd568ba1a-74 上,能不能連通 subnet_172_16_100_0 和 subnet_172_16_101_0 呢?

答案是可以的,只要控制節(jié)點(diǎn)上配置了類似下面的路由。

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
172.16.100.0    *               255.255.255.0   U     0      0        0 tapd568ba1a-74
172.16.101.0    *               255.255.255.0   U     0      0        0 tape17162c5-00

既然不需要 namespace 也可以路由,為什么還要加一層 namespace 增加復(fù)雜性呢? 其根本原因是:為了支持網(wǎng)絡(luò)重疊。

云環(huán)境下,租戶可以按照自己的規(guī)劃創(chuàng)建網(wǎng)絡(luò),不同租戶的網(wǎng)絡(luò)是可能重疊的。 將路由功能放到 namespace 中,就能隔離不同租戶的網(wǎng)絡(luò),從而支持網(wǎng)絡(luò)重疊。

下面通過例子進(jìn)一步解釋。

Tenant A  vlan100 subnet A-1: 10.10.1.0/24    {"start": "10.10.1.1", "end": "10.10.1.254"}
Tenant A  vlan101 subnet A-2: 10.10.2.0/24    {"start": "10.10.2.1", "end": "10.10.2.254"}

Tenant B  vlan102 subnet B-1: 10.10.1.0/24    {"start": "10.10.1.1", "end": "10.10.1.254"}
Tenant B  vlan103 subnet B-2: 10.10.2.0/24    {"start": "10.10.2.1", "end": "10.10.2.254"}

A,B 兩個(gè)租戶定義了完全相同的兩個(gè) subnet,網(wǎng)絡(luò)完全重疊。

不使用 namespace 的場景

如果不使用 namespace:

其特征是網(wǎng)關(guān) IP 配置在 TAP interface 上。 因?yàn)闆]有 namespace 隔離,router_100_101 和 router_102_103 的路由條目都只能記錄到控制節(jié)點(diǎn)操作系統(tǒng)(root namespace)的路由表中,內(nèi)容如下:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface  
10.10.1.0                 *               255.255.255.0   U     0      0        0     tap1  
10.10.2.0                 *               255.255.255.0   U     0      0        0     tap2  
10.10.1.0                 *               255.255.255.0   U     0      0        0     tap3  
10.10.2.0                 *               255.255.255.0   U     0      0        0     tap4

這樣的路由表是無法工作的。 按照路由表優(yōu)先匹配原則,Tenant B 的數(shù)據(jù)包總是錯(cuò)誤地被 Tenant A 的 router 路由。 例如 vlan102 上有數(shù)據(jù)包要發(fā)到 vlan103。 選擇路由時(shí),會匹配路由表的第二個(gè)條目,結(jié)果數(shù)據(jù)被錯(cuò)誤地發(fā)到了 vlan101。

使用 namespace 的場景

如果使用 namespace:

其特征是網(wǎng)關(guān) IP 配置在 namespace 中的 veth interface 上。 每個(gè) namespace 擁有自己的路由表。

router_100_101 的路由表內(nèi)容如下:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.10.1.0                 *               255.255.255.0   U     0      0        0     qr-1
10.10.2.0                 *               255.255.255.0   U     0      0        0     qr-2

router_102_103 的路由表內(nèi)容如下:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.10.1.0                 *               255.255.255.0   U     0      0        0     qr-3
10.10.2.0                 *               255.255.255.0   U     0      0        0     qr-4

這樣的路由表是可以工作的。

例如 vlan102 上有數(shù)據(jù)包要發(fā)到 vlan103。 選擇路由時(shí),會查看 router_102_103 的路由表, 匹配第二個(gè)條目,數(shù)據(jù)通過 qr-4 被正確地發(fā)送到 vlan103。

同樣當(dāng) vlan100 上有數(shù)據(jù)包要發(fā)到 vlan101時(shí),會匹配 router_100_101 路由表的第二個(gè)條目,數(shù)據(jù)通過 qr-2 被正確地發(fā)送到 vlan101。

可見,namespace 使得每個(gè) router 有自己的路由表,而且不會與其他 router 沖突,所以能很好地支持網(wǎng)絡(luò)重疊。

好了,目前我們已經(jīng)搞清楚了 Neutron 內(nèi)部 subnet 之間是如何通信的了。

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。

網(wǎng)站題目:為什么要用namespace封裝router
URL標(biāo)題:http://muchs.cn/article28/jojijp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作品牌網(wǎng)站設(shè)計(jì)、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)公司、建站公司網(wǎng)站策劃

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計(jì)公司