1. 程式人生 > >企業使用路由策略控制L3VPN分支間使用者互訪案例

企業使用路由策略控制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