RE: ospf->rip redistribution filtering with RR

From: Huan Pham (Huan.Pham@peopletelecom.com.au)
Date: Tue Aug 12 2008 - 21:02:03 ART


Hi Igor,
 
I believe, as far as route-redistribution from OSPF to RIP goes, I used
the identical configuration.

As I said, I can reproduce similar problems (in some sceanario, more
specifically if we remote the redistribution route-map and put it back
in). When I clear OSPF process, and bounce the interface the problem is
fixed. The problem should also be fixed after reloading the router.
 
"debug ip rip" is good in observing what routes are being advertized
into RIP by your redistribution router.

Here's my topology and config. I use DYNAMIPS, and Internetwork Expert
topology. I run few tests, with show/debug outputs to explain OSPF
"weird" behaviors. See below (Warning - LONG POST ;-) )

Topology:

R1 ------- R3 ------- R2

OSPF Area0 | RIP

R1#sh ver | in IOS
Cisco IOS Software, 3700 Software (C3725-ADVENTERPRISEK9-M), Version
12.4(17a), RELEASE SOFTWARE (fc2)

R1#

interface Loopback71
 ip address 77.1.1.1 255.255.255.0
!
interface Loopback72
 ip address 77.1.2.1 255.255.255.0
!
interface Loopback73
 ip address 77.1.3.1 255.255.255.0
!
interface Loopback77
 ip address 77.77.77.1 255.255.255.0
 ip ospf network point-to-point
!
interface Serial1/1
 description Connection to R3
 ip address 13.0.0.1 255.255.255.0
!
!
router ospf 1
 log-adjacency-changes
 area 1 range 77.0.0.0 255.0.0.0
 network 13.0.0.1 0.0.0.0 area 0
 network 77.1.0.0 0.0.255.255 area 1
 network 77.77.77.1 0.0.0.0 area 77

R3#

!
interface Serial1/2
 description Connection to R1
 ip address 13.0.0.3 255.255.255.0
!
interface Serial1/3
 description Connection to R2
 ip address 23.0.0.3 255.255.255.0
 serial restart-delay 0
!
router ospf 1
 network 13.0.0.3 0.0.0.0 area 0
!
router rip
 version 2
 redistribute ospf 1 metric 1 route-map OSPF->RIP
 passive-interface default
 network 23.0.0.0
 neighbor 23.0.0.2
 no auto-summary
!
!
!
ip prefix-list SUMMARY seq 5 permit 77.0.0.0/8
ip prefix-list SUMMARY seq 10 deny 0.0.0.0/0 le 32
!
route-map OSPF->RIP permit 10
 match ip address prefix-list SUMMARY
!
route-map OSPF->RIP deny 20

R2#

interface Serial1/1
 description Connection to R3
 ip address 23.0.0.2 255.255.255.0
!
router rip
 version 2
 passive-interface default
 network 23.0.0.0
 neighbor 23.0.0.3
 no auto-summary

This configuration result in only summary route being received on R2, as
expected.

R2#sh ip route rip
R 77.0.0.0/8 [120/1] via 23.0.0.3, 00:00:18, Serial1/1

R3 has a summary route 77.0.0.0 and a specific 77.77.77.0 (both are
learnt from R1)

R3#sh clock
08:59:34.219 UTC Wed Aug 13 2008
R3#sh ip route ospf
     77.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
O IA 77.77.77.0/24 [110/65] via 13.0.0.1, 00:00:18, Serial1/2
O IA 77.0.0.0/8 [110/65] via 13.0.0.1, 00:16:07, Serial1/2

If we advertize OSPF to RIP without the route-map, we will see that the
specific route is also shown up on R2 (almost immediately)

R3#sh clock
09:05:28.035 UTC Wed Aug 13 2008

R3(config)#router rip
R3(config-router)#no redistribute ospf 1 metric 1 route-map OSPF->RIP
R3(config-router)#redistribute ospf 1 metric 1

R2#sh clock
09:05:43.919 UTC Wed Aug 13 2008
R2#sh ip route rip
     77.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
R 77.77.77.0/24 [120/1] via 23.0.0.3, 00:00:01, Serial1/1
R 77.0.0.0/8 [120/1] via 23.0.0.3, 00:00:01, Serial1/1
     13.0.0.0/24 is subnetted, 1 subnets
R 13.0.0.0 [120/1] via 23.0.0.3, 00:00:01, Serial1/1

If we reapply the route-map, the specific route stay on !!!

R3#sh clock
09:07:34.755 UTC Wed Aug 13 2008
R3#c
Enter configuration commands, one per line. End with CNTL/Z.
R3(config)#router rip
R3(config-router)#redistribute ospf 1 metric 1 route-map OSPF->RIP
R3(config-router)#

R2#sh clock
09:09:29.383 UTC Wed Aug 13 2008
R2#sh ip route rip
     77.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
R 77.77.77.0/24 [120/1] via 23.0.0.3, 00:00:22, Serial1/1
R 77.0.0.0/8 [120/1] via 23.0.0.3, 00:00:22, Serial1/1
     13.0.0.0/24 is subnetted, 1 subnets
R 13.0.0.0 [120/1] via 23.0.0.3, 00:00:22, Serial1/1
R2#sh clock
09:09:57.151 UTC Wed Aug 13 2008
R2#sh ip route rip
     77.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
R 77.77.77.0/24 [120/1] via 23.0.0.3, 00:00:21, Serial1/1
R 77.0.0.0/8 [120/1] via 23.0.0.3, 00:00:21, Serial1/1
     13.0.0.0/24 is subnetted, 1 subnets
R 13.0.0.0 [120/1] via 23.0.0.3, 00:00:21, Serial1/1
R2#sh clock
09:11:36.359 UTC Wed Aug 13 2008
R2#sh ip route rip
     77.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
R 77.77.77.0/24 [120/1] via 23.0.0.3, 00:00:11, Serial1/1
R 77.0.0.0/8 [120/1] via 23.0.0.3, 00:00:11, Serial1/1
     13.0.0.0/24 is subnetted, 1 subnets
R 13.0.0.0 [120/1] via 23.0.0.3, 00:00:11, Serial1/1

The specific route stays on until I bounce the route.

R1(config-if)#int lo77
R1(config-if)#shut
Aug 13 09:12:46.815: %LINK-5-CHANGED: Interface Loopback77, changed
state to administratively down
Aug 13 09:12:47.819: %LINEPROTO-5-UPDOWN: Line protocol on Interface
Loopback77, changed state to down
R1(config-if)#no shut
R1(config-if)#
Aug 13 09:12:51.963: %LINK-3-UPDOWN: Interface Loopback77, changed state
to up
Aug 13 09:12:52.963: %LINEPROTO-5-UPDOWN: Line protocol on Interface
Loopback77, changed state to up

R2#sh ip route rip
     77.0.0.0/8 is subnetted, 1 subnets
R 77.0.0.0 [120/1] via 23.0.0.3, 00:00:09, Serial1/1
     13.0.0.0/24 is subnetted, 1 subnets
R 13.0.0.0 [120/1] via 23.0.0.3, 00:00:09, Serial1/1

Note that after I bounce the interface on R1, only the affected route
(77.77.77.0/24 disapears from routing table on R2, as R3 does not sends
it anymore). The 13.0.0.0/24 still stays on, (i.e. this unaffected route
is not subject to the new route-map).

R3#sh ip route ospf
     77.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
O IA 77.77.77.0/24 [110/65] via 13.0.0.1, 00:05:49, Serial1/2
O IA 77.0.0.0/8 [110/65] via 13.0.0.1, 00:33:45, Serial1/2

R3#debug ip rip
RIP protocol debugging is on
Aug 13 09:21:39.387: RIP: sending v2 update to 23.0.0.2 via Serial1/3
(23.0.0.3)
Aug 13 09:21:39.391: RIP: build update entries
Aug 13 09:21:39.391: 13.0.0.0/24 via 0.0.0.0, metric 1, tag 0
Aug 13 09:21:39.395: 77.0.0.0/8 via 0.0.0.0, metric 1, tag 0
Aug 13 09:21:39.395: RIP: Update contains 2 routes
Aug 13 09:21:39.399: RIP: Update queued
Aug 13 09:21:39.399: RIP: Update sent via Serial1/3

R2#sh clock
09:16:28.351 UTC Wed Aug 13 2008
R2#sh ip route rip
     77.0.0.0/8 is subnetted, 1 subnets
R 77.0.0.0 [120/1] via 23.0.0.3, 00:00:23, Serial1/1
     13.0.0.0/24 is subnetted, 1 subnets
R 13.0.0.0 [120/1] via 23.0.0.3, 00:00:23, Serial1/1
R2#sh clock
09:16:45.031 UTC Wed Aug 13 2008
R2#sh ip route rip
     77.0.0.0/8 is subnetted, 1 subnets
R 77.0.0.0 [120/1] via 23.0.0.3, 00:00:14, Serial1/1
     13.0.0.0/24 is subnetted, 1 subnets
R 13.0.0.0 [120/1] via 23.0.0.3, 00:00:14, Serial1/1

If I remove the route-map and put it back in, we can see again that R3
continues to advertize all routes to RIP, NOT subject to the route-map

R3(config)#router rip
R3(config-router)#no redistribute ospf 1 metric 1 route-map OSPF->RIP
R3(config-router)#redistribute ospf 1 metric 1
R3(config-router)#redistribute ospf 1 metric 1 route-map OSPF->RIP

Aug 13 09:24:51.883: RIP: sending v2 update to 23.0.0.2 via Serial1/3
(23.0.0.3)
Aug 13 09:24:51.887: RIP: build update entries
Aug 13 09:24:51.887: 13.0.0.0/24 via 0.0.0.0, metric 1, tag 0
Aug 13 09:24:51.891: 77.0.0.0/8 via 0.0.0.0, metric 1, tag 0
Aug 13 09:24:51.891: 77.77.77.0/24 via 0.0.0.0, metric 1, tag 0
Aug 13 09:24:51.895: RIP: Update contains 3 routes
Aug 13 09:24:51.895: RIP: Update queued
Aug 13 09:24:51.899: RIP: Update sent via Serial1/3

If we clear OSPF process, we can see that only OSPF routes affected by
the OSPF adjacency reset are subject to the route-map. The connected
route (part of OSPF database), will still being advertized to RIP
without being subject to the route-map.

R3#clear ip ospf process
Reset ALL OSPF processes? [no]: yes
R3#
Aug 13 09:31:25.135: RIP: sending v2 update to 23.0.0.2 via Serial1/3
(23.0.0.3)
Aug 13 09:31:25.139: RIP: build update entries
Aug 13 09:31:25.139: 13.0.0.0/24 via 0.0.0.0, metric 1, tag 0
Aug 13 09:31:25.143: 77.0.0.0/8 via 0.0.0.0, metric 1, tag 0

Now if we bounce the connected interface, we can see that it will be
blocked by the route-map, and it will no longer be redistributed to RIP.

R3#c
Enter configuration commands, one per line. End with CNTL/Z.
R3(config)#int serial1/2
R3(config-if)#shut
Aug 13 09:33:02.771: %OSPF-5-ADJCHG: Process 1, Nbr 13.0.0.1 on
Serial1/2 from FULL to DOWN, Neighbor Down: Interface down or detached
Aug 13 09:33:04.735: %LINK-5-CHANGED: Interface Serial1/2, changed state
to administratively down

R3(config-if)#no shut
R3#
Aug 13 09:34:11.847: RIP: sending v2 update to 23.0.0.2 via Serial1/3
(23.0.0.3)
Aug 13 09:34:11.851: RIP: build update entries
Aug 13 09:34:11.851: 77.0.0.0/8 via 0.0.0.0, metric 1, tag 0

R2#sh clock
09:34:50.047 UTC Wed Aug 13 2008
R2#sh ip route rip
R 77.0.0.0/8 [120/1] via 23.0.0.3, 00:00:13, Serial1/1

 
 
 
 
 

________________________________

From: Igor Manassypov [mailto:imanassypov@rogers.com]
Sent: Tuesday, 12 August 2008 10:08 PM
To: Huan Pham; Igor Manassypov; ccielab@groupstudy.com
Subject: RE: ospf->rip redistribution filtering with RR

- still same behavior even if i reboot the two routers... Do you have an
identical configuration? Nothing within the route-map works that would
stop the specific routes from redistribution. The only way I could make
it work was with distribute lists under rip process.

Do you think may be rip has no capability to support route-maps in
redistribution even though the commands are there?!

Huan Pham <Huan.Pham@peopletelecom.com.au> wrote:

        Have you tried resetting OSPF process as I mentioned in my
previous
        email.
        
        I can reproduce your problem and the problem is gone after I
reset OSPF
        process.
        
        The redistribution from RIP or EIGRP to OSPF is more straight
forward,
        than the other direction.
        
        OSPF behaves differently than RIP & EIGRP because with OSPF,
router does
        not get pediodic route updates. The routing table is only
refreshed
        after you have a change in the topology.
        
        For some reason, I found that if you change the route-map
config, the
        change only is applied after you clear OSPF process. This is
similar to
        BGP route-map, you need to clear BGP neighbor (soft), otherwise
new
        route-map do not get applied.
        
        Cheers,
        
        
        -----Original Message-----
        From: nobody@groupstudy.com [mailto:nobody@groupstudy.com] On
Behalf Of
        Igor Manassypov
        Sent: Tuesday, 12 August 2008 11:45 AM
        To: Hong Chan; Huan Pham
        Cc: Igor Manassypov; ccielab@groupstudy.com
        Subject: Re: ospf->rip redistribution filtering with RR
        
        Here it goes, its a bit long but simple. I realize there are
other
        options for accomplishing this, however I am puzzled why this
setup is
        not working as expected. Out of curiosity, on a different
testbench I
        setup a mirrored route-map from rip to ospf redistribution
allowing just
        the summary, and that worked perfectly. I am wondering if RIP is
        behaving differently with route-maps?!!
        
        Router R1 is connected to BB1. R1 is running both ospf and rip,
and BB1
        is running only rip.
        
        Here is the config on R1:
        
        router rip
        version 2
        redistribute ospf 77 metric 1 route-map OSPF->RIP
passive-interface
        default network 150.1.0.0 neighbor 150.1.1.254 no auto-summary
        
        router ospf 77
        router-id 77.77.1.1
        log-adjacency-changes
        area 167 virtual-link 77.77.7.7
        redistribute rip subnets route-map RIP->OSPF network 77.77.1.1
0.0.0.0
        area 1 network 77.77.12.1 0.0.0.0 area 1 network 77.77.17.1
0.0.0.0
        area 167 network 77.77.21.1 0.0.0.0 area 1 neighbor 77.77.21.2
        neighbor 77.77.12.2
        
        ip prefix-list SUMMARY seq 5 permit 77.0.0.0/8 ip prefix-list
SUMMARY
        seq 10 deny 0.0.0.0/0 le 32 route-map OSPF->RIP permit 10
        match ip address prefix-list SUMMARY
        route-map OSPF->RIP deny 20
        
        R1#sh ip route
        Codes: 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
        
        Gateway of last resort is not set
        
        77.0.0.0/8 is variably subnetted, 20 subnets, 3 masks
        C 77.77.1.0/24 is directly connected, Loopback0
        O IA 77.77.3.0/24 [110/76] via 77.77.17.7, 04:53:48, Ethernet0/0
        O IA 77.77.4.0/24 [110/13] via 77.77.17.7, 04:53:48, Ethernet0/0
        O IA 77.77.5.0/24 [110/13] via 77.77.17.7, 04:53:48, Ethernet0/0
        O 77.77.6.0/24 [110/12] via 77.77.17.7, 04:53:48, Ethernet0/0
        O 77.77.7.0/24 [110/11] via 77.77.17.7, 04:53:48, Ethernet0/0
        O 77.77.8.0/24 [110/12] via 77.77.17.7, 04:53:48, Ethernet0/0
        O 77.77.9.0/24 [110/12] via 77.77.17.7, 04:53:48, Ethernet0/0
        O 77.77.10.0/24 [110/12] via 77.77.17.7, 04:53:48, Ethernet0/0
        C 77.77.12.0/30 is directly connected, Serial1/0
        C 77.77.17.0/24 is directly connected, Ethernet0/0
        C 77.77.21.0/30 is directly connected, Serial1/1
        O IA 77.77.28.0/24 [110/12] via 77.77.17.7, 04:53:49,
Ethernet0/0
        O 77.77.33.0/24 [110/11] via 77.77.17.7, 04:53:49, Ethernet0/0
        O IA 77.77.36.0/24 [110/75] via 77.77.17.7, 04:53:49,
Ethernet0/0
        O 77.77.44.0/24 [110/11] via 77.77.17.7, 04:53:49, Ethernet0/0
        O IA 77.77.48.0/24 [110/12] via 77.77.17.7, 04:53:49,
Ethernet0/0
        O IA 77.77.58.0/24 [110/12] via 77.77.17.7, 04:53:49,
Ethernet0/0
        O 77.77.67.0/24 [110/11] via 77.77.17.7, 04:53:49, Ethernet0/0
        O IA 77.0.0.0/8 [110/11] via 77.77.17.7, 04:53:49, Ethernet0/0
        R 199.172.0.0/24 [120/1] via 150.1.1.254, 00:00:06, Ethernet0/1
        150.100.0.0/24 is subnetted, 1 subnets
        R 150.100.1.0 [120/1] via 150.1.1.254, 00:00:06, Ethernet0/1
        150.1.0.0/24 is subnetted, 1 subnets
        C 150.1.1.0 is directly connected, Ethernet0/1
        150.250.0.0/24 is subnetted, 1 subnets
        R 150.250.1.0 [120/1] via 150.1.1.254, 00:00:06, Ethernet0/1
        150.200.0.0/24 is subnetted, 1 subnets
        R 150.200.1.0 [120/1] via 150.1.1.254, 00:00:06, Ethernet0/1
        
        
        BB1#sh ip route rip
        77.0.0.0/8 is variably subnetted, 20 subnets, 3 masks
        R 77.77.1.0/24 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        R 77.77.3.0/24 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        R 77.77.4.0/24 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        R 77.77.5.0/24 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        R 77.77.6.0/24 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        R 77.77.7.0/24 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        R 77.77.8.0/24 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        R 77.77.9.0/24 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        R 77.77.10.0/24 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        R 77.77.12.0/30 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        R 77.77.17.0/24 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        R 77.77.21.0/30 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        R 77.77.28.0/24 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        R 77.77.33.0/24 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        R 77.77.36.0/24 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        R 77.77.44.0/24 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        R 77.77.48.0/24 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        R 77.77.58.0/24 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        R 77.77.67.0/24 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        R 77.0.0.0/8 [120/1] via 150.1.1.77, 00:00:01, Ethernet0/0
        
        Hong Chan wrote: I don't see any wrong with
        your configuration but the config can be simpler.
        For me, I won't use prefix list to deny the route but let the
statement
        "route-map OSPF->RIP deny 20" to filter the routes.
        
        Pleae provide the show ip route in the rip & full configuration
of the
        router to let us to see which router redistribute the ospf route
into
        rip domain
        
        
        2008/8/12 Huan Pham I do not see any
        problem with your config.
        
        Please try "clear ip ospf process" on the router that do
redistribution,
        to force the router to refresh routing table, and to apply the
        route-map.
        
        It worked for me in similar cases. Let me know if that works for
you.
        
        Alternatively, you can you "distribute-list out interface" under
the RIP
        to filter traffic you send to the other RIP neighbor, and the
interface
        command "ip summary-address rip 77.0.0.0 255.0.0.0" to create
summary
        route.
        
        
        
        
        
        -----Original Message-----
        From: nobody@groupstudy.com [mailto:nobody@groupstudy.com] On
Behalf Of
        Igor Manassypov
        Sent: Tuesday, 12 August 2008 5:17 AM
        To: ccielab@groupstudy.com
        Subject: ospf->rip redistribution filtering with RR
        
        Hi Gang,
        
        Can someone please help me out with this scenario:
        
        - i have an ospf-rip redistribution, where ospf runs over my
77.x.x.x
        network with a bunch of routes. I am trying to create a summary
within
        ospf, and redistribute only that summary to my rip process on
same
        router by means of a route map like follows:
        
        router rip
        version 2
        redistribute ospf 77 metric 1 route-map OSPF->RIP
passive-interface
        default network 150.1.0.0 neighbor 150.1.1.254 no auto-summary
        
        ip prefix-list SUMMARY seq 5 permit 77.0.0.0/8 ip prefix-list
SUMMARY
        seq 10 deny 0.0.0.0/0 le 32 !
        route-map OSPF->RIP permit 10
        match ip address prefix-list SUMMARY
        route-map OSPF->RIP deny 20
        
        
        After redistribution, within rip I still get the complete
routing info
        coming from ospf. Why would the above RR not stop the more
specifics?!
        
        Thanks!!
        
        
        Igor M., M.Eng, P.Eng
        Network Architect
        
        
        Blogs and organic groups at http://www.ccie.net
        
        



This archive was generated by hypermail 2.1.4 : Mon Sep 01 2008 - 08:15:30 ART