cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
928
Views
2
Helpful
12
Replies

EIGRP distribute-list with route map seems not working

Martin Skvor
Level 1
Level 1

Hi Guys,

we have and old 3750 with IOS 12.2(55)SE3. Under our EIGRP process we have distribute-list applied to specific interface with route-map in order to filter inbound and outbound prefixes - mainly just the default route. Interface is connected to VPLS. Defualt route on 3750 is redistributed to EIGRP from BGP. Goal is to deny any default route from VPLS and send default route from 3750 with worst metric then other routes. Issue is that on every VPLS eigrp peer default route from that 3750 router is received with default metric despite that distribute list configured in outbound direction. See config below.

3750 Switch:

router eigrp 700
distribute-list route-map VPLS-IN in GigabitEthernet0/0/0
distribute-list route-map VPLS-OUT out GigabitEthernet0/0/0
default-metric 1000 100 255 100 1500
redistribute bgp 65001 route-map BGP2EIGRP
!
!
route-map VPLS-IN, deny, sequence 10
Match clauses:
ip address prefix-lists: DEFAULT-ROUTE
Set clauses:
Policy routing matches: 0 packets, 0 bytes
route-map VPLS-IN, permit, sequence 100
Match clauses:
Set clauses:
Policy routing matches: 0 packets, 0 bytes
!
route-map VPLS-OUT, permit, sequence 10
Match clauses:
ip address prefix-lists: DEFAULT-ROUTE
Set clauses:
metric 1000 100000 255 1 1500
Policy routing matches: 0 packets, 0 bytes
route-map VPLS-OUT, permit, sequence 100
Match clauses:
Set clauses:
Policy routing matches: 0 packets, 0 bytes
!
!
ip prefix-list DEFAULT-ROUTE: 1 entries
seq 5 permit 0.0.0.0/0

VPLS peer connected to VPLS with Gig interface:

sh ip eigrp topology 0.0.0.0
EIGRP-IPv4 Topology Entry for AS(700)/ID(10.30.185.254) for 0.0.0.0/0
State is Passive, Query origin flag is 1, 1 Successor(s), FD is 2560768
Descriptor Blocks:
10.6.30.222 (Vlan700), from 10.6.30.222, Send flag is 0x0
Composite metric is (2585856/2585600), route is External
Vector metric:
Minimum bandwidth is 1000 Kbit
Total delay is 1010 microseconds
Reliability is 255/255
Load is 100/255
Minimum MTU is 1500
Hop count is 1
External data:
Originating router is 10.0.0.223
AS number of route is 65001
External protocol is BGP, external metric is 0
Administrator tag is 700 (0x000002BC)

total Delay seems like based on default metric and not reflecting that what is set in route-map metric 1000 100000 255 1 1500 which i assume would be total delay 1000010

Any idea what could cause that?

Also this is what i see from sh ip protocols on 3750 - filter by and i would assume to see route-map name as normally there should be ACL number if that would be used.

Routing Protocol is "eigrp 700"
Outgoing update filter list for all interfaces is not set
GigabitEthernet0/0/0 filtered by
Incoming update filter list for all interfaces is not set
GigabitEthernet0/0/0 filtered by
Default networks flagged in outgoing updates
Default networks accepted from incoming updates

12 Replies 12

check below comment 

well i believe that units are fine.

I have default metric set as default-metric 1000 100 255 100 1500 on 3750 - which is 100 of tens microseconds which gives me 1000 microseconds and that is what is see on Peer - default 1000 usec + 10usec of gig interface = 1010usec total delay.

question is why i dont see on Peer that high delay we i set within VPLS-OUT route map for default route

check below comment 

sure, on 3750 which is EIGRP neighbor to PEER switch over VPLS, Im sending default route over EIGRP and on PEER it should be received with metric set by VPLS-OUT route map on 3750, but it is not the case. Default route on PEER is visible with - default metric set under EIGRP process on 3750 + delay of interface. Im wondering if maybe that route map was somehow not applied for Outbound eigrp routes from 3750.

