1.ISP内,R2和R3建立VPNv4 BGP邻居。
1.PE和CE之间运行IGP或BGP,这里演示用EIGRP、OSPF和BGP。
2.让R4和R5之间的路由互传,数据层面数据能通。
一:配置每个路由器的物理接口地址。
R1(config)#interface loopback 0
R1(config-if)#ip address 1.1.1.1 255.255.255.255
R1(config-if)#no shutdown
R1(config-if)#exit
R1(config)#interface ethernet 0/0
R1(config-if)#ip address 12.1.1.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#exit
R1(config)#interface ethernet 0/1
R1(config-if)#ip address 13.1.1.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#exit
R2(config)#interface loopback 0
R2(config-if)#ip address 2.2.2.2 255.255.255.255
R2(config-if)#no shutdown
R2(config-if)#exit
R2(config)#interface ethernet 0/0
R2(config-if)#ip address 24.1.1.2 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#exit
R2(config)#interface ethernet 0/1
R2(config-if)#ip address 12.1.1.2 255.255.255.0
R2(config-if)#no shutdown
R2(config)#end
R3(config)#interface loopback 0
R3(config-if)#ip address 3.3.3.3 255.255.255.255
R3(config-if)#no shutdown
R3(config-if)#exit
R3(config)#interface ethernet 0/0
R3(config-if)#ip address 13.1.1.3 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#exit
R3(config)#interface ethernet 0/1
R3(config-if)#ip address 35.1.1.3 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#exit
R4(config)#interface loopback 0
R4(config-if)#ip address 4.4.4.4 255.255.255.255
R4(config-if)#no shutdown
R4(config-if)#exit
R4(config)#interface ethernet 0/1
R4(config-if)#ip address 24.1.1.4 255.255.255.0
R4(config-if)#no shutdown
R4(config-if)#exit
R5(config)#interface loopback 0
R5(config-if)#ip address 5.5.5.5 255.255.255.255
R5(config-if)#no shutdown
R5(config-if)#exit
R5(config)#interface ethernet 0/0
R5(config-if)#ip address 35.1.1.5 255.255.255.0
R5(config-if)#no shutdown
R5(config-if)#exit
二:在ISP内网运行OSPF,宣告自连接口和自身的环回口(32位)。
R1(config)#router ospf 110
R1(config-router)#router-id 1.1.1.1
R1(config-router)#network 1.1.1.1 0.0.0.0 area 0
R1(config-router)#network 12.1.1.1 0.0.0.0 area 0
R1(config-router)#network 13.1.1.1 0.0.0.0 area 0
R1(config-router)#end
R2(config)#router ospf 110
R2(config-router)#router-id 2.2.2.2
R2(config-router)#network 2.2.2.2 0.0.0.0 area 0
R2(config-router)#network 12.1.1.2 0.0.0.0 area 0
R2(config-router)#end
R3(config)#router ospf 110
R3(config-router)#router-id 3.3.3.3
R3(config-router)#network 3.3.3.3 0.0.0.0 area 0
R3(config-router)#network 13.1.1.3 0.0.0.0 area 0
R3(config-router)#end
三:启用MPLS。在全局和内网的接口启用MPLS。
R1(config)#ip cef
R1(config)#mpls ip
R1(config)#mpls label protocol ldp
R1(config)#mpls ldp router-id loopback 0 force
R1(config)#interface range ethernet 0/0-1
R1(config-if-range)#mpls ip
R1(config-if-range)#end
R2(config)#ip cef
R2(config)#mpls ip
R2(config)#mpls label protocol ldp
R2(config)#mpls ldp router-id loopback 0 force
R2(config)#interface ethernet 0/1
R2(config-if)#mpls ip
R2(config-if)#end
R3(config)#ip cef
R3(config)#mpls ip
R3(config)#mpls label protocol ldp
R3(config)#mpls ldp router-id loopback 0 force
R3(config)#interface ethernet 0/0
R3(config-if)#mpls ip
R3(config-if)#end
四:检查
1.检查哪些接口启用了MPLS,哪些接口启用了LDP。
2.查看LDP的邻居表。使用router-id表示自己的邻居,邻居表里会包含他的所有接口的地址(被隐藏地址)。
3.查看LIB。
4.查看LFIB。
5.查看FIB。
6.查看路由里面包含的标签。
五:PE到CE之间启用VRF。
在R2上启用一个比较低端的VRF,他只能支持IPV4.
R2(config)#ip vrf a-bj
R2(config-vrf)#rd 10:10
R2(config-vrf)#route-target both 10:10
R2(config-vrf)#exit
R2(config)#interface ethernet 0/0
R2(config-if)#ip vrf forwarding a-bj
R2(config-if)#ip address 24.1.1.2 255.255.255.0
R2(config-if)#no shutdown
R2(config-if)#end
虽然e0/0配置了IP地址,但是看不到24.1.1.0/24网段的路由。
查看方式:
在R3上启用一个高端的VRF,它既能IPv4又能为IPv6提供服务。
R3(config)#vrf definition a-sh
R3(config-vrf)#rd 10:10
R3(config-vrf)#address-family ipv4
R3(config-vrf-af)#route-target both 10:10
R3(config-vrf-af)#exit
R3(config-vrf-af)#exit-address-family
R3(config-vrf)#exit
R3(config)#interface ethernet 0/1
R3(config-if)#vrf forwarding a-sh
R3(config-if)#ip address 35.1.1.3 255.255.255.0
R3(config-if)#no shutdown
R3(config-if)#exit
六:PE到CE之间启用IGP。
①R4----R2用EIGRP,R3----R5用OSPF。
R2(config)#router eigrp CCIE
R2(config-router)#address-family ipv4 vrf a-bj autonomous-system 24
R2(config-router-af)#no shutdown
R2(config-router-af)#topology base
R2(config-router-af-topology)#no auto-summary
R2(config-router-af-topology)#exit-af-topology
R2(config-router-af)#network 24.1.1.2 0.0.0.0
R2(config-router-af)#network 2.2.2.2 0.0.0.0
R2(config-router-af)#end
R4(config)#router eigrp CCIE
R4(config-router)#address-family ipv4 unicast autonomous-system 24
R4(config-router-af)#eigrp router-id 4.4.4.4
R4(config-router-af)#network 4.4.4.4 0.0.0.0
R4(config-router-af)#network 24.1.1.4 0.0.0.0
R4(config-router-af)#end
R3(config)#router ospf 35 vrf a-sh
R3(config-router)#router-id 35.1.1.3
R3(config-router)#network 35.1.1.3 0.0.0.0 area 0
R3(config-router)#end
R5(config)#router ospf 35
R5(config-router)#router-id 5.5.5.5
R5(config-router)#network 5.5.5.5 0.0.0.0 area 0
R5(config-router)#network 35.1.1.5 0.0.0.0 area 0
R5(config-router)#end
1:PE之间的路由互导,R2和R3之间建立VPNv4的BGP邻居。
R2(config)#router bgp 10
R2(config-router)#bgp router-id 2.2.2.2
R2(config-router)#no auto-summary
R2(config-router)#no synchronization
R2(config-router)#no bgp default ipv4-unicast
R2(config-router)#neighbor 3.3.3.3 remote-as 10
R2(config-router)#neighbor 3.3.3.3 update-source loopback 0
R2(config-router)#address-family v4 unicast
R2(config-router-af)#neighbor 3.3.3.3 activate
R2(config-router-af)#neighbor 3.3.3.3 send-community extended
R2(config-router-af)#end
R3(config)#router bgp 10
R3(config-router)#bgp router-id 3.3.3.3
R3(config-router)#no auto-summary
R3(config-router)#no synchronization
R3(config-router)#no bgp default ipv4-unicast
R3(config-router)#neighbor 2.2.2.2 remote-as 10
R3(config-router)#neighbor 2.2.2.2 update-source loopback 0
R3(config-router)#address-family v4 unicast
R3(config-router-af)#neighbor 2.2.2.2 activate
R3(config-router-af)#neighbor 2.2.2.2 send-community extended
R3(config-router-af)#end
2:双向重分发。
R2(config)#router eigrp CCIE
R2(config-router)#address-family ipv4 vrf a-bj autonomous-system 24
R2(config-router-af)#topology base
R2(config-router-af-topology)#redistribute bgp 10 metric 10000 100 255 1 1500
R2(config-router-af-topology)#exit-af-topology
R2(config-router-af)#exit-address-family
R2(config-router)#router bgp 10
R2(config-router)#address-family ipv4 vrf a-bj
R2(config-router-af)#redistribute eigrp 24
R2(config-router-af)#end
R3(config)#router bgp 10
R3(config-router)#address-family ipv4 unicast vrf a-sh
R3(config-router-af)#redistribute ospf 35 vrf a-sh
R3(config-router-af)#exit-address-family
R3(config-router)#exit
R3(config)#router ospf 35 vrf a-sh
R3(config-router)#redistribute bgp 10 subnets
R3(config-router)#end
3:检查连通性。
4:如果运营商出于安全角度考虑,他不希望对外展示内网的结构,不希望让别人看到标签交互的过程。
在PE路由器上修改TTL的策略,保证外网的包,从外到内添加一个标签头,并且要把TTL设置为255.
R2(config)#no mpls ip propagate-ttl
R2(config)#end
R3(config)#no mpls ip propagate-ttl
R3(config)#end
七:PE到CE之间启用BGP。
删除第六步的无关配置:
R4(config)#no router eigrp CCIE
R2(config)#no router eigrp CCIE
R2(config)#router bgp 10
R2(config-router)#address-family ipv4 vrf a-bj
R2(config-router-af)#no redistribute eigrp 24
R3(config)#no router ospf 35 vrf a-sh
R3(config)#router bgp 10
R3(config-router)#address-family ipv4 vrf a-sh
R3(config-router-af)#no redistribute ospf 35 vrf a-sh
R5(config)#no router ospf 35
建立BGP的关系:
R2(config)#router bgp 10
R2(config-router)#address-family ipv4 vrf a-bj
R2(config-router-af)#neighbor 24.1.1.4 remote-as 4
R2(config-router-af)#neighbor 24.1.1.4 activate
R3(config)#router bgp 10
R3(config-router)#address-family ipv4 vrf a-sh
R3(config-router-af)#neighbor 35.1.1.5 remote-as 5
R3(config-router-af)#neighbor 35.1.1.5 activate
R4(config)#router bgp 4
R4(config-router)#bgp router-id 4.4.4.4
R4(config-router)#no auto-summary
R4(config-router)#no synchronization
R4(config-router)#neighbor 24.1.1.2 remote-as 10
R4(config-router)#redistribute connected
R4(config-router)#end
R5(config)#router bgp 5
R5(config-router)#bgp router-id 5.5.5.5
R5(config-router)#no auto-summary
R5(config-router)#no synchronization
R5(config-router)#neighbor 35.1.1.3 remote-as 10
R5(config-router)#redistribute connected
R5(config-router)#end