自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何配置OVN路由器?

網(wǎng)絡(luò) 路由交換
現(xiàn)在將三層網(wǎng)絡(luò)基礎(chǔ)功能添加到OVN中。最終呈現(xiàn)出來的將是由邏輯路由器連接的一對邏輯交換機(jī)。另外,路由器將被配置為通過OVN中內(nèi)置的DHCP服務(wù)來提供IP地址。

概覽

基于我上一篇文章中的實(shí)驗(yàn)環(huán)境,我現(xiàn)在將三層網(wǎng)絡(luò)基礎(chǔ)功能添加到OVN中。最終呈現(xiàn)出來的將是由邏輯路由器連接的一對邏輯交換機(jī)。 另外,路由器將被配置為通過OVN中內(nèi)置的DHCP服務(wù)來提供IP地址。

重構(gòu)邏輯組件

由于設(shè)置開始變得更加復(fù)雜,我們將重新構(gòu)建網(wǎng)絡(luò)架構(gòu)。 新的邏輯網(wǎng)絡(luò)拓?fù)淙缦拢?/p>

  • 2 臺邏輯交換機(jī) switches: “dmz” 和“inside”
  • 邏輯路由器“tenant1”,它連接著兩個(gè)邏輯交換機(jī)
  • IP網(wǎng)絡(luò)“dmz” :172.16.255.128/26
  • IP網(wǎng)絡(luò)“inside”:172.16.255.192/26
  • 每個(gè)邏輯交換機(jī)上各有一對“虛擬機(jī)”

新的邏輯網(wǎng)絡(luò)如下圖所示

如何配置OVN路由器?

理解路由

在本次實(shí)驗(yàn)中,我們將創(chuàng)建一個(gè)OVN路由器,即“分布式邏輯路由器”(DLR)。 DLR不同于傳統(tǒng)路由器,因?yàn)樗皇俏锢淼脑O(shè)備,而是一種邏輯架構(gòu)(與邏輯交換機(jī)不同)。 DLR僅作為OVS中的一個(gè)功能而存在:換句話說,每個(gè)OVS實(shí)例能夠在overlay網(wǎng)絡(luò)轉(zhuǎn)發(fā)流量之前先在本地模擬出一個(gè)三層路由器。

創(chuàng)建邏輯交換機(jī)和邏輯路由器

在ubuntu1上定義邏輯交換機(jī):

 

  1. ovn-nbctl ls-add inside 
  2. ovn-nbctl ls-add dmz 

添加邏輯路由器及其關(guān)聯(lián)的路由器和交換機(jī)端口:

 

  1. # 添加路由器tenant1 
  2. ovn-nbctl lr-add tenant1 
  3.   
  4. # 為路由器tenant1創(chuàng)建一個(gè)連接到dmz交換機(jī)的端口 
  5. ovn-nbctl lrp-add tenant1 tenant1-dmz 02:ac:10:ff:01:29 172.16.255.129/26 
  6.   
  7. # 為dmz交換機(jī)創(chuàng)建用于連接到路由器tenant1的端口dmz-tenant1 
  8. ovn-nbctl lsp-add dmz dmz-tenant1 
  9. ovn-nbctl lsp-set-type dmz-tenant1 router 
  10. ovn-nbctl lsp-set-addresses dmz-tenant1 02:ac:10:ff:01:29 
  11. ovn-nbctl lsp-set-options dmz-tenant1 router-port=tenant1-dmz 
  12.   
  13. #為路由器tenant1創(chuàng)建一個(gè)連接到inside交換機(jī)的端口  
  14. ovn-nbctl lrp-add tenant1 tenant1-inside 02:ac:10:ff:01:93 172.16.255.193/26 
  15.   
  16. #為inside交換機(jī)創(chuàng)建用于連接到路由器tenant1的端口inside-tenant1 
  17. ovn-nbctl lsp-add inside inside-tenant1 
  18. ovn-nbctl lsp-set-type inside-tenant1 router 
  19. ovn-nbctl lsp-set-addresses inside-tenant1 02:ac:10:ff:01:93 
  20. ovn-nbctl lsp-set-options inside-tenant1 router-port=tenant1-inside 
  21.   
  22. ovn-nbctl show 

添加 DHCP

OVN中的DHCP與大多數(shù)的解決方案有點(diǎn)不同。 大多數(shù)人的想法是管理員將:

  1. 給定子網(wǎng)定義一組DHCP選項(xiàng)
  2. 創(chuàng)建邏輯交換機(jī)端口,給該端口定義MAC地址和IP地址
  3. 為該端口分配DHCP選項(xiàng)。
  4. 將端口安全設(shè)置為僅允許分配的地址

下面,我們將要給4臺虛擬機(jī)配置邏輯端口。

在ubuntu1上:

 

  1. ovn-nbctl lsp-add dmz dmz-vm1 
  2. ovn-nbctl lsp-set-addresses dmz-vm1 "02:ac:10:ff:01:30 172.16.255.130" 
  3. ovn-nbctl lsp-set-port-security dmz-vm1 "02:ac:10:ff:01:30 172.16.255.130" 
  4.   
  5. ovn-nbctl lsp-add dmz dmz-vm2 
  6. ovn-nbctl lsp-set-addresses dmz-vm2 "02:ac:10:ff:01:31 172.16.255.131" 
  7. ovn-nbctl lsp-set-port-security dmz-vm2 "02:ac:10:ff:01:31 172.16.255.131" 
  8.   
  9. ovn-nbctl lsp-add inside inside-vm3 
  10. ovn-nbctl lsp-set-addresses inside-vm3 "02:ac:10:ff:01:94 172.16.255.194" 
  11. ovn-nbctl lsp-set-port-security inside-vm3 "02:ac:10:ff:01:94 172.16.255.194" 
  12.   
  13. ovn-nbctl lsp-add inside inside-vm4 
  14. ovn-nbctl lsp-set-addresses inside-vm4 "02:ac:10:ff:01:95 172.16.255.195" 
  15. ovn-nbctl lsp-set-port-security inside-vm4 "02:ac:10:ff:01:95 172.16.255.195" 
  16.   
  17. ovn-nbctl show 

您可能已經(jīng)注意到,與上一個(gè)實(shí)驗(yàn)不同,現(xiàn)在通過一條命令就能定義mac和IP地址。 IP地址定義實(shí)現(xiàn)了我們的2個(gè)目的:

  1. 它通過OVN在本地應(yīng)答其知道的IP / MAC的ARP請求來實(shí)現(xiàn)ARP抑制。
  2. 從哪個(gè)端口收到DHCP請求,就會從哪個(gè)接口分配IP地址。通過這種方式來實(shí)現(xiàn)DHCP。

接下來,我們需要定義DHCP選項(xiàng)并將它們分配給邏輯端口。這里的處理將與我們以前看到的有點(diǎn)不同,因?yàn)槲覀儗⒅苯优cOVN NB數(shù)據(jù)庫進(jìn)行交互。 用這種方式的原因是需要捕獲DHCP_Options中的UUID,以便我們可以將UUID分配給交換機(jī)端口。 為此,我們將把捕獲的ovn-nbctl命令的結(jié)果輸出到一對bash變量中。

 

  1. dmzDhcp="$(ovn-nbctl create DHCP_Options cidr=172.16.255.128/26 \ 
  2. options="\"server_id\"=\"172.16.255.129\" \"server_mac\"=\"02:ac:10:ff:01:29\" \ 
  3. \"lease_time\"=\"3600\" \"router\"=\"172.16.255.129\"")"  
  4. echo $dmzDhcp 
  5.   
  6. insideDhcp="$(ovn-nbctl create DHCP_Options cidr=172.16.255.192/26 \ 
  7. options="\"server_id\"=\"172.16.255.193\" \"server_mac\"=\"02:ac:10:ff:01:93\" \ 
  8. \"lease_time\"=\"3600\" \"router\"=\"172.16.255.193\"")" 
  9. echo $insideDhcp 
  10.   
  11. ovn-nbctl dhcp-options-list 

如果您想了解有關(guān)OVN NB數(shù)據(jù)庫的更多信息,請參閱ovn-nb的手冊(譯者注:http://openvswitch.org/support/dist-docs/ovn-nb.5.pdf)。

現(xiàn)在,我們將使用存儲在變量中的UUID為邏輯交換機(jī)端口分配DHCP_Options。

 

  1. ovn-nbctl lsp-set-dhcpv4-options dmz-vm1 $dmzDhcp 
  2. ovn-nbctl lsp-get-dhcpv4-options dmz-vm1 
  3.   
  4. ovn-nbctl lsp-set-dhcpv4-options dmz-vm2 $dmzDhcp 
  5. ovn-nbctl lsp-get-dhcpv4-options dmz-vm2 
  6.   
  7. ovn-nbctl lsp-set-dhcpv4-options inside-vm3 $insideDhcp 
  8. ovn-nbctl lsp-get-dhcpv4-options inside-vm3 
  9.   
  10. ovn-nbctl lsp-set-dhcpv4-options inside-vm4 $insideDhcp 
  11. ovn-nbctl lsp-get-dhcpv4-options inside-vm4 

配置虛擬機(jī)

與上一個(gè)實(shí)驗(yàn)一樣,我們將使用OVS內(nèi)部端口和網(wǎng)絡(luò)命名空間構(gòu)建的“偽虛擬機(jī)”。 現(xiàn)在的區(qū)別是,我們將使用DHCP進(jìn)行地址分配。

接下來我們將設(shè)置虛擬機(jī)。

在ubuntu2上:

 

  1. ip netns add vm1 
  2. ovs-vsctl add-port br-int vm1 -- set interface vm1 type=internal 
  3. ip link set vm1 address 02:ac:10:ff:01:30 
  4. ip link set vm1 netns vm1 
  5. ovs-vsctl set Interface vm1 external_ids:iface-id=dmz-vm1 
  6. ip netns exec vm1 dhclient vm1 
  7. ip netns exec vm1 ip addr show vm1 
  8. ip netns exec vm1 ip route show 
  9.   
  10. ip netns add vm3 
  11. ovs-vsctl add-port br-int vm3 -- set interface vm3 type=internal 
  12. ip link set vm3 address 02:ac:10:ff:01:94 
  13. ip link set vm3 netns vm3 
  14. ovs-vsctl set Interface vm3 external_ids:iface-id=inside-vm3 
  15. ip netns exec vm3 dhclient vm3 
  16. ip netns exec vm3 ip addr show vm3 
  17. ip netns exec vm3 ip route show 

在 ubuntu3上:

 

  1. ip netns add vm2 
  2. ovs-vsctl add-port br-int vm2 -- set interface vm2 type=internal 
  3. ip link set vm2 address 02:ac:10:ff:01:31 
  4. ip link set vm2 netns vm2 
  5. ovs-vsctl set Interface vm2 external_ids:iface-id=dmz-vm2 
  6. ip netns exec vm2 dhclient vm2 
  7. ip netns exec vm2 ip addr show vm2 
  8. ip netns exec vm2 ip route show 
  9.   
  10. ip netns add vm4 
  11. ovs-vsctl add-port br-int vm4 -- set interface vm4 type=internal 
  12. ip link set vm4 address 02:ac:10:ff:01:95 
  13. ip link set vm4 netns vm4 
  14. ovs-vsctl set Interface vm4 external_ids:iface-id=inside-vm4 
  15. ip netns exec vm4 dhclient vm4 
  16. ip netns exec vm4 ip addr show vm4 
  17. ip netns exec vm4 ip route show 

測試網(wǎng)絡(luò)連通性

在ubuntu2上,從vm1測試網(wǎng)絡(luò)連通性:

 

  1. # ping vm1的默認(rèn)網(wǎng)關(guān) 
  2. root@ubuntu2:~# ip netns exec vm1 ping 172.16.255.129 
  3. PING 172.16.255.129 (172.16.255.129) 56(84) bytes of data. 
  4. 64 bytes from 172.16.255.129: icmp_seq=1 ttl=254 time=0.689 ms 
  5. 64 bytes from 172.16.255.129: icmp_seq=2 ttl=254 time=0.393 ms 
  6. 64 bytes from 172.16.255.129: icmp_seq=3 ttl=254 time=0.483 ms   
  7. # 從 overlay網(wǎng)絡(luò)ping vm2(跨越整個(gè) tenant1) 
  8. root@ubuntu2:~# ip netns exec vm1  ping 172.16.255.131 
  9. PING 172.16.255.131 (172.16.255.131) 56(84) bytes of data. 
  10. 64 bytes from 172.16.255.131: icmp_seq=1 ttl=64 time=2.16 ms 
  11. 64 bytes from 172.16.255.131: icmp_seq=2 ttl=64 time=0.573 ms 
  12. 64 bytes from 172.16.255.131: icmp_seq=3 ttl=64 time=0.446 ms   
  13. # 經(jīng)過 router ping通 vm3(跨越整個(gè) overlay網(wǎng)絡(luò)) 
  14. root@ubuntu2:~# ip netns exec vm1  ping 172.16.255.194 
  15. PING 172.16.255.194 (172.16.255.194) 56(84) bytes of data. 
  16. 64 bytes from 172.16.255.194: icmp_seq=1 ttl=63 time=1.37 ms 
  17. 64 bytes from 172.16.255.194: icmp_seq=2 ttl=63 time=0.077 ms 
  18. 64 bytes from 172.16.255.194: icmp_seq=3 ttl=63 time=0.076 ms   
  19. #經(jīng)過 router ping 通vm4(跨越整個(gè) overlay網(wǎng)絡(luò)) 
  20. root@ubuntu2:~# ip netns exec vm1  ping 172.16.255.195 
  21. PING 172.16.255.195 (172.16.255.195) 56(84) bytes of data. 
  22. 64 bytes from 172.16.255.195: icmp_seq=1 ttl=63 time=1.79 ms 
  23. 64 bytes from 172.16.255.195: icmp_seq=2 ttl=63 time=0.605 ms 
  24. 64 bytes from 172.16.255.195: icmp_seq=3 ttl=63 time=0.503 ms 

結(jié)語

OVN使得第三層overlay網(wǎng)絡(luò)易于部署和管理。 另外像DHCP的服務(wù)直接構(gòu)建到系統(tǒng)中的方式,有助于減少構(gòu)建有效的SDN解決方案所需的外部組件的數(shù)量。 在下一篇文章中,將討論如何將我們(當(dāng)前隔離的)overlay網(wǎng)絡(luò)連接到外部世界。

譯者簡介:鄭敏先,就職于諾云系統(tǒng)(上海)有限公司。工作地點(diǎn)為南京的諾云研發(fā)中心。擔(dān)任解決方案工程師。

責(zé)任編輯:未麗燕 來源: SDNLAB
相關(guān)推薦

2009-12-21 15:49:44

Cisco路由器

2013-06-07 11:06:20

路由技術(shù)靜態(tài)路由配置路由器

2012-05-23 09:23:34

2020-06-01 20:50:04

VTY Shell路由器系統(tǒng)運(yùn)維

2011-09-14 17:16:14

2010-07-30 14:53:35

路由器設(shè)置

2010-07-30 15:23:34

路由器配置

2009-04-14 09:48:00

cisco路由器配置

2009-12-21 14:12:30

路由器配置故障

2009-12-22 15:57:18

Cisco路由器配置

2011-02-22 08:57:28

路由器基礎(chǔ)

2009-12-11 15:21:15

華為路由器CISCO路由器

2009-12-23 15:00:15

正確配置路由協(xié)議

2009-12-08 17:10:22

路由器配置

2009-12-18 16:59:22

配置路由器

2010-08-04 10:14:36

路由器配置

2009-12-17 09:02:04

路由器配置

2010-08-03 11:29:53

路由器配置

2010-08-09 09:49:15

華為路由器配置

2011-09-08 11:15:51

思科路由器如何限速路由器設(shè)置思科路由器
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號