I run lab changer delay per-interface and in redistribute static, 
the value we enter is multi by 10 for the per-interface delay and what we specify in metric command. 
case 1 
per-interface delay 50000 
redistribute metric 250

 

Screenshot (374).png

case 2
per-interface delay 100000 
redistribute metric 500

 

 

Screenshot (375).png

 

I recommend match both delay to same ratio 
meaning 
if per-interface is measure with 100K 
try using delay in metric of redistribute with x0K -100K

so try see delay per-interface then config delay in redistribute  

@MHM Cisco Worldthank you for you effort, but my issue is mainly the fact that metric from route map is not applied to outbound routes, as I mentioned i'm not sure if that IOS handling distribute list with route-map properly.

check below comment 

Right that is all good, but for Default route the VPLS-OUT route map should overwrite default metric => default-metric 1000 100 255 100 1500  by metric set there for Default route:
route-map VPLS-OUT, permit, sequence 10
Match clauses:
ip address prefix-lists: DEFAULT-ROUTE
Set clauses:
metric 1000 100000 255 1 1500
Policy routing matches: 0 packets, 0 bytes
route-map VPLS-OUT, permit, sequence 100
Match clauses:
Set clauses:
Policy routing matches: 0 packets, 0 bytes
!
!
ip prefix-list DEFAULT-ROUTE: 1 entries
seq 5 permit 0.0.0.0/0

and that is not happening, based on this i should see delay for Default route on PEER (100000 x 10) + 10 = 1000010. And on PEER i still see for Default route delay as set by default-metric command => 1010

Hello,

A couple of things I noticed: The hit count is 0 so it doesn't look like its even hitting the policy route you have configured (not sure exactly why).

Also can you show both routers route table and full list of config (or at least the entire EIGRP config section for both). There could be a possibility that the way you're redistributing the route its not passing it along the way you might think it is.

Another thing you can try:

Can you configure the exact same route-map/prefix-list/distribute-list but in the IN direction on the peer device? See if the update applies to the default route on the IN direction on the peer you're trying to get the metrics to show up on.

 

-David

Hi David,

regarding to hit count i believe this is related only to PBR and is incremented only in case route map used there.

for the full routing table as this is production device that would be really long list. But below is the config

3750 switch:
router eigrp 700
distribute-list route-map VPLS-IN in GigabitEthernet0/0/0
distribute-list route-map VPLS-OUT out GigabitEthernet0/0/0
default-metric 1000 100 255 100 1500
network 10.0.0.0 0.0.0.255
network 10.6.0.0 0.0.15.255
network 10.6.30.222 0.0.0.0
network 10.48.0.0 0.0.7.255
redistribute static route-map REDIST-STATIC
redistribute bgp 65001 route-map BGP2EIGRP
passive-interface default
no passive-interface GigabitEthernet1/0/1
no passive-interface GigabitEthernet1/0/7
no passive-interface GigabitEthernet0/0/0
!

inteface toward VPLS:

interface GigabitEthernet0/0/0
description VPLS
no switchport
bandwidth 1000000
ip address 10.6.30.222 255.255.255.224
delay 12
end

Default redistributed from BGP to EIGRP - all set based on defaul-metric in EIGRP process

EIGRP-IPv4 Topology Entry for AS(700)/ID(10.0.0.223) for 0.0.0.0/0
State is Passive, Query origin flag is 1, 1 Successor(s), FD is 2585600
Descriptor Blocks:
X.X.X.177, from Redistributed, Send flag is 0x0
Composite metric is (2585600/0), route is External
Vector metric:
Minimum bandwidth is 1000 Kbit
Total delay is 1000 microseconds
Reliability is 255/255
Load is 100/255
Minimum MTU is 1500
Hop count is 0
Originating router is 10.0.0.223
External data:
AS number of route is 65001
External protocol is BGP, external metric is 0
Administrator tag is 700 (0x000002BC)
Exterior flag is set

PEER switch:

