In previous articles we configured the MPLS core with IS-IS and LDP, we configured also MP-BGP between the PEs and the VPNv4 Route Reflector, and we have tested that we have reachability PE to PE for each VRF/Routing Instance.
In this article, we are going to configure the EVEN routers with BGP as the routing protocol between PE and CE. Maybe is the easiest protocol to configure between PE-CE for a service provider, but some extra configuration(as-override) will be necessary if the customer uses same AS in different branches.
Configuring BGP as PE-CE protocol:
R6:
router bgp 65000
bgp log-neighbor-changes
network 12.12.12.12 mask 255.255.255.255
network 66.66.66.66 mask 255.255.255.255
neighbor 192.168.1.1 remote-as 65002
R8:
router bgp 65000
bgp log-neighbor-changes
network 44.44.44.44 mask 255.255.255.255
network 88.88.88.88 mask 255.255.255.255
neighbor 192.168.2.1 remote-as 65001
CiPE:
IOS PE Configuration is really easy, just configure the peer, I have used a different AS-Number and this is the reason for local-as, by default is not necessary. If we don't use the same AS in both CE AS-Override.
address-family ipv4 vrf EVEN
neighbor 192.168.1.2 remote-as 65000
neighbor 192.168.1.2 local-as 65002
neighbor 192.168.1.2 activate
neighbor 192.168.1.2 as-override
JPE:
JunOS configuration is very similar than the cisco for the BGP.
set routing-instances EVEN protocols bgp group R8 peer-as 65000
set routing-instances EVEN protocols bgp group R8 local-as 65001
set routing-instances EVEN protocols bgp group R8 as-override
set routing-instances EVEN protocols bgp group R8 neighbor 192.168.2.2
Reference Link about AS-Override:
Verification:
R6:
The routing table have all the needed routes, ping to the other CE is working, and tracert is also working.
R6#show ip route
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
a - application route
+ - replicated route, % - next hop override
Gateway of last resort is not set
12.0.0.0/32 is subnetted, 1 subnets
C 12.12.12.12 is directly connected, Loopback12
44.0.0.0/32 is subnetted, 1 subnets
B 44.44.44.44 [20/0] via 192.168.1.1, 00:04:51
66.0.0.0/32 is subnetted, 1 subnets
C 66.66.66.66 is directly connected, Loopback66
88.0.0.0/32 is subnetted, 1 subnets
B 88.88.88.88 [20/0] via 192.168.1.1, 00:04:51
192.168.1.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.1.0/24 is directly connected, Ethernet0/0
L 192.168.1.2/32 is directly connected, Ethernet0/0
B 192.168.2.0/24 [20/0] via 192.168.1.1, 00:04:51
R6#ping 44.44.44.44 source loop 66
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 44.44.44.44, timeout is 2 seconds:
Packet sent with a source address of 66.66.66.66
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 3/3/5 ms
R6#trace 44.44.44.44
Type escape sequence to abort.
Tracing the route to 44.44.44.44
VRF info: (vrf in name/id, vrf out name/id)
1 192.168.1.1 [AS 100] 0 msec 1 msec 4 msec
2 * * *
3 10.0.2.2 [MPLS: Labels 16/16 Exp 0] 3 msec 3 msec 4 msec
4 192.168.2.1 [AS 100] 3 msec 4 msec 3 msec
5 192.168.2.2 [AS 100] 4 msec 4 msec *
R6#
R8:
R8 have also the right information in the routing table, connectivity was tested previously from R6.
R8#show ip route
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
a - application route
+ - replicated route, % - next hop override
Gateway of last resort is not set
12.0.0.0/32 is subnetted, 1 subnets
B 12.12.12.12 [20/0] via 192.168.2.1, 00:00:37
44.0.0.0/32 is subnetted, 1 subnets
C 44.44.44.44 is directly connected, Loopback44
66.0.0.0/32 is subnetted, 1 subnets
B 66.66.66.66 [20/0] via 192.168.2.1, 00:00:37
88.0.0.0/32 is subnetted, 1 subnets
C 88.88.88.88 is directly connected, Loopback88
B 192.168.1.0/24 [20/0] via 192.168.2.1, 00:12:48
192.168.2.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.2.0/24 is directly connected, Ethernet0/0
L 192.168.2.2/32 is directly connected, Ethernet0/0
CiPE:
All routes seen via BGP, but remotes with the next hop of the LDP router-ID,
CiPE#show ip route vrf EVEN
Routing Table: EVEN
Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP
a - application route
+ - replicated route, % - next hop override
Gateway of last resort is not set
12.0.0.0/32 is subnetted, 1 subnets
B 12.12.12.12 [20/0] via 192.168.1.2, 00:15:35
44.0.0.0/32 is subnetted, 1 subnets
B 44.44.44.44 [200/0] via 5.5.5.5, 00:27:46
66.0.0.0/32 is subnetted, 1 subnets
B 66.66.66.66 [20/0] via 192.168.1.2, 00:15:35
88.0.0.0/32 is subnetted, 1 subnets
B 88.88.88.88 [200/0] via 5.5.5.5, 00:27:46
192.168.1.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.168.1.0/24 is directly connected, Ethernet0/0
L 192.168.1.1/32 is directly connected, Ethernet0/0
B 192.168.2.0/24 [200/0] via 5.5.5.5, 00:27:46
JPE:
Same information in the routing table of JunOS.
lab@JPE> show route table EVEN.inet.0
EVEN.inet.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
12.12.12.12/32 *[BGP/170] 00:16:49, MED 0, localpref 100, from 1.1.1.1
AS path: 65002 65000 I, validation-state: unverified
> to 10.0.4.1 via ge-0/0/7.0, Push 24, Push 21(top)
44.44.44.44/32 *[BGP/170] 00:43:29, MED 0, localpref 100
AS path: 65000 I, validation-state: unverified
> to 192.168.2.2 via ge-0/0/6.0
66.66.66.66/32 *[BGP/170] 00:16:49, MED 0, localpref 100, from 1.1.1.1
AS path: 65002 65000 I, validation-state: unverified
> to 10.0.4.1 via ge-0/0/7.0, Push 25, Push 21(top)
88.88.88.88/32 *[BGP/170] 00:43:29, MED 0, localpref 100
AS path: 65000 I, validation-state: unverified
> to 192.168.2.2 via ge-0/0/6.0
192.168.1.0/24 *[BGP/170] 00:29:00, MED 0, localpref 100, from 1.1.1.1
AS path: I, validation-state: unverified
> to 10.0.4.1 via ge-0/0/7.0, Push 35, Push 21(top)
192.168.2.0/24 *[Direct/0] 01:38:23
> via ge-0/0/6.0
192.168.2.1/32 *[Local/0] 01:38:24
Local via ge-0/0/6.0