本產品的文件集力求使用無偏見用語。針對本文件集的目的,無偏見係定義為未根據年齡、身心障礙、性別、種族身分、民族身分、性別傾向、社會經濟地位及交織性表示歧視的用語。由於本產品軟體使用者介面中硬式編碼的語言、根據 RFP 文件使用的語言,或引用第三方產品的語言,因此本文件中可能會出現例外狀況。深入瞭解思科如何使用包容性用語。
思科已使用電腦和人工技術翻譯本文件,讓全世界的使用者能夠以自己的語言理解支援內容。請注意,即使是最佳機器翻譯,也不如專業譯者翻譯的內容準確。Cisco Systems, Inc. 對這些翻譯的準確度概不負責,並建議一律查看原始英文文件(提供連結)。
本檔案介紹如何使用部分SR部署為基於LDP的流量提供SR優勢,包括在域間MPLS使用案例中可能應用SR。
思科建議您瞭解以下主題:
本文中的資訊係根據以下軟體和硬體版本:
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
本檔案將簡要說明當支援SR的路由器和不支援SR的路由器混雜於同一個網路中(且更確切地說是位於同一個路由網域中)時,SR與LDP進行互動的機制。
在節點上運行的組播控制平面客戶端(MCC)必須確保它安裝在節點的MPLS資料平面中的傳入標籤被唯一分配,並且分段路由使用分段路由全域性塊(SRGB)進行標籤分配。SRGB的使用允許SR與任何其他MCC共存。
提示:此資訊有助於您使用Inter-AS選項C為MPLS SR和MPLS LDP提供Inter-AS解決方案。
在具有SR MPLS控制平面的異構環境中的SR部署使用RFC 4364中定義的Inter-AS選項C與MPLS LDP控制平面進行互操作。
本檔案介紹一種方法,透過此方法,服務供應商網路使用MPLS LDP和SR MPLS提供使用Inter-AS選項C的虛擬私人網路。
Inter-AS選項C的簡要概述:
Inter-AS選項C是RFC 4364中介紹的用於互連多AS主幹的第三個選項。這是迄今為止三種方法中可擴充性最好的方法,而且它還有自己的適用場景,我們必須注意才能正確地應用此設計。
選項C是可伸縮的,因此是一個很好的候選選項。ASBR不承載任何VPN路由,它們只負責在自己的AS內分配PE的標籤IPv4路由。
為了提高可擴充性,一個MP-EBGP VPNv4會話在PE或RR之間傳輸所有VPN路由(外部路由)。在使用RR交換外部路由的情況下,必須保留VPNv4路由的下一跳。
ASBR使用EBGP在AS(內部路由)之間交換內部PE路由資訊。這些內部路由對應於PE或RR之間通過多跳MP-EBGP會話通告的外部路由的BGP下一跳。ASBR通告的內部路由可用於在PE之間建立MP-EBGP會話,並允許從入口到出口PE建立LSP。
從可擴充性角度來看,選項C是一個非常好的解決方案,是選擇同一SP多AS網路的途徑。
分段工藝路線的簡要概述:
區段路由(SR)利用來源路由和通道正規化。節點通過一組受控指令(稱為段)引導資料包,方法是使用SR報頭對資料包進行預置。段可以表示任何指令、拓撲或基於服務。SR允許透過任何拓撲路徑和服務鏈強制執行流量,但只在SR網域的輸入節點維持每個流量的狀態。分段路由架構可以直接應用到MPLS資料平面,轉發平面的變化很小。它需要對現有鏈路狀態路由協定進行次要擴展。分段路由還可以使用新型路由擴展報頭應用於IPv6。
將網段編碼為MPLS標籤。有序的段清單被編碼為標籤的堆疊。要處理的區段位於堆疊的頂部。完成區段後,相關標籤會從堆疊中彈出。 根據傳統MPLS轉發,分段路由MPLS資料平面操作包括推送、交換和pop。在「段佈線」中定義以下段型別:
段路由全域性塊(SRGB)是在LSD中保留用於段路由的標籤值範圍。SRGB標籤值被指定為支援SR的節點的字首段識別符號(SID),並且在整個域中具有全域性意義。
對映伺服器為部分或全部已知字首集中分配字首SID。路由器必須能夠充當對映伺服器、對映客戶端,或同時充當這兩者。
對映伺服器的主要功能包括:
本節幫助您瞭解和配置提供商網路之間使用SR功能網路對等/連線非SR功能網路的第3層虛擬專用網路(VPN)服務。在本節中,您將學習如何配置RFC "4364"中定義的選項C和使用案例。
在拓撲圖的頂部,我們有一個啟用SR的網路,其中包含路由反射器、提供商邊緣路由器和客戶邊緣路由器。
客戶邊緣路由器CE1和CE2分別具有VRF A和VRF B。這屬於AS 65002。
在拓撲圖的底部,我們有一個支援LDP的網路,其中包含路由反射器、提供商邊緣路由器和客戶邊緣路由器。
客戶邊緣路由器CE3和CE4分別具有VRF A和VRF B。這屬於AS65001。
啟用SR和LDP的網路兩端的VRF A和VRF B需要相互通訊。
主機名 | IP 位址 |
RR-01 | 10.0.0.1 |
RR-02 | 10.0.0.2 |
PE1 | 10.0.0.3 |
PE2 | 10.0.0.4 |
CE1 | 10.0.0.5 |
CE2 | 10.0.0.6 |
RR-03 | 10.0.1.1 |
RR-04 | 10.0.1.2 |
PE5 | 10.0.1.3 |
PE6 | 10.0.1.4 |
CE3 | 10.0.1.5 |
CE4 | 10.0.1.6 |
描述了裝置的配置。
RR-1
segment-routing mpls
!
mapping-server
!
prefix-sid-map
address-family ipv4
10.0.0.1/32 index 200 range 10
exit-address-family
!
!
interface Loopback0
description Loopback0
ip address 10.0.0.1 255.255.255.255
ip router isis 65002
!
!
router isis 65002
net xx.xxxx.xxxx.xxxx.xx
metric-style wide
segment-routing mpls
segment-routing prefix-sid-map advertise-local
!
router bgp 65002
bgp router-id 10.0.0.1
neighbor 10.0.0.3 remote-as 65002
neighbor 10.0.0.3 description rr client
neighbor 10.0.0.3 update-source Loopback0
neighbor 10.0.0.4 remote-as 65002
neighbor 10.0.0.4 description rr client
neighbor 10.0.0.4 update-source Loopback0
neighbor 10.0.0.2 remote-as 65002
neighbor 10.0.0.2 description iBGP peer
neighbor 10.0.0.2 update-source Loopback0
neighbor 10.0.1.1 remote-as 65001
neighbor 10.0.1.1 ebgp-multihop 255
neighbor 10.0.1.1 update-source Loopback0
neighbor 10.0.1.2 remote-as 65001
neighbor 10.0.1.2 ebgp-multihop 255
neighbor 10.0.1.2 update-source Loopback0
!
address-family ipv4
neighbor 10.0.0.3 activate
neighbor 10.0.0.3 route-reflector-client
neighbor 10.0.0.4 activate
neighbor 10.0.0.4 route-reflector-client
neighbor 10.0.0.2 activate
neighbor 10.0.1.1 activate
neighbor 10.0.1.2 activate
exit-address-family
!
address-family vpnv4
neighbor 10.0.0.3 activate
neighbor 10.0.0.3 send-community extended
neighbor 10.0.0.3 route-reflector-client
neighbor 10.0.0.4 activate
neighbor 10.0.0.4 send-community extended
neighbor 10.0.0.4 route-reflector-client
neighbor 10.0.0.2 activate
neighbor 10.0.0.2 send-community extended
neighbor 10.0.1.1 activate
neighbor 10.0.1.1 send-community both
neighbor 10.0.1.1 next-hop-unchanged
neighbor 10.0.1.2 activate
neighbor 10.0.1.2 send-community both
neighbor 10.0.1.2 next-hop-unchanged
exit-address-family
!
RR-2
segment-routing mpls
!
mapping-server
!
prefix-sid-map
address-family ipv4
10.0.0.2/32 index 200 range 10
exit-address-family
!
!
interface Loopback0
description Loopback0
ip address 10.0.0.2 255.255.255.255
ip router isis 65002
!
!
router isis 65002
net xx.xxxx.xxxx.xxxx.xx
metric-style wide
segment-routing mpls
segment-routing prefix-sid-map advertise-local
!
router bgp 65002
bgp router-id 10.0.0.2
neighbor 10.0.0.3 remote-as 65002
neighbor 10.0.0.3 description rr client
neighbor 10.0.0.3 update-source Loopback0
neighbor 10.0.0.4 remote-as 65002
neighbor 10.0.0.4 description rr client
neighbor 10.0.0.4 update-source Loopback0
neighbor 10.0.0.1 remote-as 65002
neighbor 10.0.0.1 description iBGP peer
neighbor 10.0.0.1 update-source Loopback0
neighbor 10.0.1.1 remote-as 65001
neighbor 10.0.1.1 ebgp-multihop 255
neighbor 10.0.1.1 update-source Loopback0
neighbor 10.0.1.2 remote-as 65001
neighbor 10.0.1.2 ebgp-multihop 255
neighbor 10.0.1.2 update-source Loopback0
!
address-family ipv4
neighbor 10.0.0.3 activate
neighbor 10.0.0.3 route-reflector-client
neighbor 10.0.0.4 activate
neighbor 10.0.0.4 route-reflector-client
neighbor 10.0.0.1 activate
neighbor 10.0.1.1 activate
neighbor 10.0.1.2 activate
exit-address-family
!
address-family vpnv4
neighbor 10.0.0.3 activate
neighbor 10.0.0.3 send-community extended
neighbor 10.0.0.3 route-reflector-client
neighbor 10.0.0.4 activate
neighbor 10.0.0.4 send-community extended
neighbor 10.0.0.4 route-reflector-client
neighbor 10.0.0.1 activate
neighbor 10.0.0.1 send-community extended
neighbor 10.0.1.1 activate
neighbor 10.0.1.1 send-community both
neighbor 10.0.1.1 next-hop-unchanged
neighbor 10.0.1.2 activate
neighbor 10.0.1.2 send-community both
neighbor 10.0.1.2 next-hop-unchanged
exit-address-family
!
PE-1
interface Loopback0
description Loopback0
ip address 10.0.0.3 255.255.255.255
ip router isis 65002
!
vrf A # Define VRF A
address-family ipv4 unicast
import route-target
65000:1
!
export route-target
65000:1
!
!
vrf B # Define VRF B
address-family ipv4 unicast
import route-target
65000:2
!
export route-target
65000:2
!
!
router isis 65002 # ISIS Level 2
is-type level-2-only
net xx.xxxx.xxxx.xxxx.xx
address-family ipv4 unicast
metric-style wide
advertise link attributes
mpls traffic-eng level-2-only
mpls traffic-eng router-id Loopback0
router-id Loopback0
segment-routing mpls sr-prefer
!
router bgp 65002 # BGP
bgp router-id 10.0.0.3
neighbor-group RR
remote-as 65002
update-source Loopback0
address-family vpnv4 unicast
!
!
neighbor 10.0.0.1
use neighbor-group RR
!
neighbor 10.0.0.2
use neighbor-group RR
vrf A
rd 65000:1
address-family ipv4 unicast
redistribute connected
allocate-label all
!
neighbor 10.0.0.5 # IP address of CE1
remote-as 61001
ebgp-multihop 255
update-source Loopback100
address-family ipv4 unicast
!
vrf B
rd 65000:2
address-family ipv4 unicast
redistribute connected
allocate-label all
!
neighbor 10.0.0.6 # IP address of CE2
remote-as 61001
ebgp-multihop 255
update-source Loopback101
address-family ipv4 unicast
!
interface GigabitEthernet1 # Link to CE-01
vrf A
ipv4 address x.x.x.x 255.255.255.0
!
interface GigabitEthernet2 # Link to CE-02
vrf B
ipv4 address x.x.x.x 255.255.255.0
!
segment-routing
global-block 16000 23999
!
RR-3
interface Loopback0
description Loopback0
ip address 10.0.1.1 255.255.255.255
ip router isis 65001
!
!
router isis 65001
net xx.xxxx.xxxx.xxxx.xx
metric-style wide
segment-routing mpls
segment-routing prefix-sid-map advertise-local
!
router bgp 65001
bgp router-id 10.0.1.1
neighbor 10.0.1.3 remote-as 65001
neighbor 10.0.1.3 description rr client
neighbor 10.0.1.3 update-source Loopback0
neighbor 10.0.1.4 remote-as 65001
neighbor 10.0.1.4 description rr client
neighbor 10.0.1.4 update-source Loopback0
neighbor 10.0.1.2 remote-as 65001
neighbor 10.0.1.2 description iBGP peer
neighbor 10.0.1.2 update-source Loopback0
neighbor 10.0.0.1 remote-as 65002
neighbor 10.0.0.1 ebgp-multihop 255
neighbor 10.0.0.1 update-source Loopback0
neighbor 10.0.0.2 remote-as 65002
neighbor 10.0.0.2 ebgp-multihop 255
neighbor 10.0.0.2 update-source Loopback0
!
address-family ipv4
neighbor 10.0.1.3 activate
neighbor 10.0.1.3 route-reflector-client
neighbor 10.0.1.4 activate
neighbor 10.0.1.4 route-reflector-client
neighbor 10.0.1.2 activate
neighbor 10.0.0.1 activate
neighbor 10.0.0.2 activate
exit-address-family
!
address-family vpnv4
neighbor 10.0.1.3 activate
neighbor 10.0.1.3 send-community extended
neighbor 10.0.1.3 route-reflector-client
neighbor 10.0.1.4 activate
neighbor 10.0.1.4 send-community extended
neighbor 10.0.1.4 route-reflector-client
neighbor 10.0.1.2 activate
neighbor 10.0.1.2 send-community extended
neighbor 10.0.0.1 activate
neighbor 10.0.0.1 send-community both
neighbor 10.0.0.1 next-hop-unchanged
neighbor 10.0.0.2 activate
neighbor 10.0.0.2 send-community both
neighbor 10.0.0.2 next-hop-unchanged
exit-address-family
!
RR-4
interface Loopback0
description Loopback0
ip address 10.0.1.2 255.255.255.255
ip router isis 65001
!
!
router isis 65001
net xx.xxxx.xxxx.xxxx.xx
metric-style wide
segment-routing mpls
segment-routing prefix-sid-map advertise-local
!
router bgp 65001
bgp router-id 10.0.1.2
neighbor 10.0.1.3 remote-as 65001
neighbor 10.0.1.3 description rr client
neighbor 10.0.1.3 update-source Loopback0
neighbor 10.0.1.4 remote-as 65001
neighbor 10.0.1.4 description rr client
neighbor 10.0.1.4 update-source Loopback0
neighbor 10.0.1.1 remote-as 65001
neighbor 10.0.1.1 description iBGP peer
neighbor 10.0.1.1 update-source Loopback0
neighbor 10.0.0.1 remote-as 65002
neighbor 10.0.0.1 ebgp-multihop 255
neighbor 10.0.0.1 update-source Loopback0
neighbor 10.0.0.2 remote-as 65002
neighbor 10.0.0.2 ebgp-multihop 255
neighbor 10.0.0.2 update-source Loopback0
!
address-family ipv4
neighbor 10.0.1.3 activate
neighbor 10.0.1.3 route-reflector-client
neighbor 10.0.1.4 activate
neighbor 10.0.1.4 route-reflector-client
neighbor 10.0.1.1 activate
neighbor 10.0.0.1 activate
neighbor 10.0.0.2 activate
exit-address-family
!
address-family vpnv4
neighbor 10.0.1.3 activate
neighbor 10.0.1.3 send-community extended
neighbor 10.0.1.3 route-reflector-client
neighbor 10.0.1.4 activate
neighbor 10.0.1.4 send-community extended
neighbor 10.0.1.4 route-reflector-client
neighbor 10.0.1.1 activate
neighbor 10.0.1.1 send-community extended
neighbor 10.0.0.1 activate
neighbor 10.0.0.1 send-community both
neighbor 10.0.0.1 next-hop-unchanged
neighbor 10.0.0.2 activate
neighbor 10.0.0.2 send-community both
neighbor 10.0.0.2 next-hop-unchanged
exit-address-family
!
PE-6
interface Loopback0
description Loopback0
ip address 10.0.1.3 255.255.255.255
ip router isis 65001
!
vrf A # Define VRF A
address-family ipv4 unicast
import route-target
65000:1
!
export route-target
65000:1
!
vrf B # Define VRF B
address-family ipv4 unicast
import route-target
65000:2
!
export route-target
65000:2
!
router isis 65001
is-type level-2-only
net xx.xxxx.xxxx.xxxx.xx
address-family ipv4 unicast
metric-style wide
advertise link attributes
mpls traffic-eng level-2-only
mpls traffic-eng router-id Loopback0
router-id Loopback0
segment-routing mpls sr-prefer
!
router bgp 65001
bgp router-id 10.0.1.3
neighbor-group RR
remote-as 65002
update-source Loopback0
address-family vpnv4 unicast
!
!
neighbor 10.0.1.1
use neighbor-group RR
!
neighbor 10.0.1.2
use neighbor-group RR
vrf A
rd 65000:1
address-family ipv4 unicast
redistribute connected
allocate-label all
!
neighbor 10.0.1.5 # IP address of CE3
remote-as 61001
ebgp-multihop 255
update-source Loopback100
address-family ipv4 unicast
!
vrf B
rd 65000:2
address-family ipv4 unicast
redistribute connected
allocate-label all
!
neighbor 10.0.1.6 # IP address of CE4
remote-as 61001
ebgp-multihop 255
update-source Loopback101
address-family ipv4 unicast
!
interface GigabitEthernet1 # Link to CE3
vrf A
ipv4 address x.x.x.x 255.255.255.0
!
interface GigabitEthernet2 # Link to CE4
vrf B
ipv4 address x.x.x.x 255.255.255.0
!
修訂 | 發佈日期 | 意見 |
---|---|---|
1.0 |
05-Aug-2021 |
初始版本 |