11-26-2020 08:59 AM
I am trying to make work something ehich is probably not possible with EIGRP but I would like to confirm it befere deciding to use a different routing protocol. I have an escenario where I have the following devices:
1- Layer 3 CoreSwitch with EIGRP running in the vlan 10.
2- ISP1 Router MPLS with EIGRP running in the vlan 10.
3- ISP2 Router MPLS with EIGRP running in the vlan 10.
(As you can see, the 3 devices are connected in the same vlan/subnet and all of them are EIGRP neighbors)
Routes advertised by ISP1 have better EIGRP metric and this is ok but I would need to modify the metric in the CoreSwitch, to prefer one subnet advertised from ISP2.
I know how to locally modify metrics in EIGRP per neighbor, for example:
L3SW(config)#access-list 22 permit 192.168.30.0 L3SW(config)#router eigrp 55 L3SW(config-router)#offset-list 22 in 10000 vlan10 L3SW(config-router)#exit L3SW(config)#end
The problem I have is that both neighbors are known through the same SVI (int vlan 10), and I am not sure if there is anything I could do just with EIGRP to fix this (I am thinking about using static routes with a track but I would prefer to achieve this just with EIGRP). Is this possible to do?
Solved! Go to Solution.
11-26-2020 10:27 AM
Hello,.
you could change the distance. Let's say the IP address of ISP 1 is 10.10.10.1. The below config would increase the distance to 91 for that one subnet:
access-list 22 permit 192.168.30.0
!
router eigrp 55
distance 91 10.10.10.1 0.0.0.0 22
11-26-2020 10:27 AM
Hello,.
you could change the distance. Let's say the IP address of ISP 1 is 10.10.10.1. The below config would increase the distance to 91 for that one subnet:
access-list 22 permit 192.168.30.0
!
router eigrp 55
distance 91 10.10.10.1 0.0.0.0 22
11-26-2020 11:13 AM - edited 11-26-2020 11:25 AM
Hello George,
I think what you suggest won’t fix what I need or maybe I am not getting your point.
let’s suppose that these are my IPs:
Core switch IP: 10.10.10.5/27
ISP1 IP: 10.10.10.1/27
ISP2 IP: 10.10.10.2/27
If I perform this change, I think that I would change the AD for all routes learned from one neighbor and it is not what I need. I want all routes going towards ISP1, except one which should go towards ISP2. Remember that ISP1 and ISP2 are connected to the core switch in the same vlan and same subnet. Plus three devices are EIGRP neighbors and they looks directly connected (at least logically).
Plus please keep in mind that I receive the same subnets from both ISPs. So I need a way to prefer a specific subnet from ISP2 which actually has a worse EIGRP metric for all subnets.
11-26-2020 12:21 PM
I believe that the suggestion from @Georg Pauwen really is what you are looking for. Perhaps this article which discusses this kind of change might help you understand it better:
Also perhaps it might be helpful to clarify what each of the parameters in the command are doing
distance 91 10.10.10.1 0.0.0.0 22
91 is the new administrative distance
10.10.10.1 0.0.0.0 is the particular neighbor for whom the change is to be made
22 is the access list which specifies the prefix for which the change is to be made.
11-26-2020 12:23 PM
Hello,
--> If I perform this change, I think that I would change the AD for all routes learned from one neighbor and it is not what I need.
No, it will only change the administrative distance for the one subnet specified in the access list. The rest of the routes will keep being routed through ISP1.
11-26-2020 12:31 PM - edited 11-26-2020 12:31 PM
Ok, now I get it. Going to test this and let you know but it looks good (I think I saw your answer before you edited it and for this reason I did not understand it but it is now clearer for me).
Thanks!
11-26-2020 01:23 PM
BTW, I forgot to answer if this could also be done in NXOS. I am trying to find how to translate these IOS commands to NXOS but without success for the moment. Thank you.
11-26-2020 01:44 PM
Hello,
Cisco has an IOS to NXOS conversion tool, check the link below:
11-26-2020 01:51 PM - edited 11-26-2020 02:05 PM
Yes, I have tried it but it says: No mapping for this command: !No Mapping: distance 91 10.10.10.1 0.0.0.0 22
I have found this: https://community.cisco.com/t5/routing/how-to-change-ad-of-specific-routes-in-eigrp-nx-os-6-2/td-p/2517987
I am going to check a bit more about table-map in Nexus to see if I can make work this on a NX-OS device. Thank you very much for all the help!
EDIT: This config is what I will try in some days and let you know if it works fine:
router eigrp 55
address-family ipv4 unicast
table-map vpls-route-AD
route-map vpls-route-AD permit 10
match ip route-source prefix-list vpls-route-source
match ip address prefix-list vpls-route
set distance 91
ip prefix-list vpls-route-source seq 5 permit 10.10.10.1/32
ip prefix-list vpls-route seq 5 permit 192.168.30.0/24
11-26-2020 02:13 PM
Hello,
not sure if this works. NX-OS does not have the 'distance' command, and since both your neighbors are connected to one (VLAN 10) interface, there is not really a way to distinguish where the route comes from...
Either way, curious to know the results of your testing...
11-26-2020 02:19 PM
According to what I can understand in the below configuration, we can specify the neighbor with the match ip route-source prefix-list vpls-route-source inside the route-map:
router eigrp 55
address-family ipv4 unicast
table-map vpls-route-AD
route-map vpls-route-AD permit 10
match ip route-source prefix-list vpls-route-source
match ip address prefix-list vpls-route
set distance 91
ip prefix-list vpls-route-source seq 5 permit 10.10.10.1/32
ip prefix-list vpls-route seq 5 permit 192.168.30.0/24
But yes, not totally sure if this will work. I will let you know, thanks
11-29-2020 11:22 PM
Hi Morabus,
Actually there is a way you can leave the AD the same as 90 and adjust the composite metric!
We can achieve this by using a distribute-list and a route-map.
route-map SET_METRIC permit 10
match ip next-hop 10
set metric +5000
!
route-map SET_METRIC permit 20
!
!
ip access-list standard 10
10 permit host 192.168.30.5 (Or whatever the gateway is of your ISP-2)
!
router eigrp 100
distribute-list route-map SET_METRIC in
!
This will adjust the metric by +5000 for every prefix learnt from your EIGRP neighbour 192.168.30.5
I love to use the 'match ip next-hop' especially when configuring BGP. I agree that in this scenario you have to get creative!
Hope this helps!
11-29-2020 11:27 PM
This configuration is in-fact supported by NX-OS too.
11-30-2020 05:15 AM
Hi Benjamin,
I suppose that I could also specify inside the route-map, the subnet I want to change the metric, right? I am planning to make this change tomorrow, so I will also test this, thank you very much
Best regards,
11-30-2020 05:48 AM
That's correct, just a simple standard ACL or prefix list which will allow us to only apply the metric increase for those matched prefixes.
I labbed this up myself using my CSR1000Vs, although not NXOS, but same principle really.
Let us know how it goes!
[ACL 15 is used to catch the specific prefixes we want to alter the metric for]
route-map SET_METRIC permit 10
match ip next-hop 10
match ip address 15
set metric +5000
!
route-map SET_METRIC permit 20
!
!
ip access-list standard 10
10 permit host 192.168.30.5 (Or whatever the gateway is of your ISP-2)
!
ip access-list standard 15
10 permit 10.10.10.0 0.0.0.255
20 permit 20.20.20.0 0.0.0.255
!
router eigrp 100
distribute-list route-map SET_METRIC in
!
!
!-------!
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide