企業使用路由策略控制L3VPN分支間使用者互訪案例
組網圖形
簡介
- BGP/MPLS IP VPN是一種基於MPLS的L3VPN,組網方式靈活,可擴充套件性好,支援大規模部署。利用BGP/MPLS IP VPN技術,可以實現位於不同地理位置的分支間安全互通或隔離。
- 路由策略主要實現了路由過濾和路由屬性設定等功能,它通過改變路由屬性來改變網路流量所經過的路徑。
- BGP/MPLS IP VPN結合路由策略,可以控制VPN路由的釋出和接收,實現分支間特定使用者的互訪。
組網需求
- 如圖1所示,CE1連線分支Site1、CE2連線分支Site2,Site1和Site2之間穿越運營商骨幹網。因業務需求,公司希望Site1和Site2間部分網段的使用者能夠安全互訪。
配置思路
- 1.PE之間配置OSPF,實現骨幹網的IP連通性。
- 2.PE之間配置MPLS基本能力和MPLS LDP,建立MPLS LSP公網隧道,傳輸VPN資料。
- 3.PE上配置VPN例項,接入VPN使用者,並指定不同的VPN Target,實現分支間的使用者隔離。
- 4.PE上配置路由策略,改變通過路由策略過濾的路由的VPN Target,實現分支間特定網段的使用者互通。
- 5.CE與PE之間配置EBGP,交換VPN路由資訊。
- 6.PE之間配置MP-IBGP,交換VPN路由資訊。
操作步驟
- 1.在MPLS骨幹網上配置IGP協議,實現骨幹網PE間的互通
# 配置PE1。
<HUAWEI> system-view [HUAWEI] sysname PE1 [PE1] interface loopback 1 [PE1-LoopBack1] ip address 1.1.1.9 32 [PE1-LoopBack1] quit [PE1] vlan batch 10 100 [PE1] interface gigabitethernet 1/0/0 [PE1-GigabitEthernet1/0/0] port link-type trunk [PE1-GigabitEthernet1/0/0] port trunk allow-pass vlan 10 [PE1-GigabitEthernet1/0/0] quit [PE1] interface gigabitethernet 2/0/0 [PE1-GigabitEthernet2/0/0] port link-type trunk [PE1-GigabitEthernet2/0/0] port trunk allow-pass vlan 100 [PE1-GigabitEthernet2/0/0] quit [PE1] interface vlanif 100 [PE1-Vlanif100] ip address 172.10.1.1 24 [PE1-Vlanif100] quit [PE1] ospf 1 [PE1-ospf-1] area 0 [PE1-ospf-1-area-0.0.0.0] network 172.10.1.0 0.0.0.255 [PE1-ospf-1-area-0.0.0.0] network 1.1.1.9 0.0.0.0 [PE1-ospf-1-area-0.0.0.0] quit [PE1-ospf-1] quit
# 配置PE2。
<HUAWEI> system-view [HUAWEI] sysname PE2 [PE2] interface loopback 1 [PE2-LoopBack1] ip address 2.2.2.9 32 [PE2-LoopBack1] quit [PE2] vlan batch 10 100 [PE2] interface gigabitethernet 1/0/0 [PE2-GigabitEthernet1/0/0] port link-type trunk [PE2-GigabitEthernet1/0/0] port trunk allow-pass vlan 10 [PE2-GigabitEthernet1/0/0] quit [PE2] interface gigabitethernet 2/0/0 [PE2-GigabitEthernet2/0/0] port link-type trunk [PE2-GigabitEthernet2/0/0] port trunk allow-pass vlan 100 [PE2-GigabitEthernet2/0/0] quit [PE2] interface vlanif 100 [PE2-Vlanif100] ip address 172.10.1.2 24 [PE2-Vlanif100] quit [PE2] ospf 1 [PE2-ospf-1] area 0 [PE2-ospf-1-area-0.0.0.0] network 172.10.1.0 0.0.0.255 [PE2-ospf-1-area-0.0.0.0] network 2.2.2.9 0.0.0.0 [PE2-ospf-1-area-0.0.0.0] quit [PE2-ospf-1] quit
配置完成後,PE1、PE2之間應能建立OSPF鄰居關係,執行display ospf peer命令可以看到鄰居狀態為Full。執行display ip routing-table命令可以看到PE之間學習到對方的Loopback1路由。
- 2.在MPLS骨幹網上配置MPLS基本能力和MPLS LDP,建立LDP LSP
# 配置PE1。
[PE1] mpls lsr-id 1.1.1.9 [PE1] mpls [PE1-mpls] quit [PE1] mpls ldp [PE1-mpls-ldp] quit [PE1] interface vlanif 100 [PE1-Vlanif100] mpls [PE1-Vlanif100] mpls ldp [PE1-Vlanif100] quit
# 配置PE2。
[PE2] mpls lsr-id 2.2.2.9 [PE2] mpls [PE2-mpls] quit [PE2] mpls ldp [PE2-mpls-ldp] quit [PE2] interface vlanif 100 [PE2-Vlanif100] mpls [PE2-Vlanif100] mpls ldp [PE2-Vlanif100] quit
上述配置完成後,PE1與PE2之間應能建立LDP會話,執行display mpls ldp session命令可以看到顯示結果中Status項為“Operational”。
- 3.在PE裝置上配置VPN例項,將CE接入PE
# 配置PE1。
[PE1] ip vpn-instance vpna [PE1-vpn-instance-vpna] route-distinguisher 100:1 [PE1-vpn-instance-vpna-af-ipv4] vpn-target 111:1 both [PE1-vpn-instance-vpna-af-ipv4] quit [PE1-vpn-instance-vpna] quit [PE1] interface vlanif 10 [PE1-Vlanif10] ip binding vpn-instance vpna [PE1-Vlanif10] ip address 192.168.1.1 24 [PE1-Vlanif10] quit
# 配置PE2。
[PE2] ip vpn-instance vpna [PE2-vpn-instance-vpna] route-distinguisher 200:1 [PE2-vpn-instance-vpna-af-ipv4] vpn-target 222:1 both [PE2-vpn-instance-vpna-af-ipv4] quit [PE2-vpn-instance-vpna] quit [PE2] interface vlanif 10 [PE2-Vlanif10] ip binding vpn-instance vpna [PE2-Vlanif10] ip address 192.168.2.1 24 [PE2-Vlanif10] quit
# 按圖配置各CE1和CE2的介面IP地址。
<HUAWEI> system-view [HUAWEI] sysname CE1 [CE1] vlan batch 10 [CE1] interface gigabitethernet 1/0/0 [CE1-GigabitEthernet1/0/0] port link type trunk [CE1-GigabitEthernet1/0/0] port trunk allow-pass vlan 10 [CE1-GigabitEthernet1/0/0] quit [CE1] interface vlanif 10 [CE1-Vlanif10] ip address 192.168.1.2 24 [CE1-Vlanif10] quit
<HUAWEI> system-view [HUAWEI] sysname CE2 [CE2] vlan batch 10 [CE2] interface gigabitethernet 1/0/0 [CE2-GigabitEthernet1/0/0] port link type trunk [CE2-GigabitEthernet1/0/0] port trunk allow-pass vlan 10 [CE2-GigabitEthernet1/0/0] quit [CE2] interface vlanif 10 [CE2-Vlanif10] ip address 192.168.2.2 24 [CE2-Vlanif10] quit
配置完成後,在PE裝置上執行display ip vpn-instance verbose命令可以看到VPN例項的配置情況。各PE能ping通自己接入的CE。
說明:
當PE上有多個綁定了同一個VPN的介面,則使用ping -vpn-instance命令ping對端PE接入的CE時,要指定源IP地址,即要指定ping -vpn-instance vpn-instance-name -a source-ip-address dest-ip-address命令中的引數-a source-ip-address,否則可能ping不通。
- 4.配置路由策略
# 配置PE1。
[PE1] ip ip-prefix ipPrefix1 index 10 permit 192.168.1.0 24 greater-equal 24 less-equal 32 [PE1] route-policy vpnroute permit node 1 [PE1-route-policy] if-match ip-prefix ipPrefix1 [PE1-route-policy] apply extcommunity rt 222:1 [PE1-route-policy] quit [PE1] ip vpn-instance vpna [PE1-vpn-instance-vpna] export route-policy vpnroute [PE1-vpn-instance-vpna] quit
# 配置PE2。
[PE2] ip ip-prefix ipPrefix1 index 10 permit 192.168.2.0 24 greater-equal 24 less-equal 32 [PE2] route-policy vpnroute permit node 1 [PE2-route-policy] if-match ip-prefix ipPrefix1 [PE2-route-policy] apply extcommunity rt 111:1 [PE2-route-policy] quit [PE2] ip vpn-instance vpna [PE2-vpn-instance-vpna] export route-policy vpnroute [PE2-vpn-instance-vpna] quit
- 5.在PE與CE之間建立EBGP對等體關係,引入VPN路由
# 配置CE1。CE2的配置與CE1類似,此處不作贅述。
[CE1] bgp 65410 [CE1-bgp] peer 192.168.1.1 as-number 100 [CE1-bgp] import-route direct [CE1-bgp] quit
# 配置PE1。PE2的配置與PE1類似,此處不作贅述。
[PE1] bgp 100 [PE1-bgp] ipv4-family vpn-instance vpna [PE1-bgp-vpna] peer 192.168.1.2 as-number 65410 [PE1-bgp-vpna] import-route direct [PE1-bgp-vpna] quit [PE1-bgp] quit
配置完成後,在PE裝置上執行display bgp vpnv4 vpn-instance vpna peer命令,可以看到PE與CE之間的BGP對等體關係已建立,顯示結果中State項為“Established”。
- 6.在PE之間建立MP-IBGP對等體關係
# 配置PE1。
[PE1] bgp 100 [PE1-bgp] peer 2.2.2.9 as-number 100 [PE1-bgp] peer 2.2.2.9 connect-interface loopback 1 [PE1-bgp] ipv4-family vpnv4 [PE1-bgp-af-vpnv4] peer 2.2.2.9 enable [PE1-bgp-af-vpnv4] quit [PE1-bgp] quit
# 配置PE2。
[PE2] bgp 100 [PE2-bgp] peer 1.1.1.9 as-number 100 [PE2-bgp] peer 1.1.1.9 connect-interface loopback 1 [PE2-bgp] ipv4-family vpnv4 [PE2-bgp-af-vpnv4] peer 1.1.1.9 enable [PE2-bgp-af-vpnv4] quit [PE2-bgp] quit
配置完成後,在PE裝置上執行display bgp peer或display bgp vpnv4 all peer命令,可以看到PE之間的BGP對等體關係已建立,並達到Established狀態。
- 7.檢查配置結果
# 在PE上執行ping -vpn-instance命令,可以Ping通對端PE接入的Site。
以PE1的顯示為例:
[PE1] ping -vpn-instance vpna 192.168.2.2 PING 192.168.2.2: 56 data bytes, press CTRL_C to break Reply from 192.168.2.2: bytes=56 Sequence=1 ttl=254 time=6 ms Reply from 192.168.2.2: bytes=56 Sequence=2 ttl=254 time=5 ms Reply from 192.168.2.2: bytes=56 Sequence=3 ttl=254 time=7 ms Reply from 192.168.2.2: bytes=56 Sequence=4 ttl=254 time=6 ms Reply from 192.168.2.2: bytes=56 Sequence=5 ttl=254 time=5 ms --- 192.168.2.2 ping statistics --- 5 packet(s) transmitted 5 packet(s) received 0.00% packet loss round-trip min/avg/max = 5/5/7 ms
&n