… updated on Monday, December 28, 2020 10:32 UTC
Using EIGRP in MPLS VPN Networks
We described EIGRP-in-VRF in MPLS and VPN Architectures, Volume II. A few details have changed in the meantime; you have to configure the following features to get EIGRP running within MPLS/VPN environment:
- The autonomous-system command within the VRF address family is mandatory, even if the VRF AS number matches the EIGRP process number.
- The default BGP-to-EIGRP redistribution metric has to be configured, otherwise remote EIGRP routes will not be redistributed even though they have EIGRP metric encoded in extended BGP communities.
- Things work best if you disable auto-summary on PE-routers.
Support for EIGRP as a PE-CE routing protocol in MPLS VPN environment has been introduced in Cisco IOS releases 12.2(15)T, 12.3, 12.0(22)S and 12.2(18)S. The basic configuration for simple VPNs having sites with a single PE-CE link is very simple:
- EIGRP routing process is configured for the desired VRF.
- Two-way redistribution between PE-CE EIGRP and core BGP is configured within the VRF address family.
EIGRP routes redistributed from VRF address family into VPNv4 BGP carry EIGRP-specific extended communities that transport EIGRP route attributes (metric vector, route type and AS number) across core BGP. Routes sourced by EIGRP in one site are thus redistributed as internal EIGRP routes with proper vector and composite metric into EIGRP running on other sites.
Configuration
The VRF and EIGRP configuration on the PE-R1 router in the sample network shown in the following figure is included below.
ip vrf Cust
rd 65000:1
route-target export 65001:1
route-target import 65001:1
!
interface Serial1/4
description Link to S2
ip vrf forwarding Cust
ip address 10.0.7.9 255.255.255.252
!
router eigrp 11
!
address-family ipv4 vrf Cust
autonomous-system 234
network 0.0.0.0
no auto-summary
redistribute bgp 65000 metric 2000 1000 255 1 1500
exit-address-family
!
router bgp 65000
!
address-family ipv4 vrf Cust
no synchronization
redistribute eigrp 234
exit-address-family
When configuring EIGRP on the PE-router, follow these rules:
- A single global EIGRP process can be used for multiple VRFs regardless of the EIGRP AS number used in the global and VRF EIGRP processes.
- The AS number used by the VRF EIGRP process must be configured with the autonomous-system router configuration command, otherwise the per-VRF EIGRP configuration will not be saved into NVRAM.
- The EIGRP process number used within the ipv4 vrf address family is the number configured with the autonomous-system command, not the global process number configured with the router eigrp command. In the sample configuration, you have to use redistribute eigrp 234 when redistributing from EIGRP to BGP within the Cust VRF.
- EIGRP auto-summary should be disabled.
- Default redistribution metric has to be specified on BGP-to-EIGRP redistribution, either with the default-metric or redistribute bgp metric router configuration command. The default metric is ignored for VPN EIGRP routes redistributed from BGP into EIGRP, but the route redistribution does not work without the default metric.
Monitoring
Full complement of EIGRP show commands is available for EIGRP process running in VRF; you just need to add vrf name to the show commands. You can view the VRF EIGRP neighbors:
PE-R1#show ip eigrp vrf Cust neighbors
EIGRP-IPv4 neighbors for process 234
H Address Interface Hold Uptime SRTT RTO Q Seq
(sec) (ms) Cnt Num
0 10.0.7.10 Se1/4 14 00:31:52 21 200 0 105
The EIGRP topology table contains local routes as well as VPNv4 routes redistributed from BGP (indicated by the via VPNv4 Sourced keyword):
PE-R1#show ip eigrp vrf Cust topology
EIGRP-IPv4 Topology Table for AS(234)/ID(10.0.7.9) Routing Table: Cust
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
r - reply Status, s - sia Status
P 10.0.7.8/30, 1 successors, FD is 2169856
via Connected, Serial1/4
P 10.0.1.7/32, 1 successors, FD is 2297856
via 10.0.7.10 (2297856/128256), Serial1/4
P 10.2.5.0/24, 1 successors, FD is 28160
via VPNv4 Sourced (28160/0)
P 10.0.1.5/32, 1 successors, FD is 2297856
via VPNv4 Sourced (2297856/0)
P 10.2.6.0/24, 1 successors, FD is 2195456
via 10.0.7.10 (2195456/281600), Serial1/4
P 10.0.7.28/30, 1 successors, FD is 2169856
via VPNv4 Sourced (2169856/0)
The local EIGRP routes appear as native EIGRP routes in the VRF IP routing table; remote EIGRP routes appear as BGP routes on the PE-router:
PE-R1#show ip route vrf Cust | begin Gateway
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 14 subnets, 3 masks
B 10.0.1.5/32 [200/2297856] via 10.0.7.26, 00:29:40
D 10.0.1.7/32 [90/2297856] via 10.0.7.10, 00:33:19, Serial1/4
C 10.0.7.8/30 is directly connected, Serial1/4
B 10.0.7.28/30 [200/0] via 10.0.7.26, 00:29:25
B 10.2.5.0/24 [200/0] via 10.0.1.1, 00:30:55
D 10.2.6.0/24 [90/2195456] via 10.0.7.10, 00:33:19, Serial1/4
However, the same routes appear as internal EIGRP routes on the CE-router:
S2#show ip route | begin Gateway
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 13 subnets, 3 masks
C 10.0.7.8/30 is directly connected, Serial1/0
C 10.0.1.7/32 is directly connected, Loopback0
D 10.2.5.0/24 [90/2172416] via 10.0.7.9, 00:31:46, Serial1/0
D 10.0.1.5/32 [90/2809856] via 10.0.7.9, 00:30:19, Serial1/0
C 10.2.6.0/24 is directly connected, FastEthernet0/0
D 10.0.7.28/30 [90/2681856] via 10.0.7.9, 00:30:17, Serial1/0