router eigrp 700
distribute-list eigrp-enmax-out out
network 10.0.0.0
network 172.16.55.0 0.0.0.255
network 172.16.56.0 0.0.0.255
network 192.168.0.0
redistribute static
eigrp stub connected summary redistributed

interface config connected to VPLS on peer side:interface GigabitEthernet1/0/24
description VPLS
switchport access vlan 700
switchport mode access
bandwidth 100000
speed 100
duplex full
spanning-tree portfast
ip dhcp snooping trust
end

interface Vlan700
description VPLS
bandwidth 100000
ip address 10.6.30.198 255.255.255.224
end

Hi,

I have did similar test, but it works in my case:

Basically 2 routers in topology, one runs self BGP just for route redistribution:

R1# #do sh ip bgp | begin Network
Network Next Hop Metric LocPrf Weight Path
*> 1.1.1.1/32 0.0.0.0 0 32768 i

On R1:

! bgp route for matching via prefix-list

ip prefix-list route seq 5 permit 1.1.1.1/32

! RM Y for bgp > eigrp redistribution

route-map Y permit 10
match ip address prefix-list route
set metric 100000 600 255 1 1500

! Under eigrp process I've configured:

redistribute bgp 5000 route-map Y

Below is what debug eigrp update details shows:

EIGRP: Enqueueing UPDATE on Et0/0 - paklen 0 tid 0 iidbQ un/rely 0/1 serno 17-17
EIGRP METRIC: Non OTP LISP metric calculation
EIGRP: Sending UPDATE on Et0/0 - paklen 65 tid 0
AS 1, Flags 0x0:(NULL), Seq 64/0 interfaceQ 0/0 iidbQ un/rely 0/0 serno 17-17
{type = 603, length = 65}
{vector = {afi = 1, tid = 0}
{routerid = 8.8.8.8
{offset = 0, priority = 0, reliability = 255, load = 1,
mtu = {1500:[00, 05, DC]), hopcount = 0,
delay = 6000000000, bw = 100000,
reserved = 00, opaque_flags = 00}
{nh:00000000}
{xdata:
{routerid = 8.8.8.8
asystem = 5000, tag 0, metric 0,
reserved = 0, protocol = 9, flag 0,
}
}
{20010101 01}
}

! RM X for distribute list out

route-map X permit 10
match ip address prefix-list route
set metric 10000 400 255 1 1500

! Under eigrp process I've configured:

distribute-list route-map X out ethernet 0/0

after expected route-refresh we need new value in updates (so, distribute-list works):

%DUAL-5-NBRCHANGE: EIGRP-IPv4 1: Neighbor 10.10.10.2 (Ethernet0/0) is resync: intf route configuration changed
EIGRP METRIC: Non OTP LISP metric calculation
EIGRP: Sending UPDATE on Et0/0 - paklen 65 nbr 10.10.10.2 tid 0
AS 1, Flags 0xD:(INIT RS EOT), Seq 65/0 interfaceQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/1 serno 1-17
{type = 603, length = 65}
{vector = {afi = 1, tid = 0}
{routerid = 8.8.8.8
{offset = 0, priority = 0, reliability = 255, load = 1,
mtu = {1500:[00, 05, DC]), hopcount = 0,
delay = 4000000000, bw = 10000,
reserved = 00, opaque_flags = 00}
{nh:00000000}
{xdata:
{routerid = 8.8.8.8
asystem = 5000, tag 0, metric 0,
reserved = 0, protocol = 9, flag 0,
}
}
{20010101 01}

So, it works. However, I don't know exact implementation of C3750. Maybe it ignores distribute list when there is also match and set metric via redistribution.

Based on your configuration it seems you use distribute list only for the purpose of sending default route with bad metric, right?

Try to use offset-list in out direction (but remove distribute-list. I tested, it does not work if route matches both distribute-list and offset-list).

P.S have you ever tried to do manual route clear? Clear ip eigrp neighbors soft, maybe C3750 still sends old configuration result

 

 

HTH,
Please rate and mark as an accepted solution if you have found any of the information provided useful.

can you share for all routers
show ip protocols | begin eigrp 

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: