How to setup IP Policy based routing in Cisco Router(IOS)

Cisco routers running Cisco IOS supports pased based IP Routing which can route packets based on a set IP Policy exiting an Interface.

Policy based routing in Cisco ROuters can be performed by using "route-map" and then applying as a policy to the interface of the IP Packets.

The route-map  has a list of "match" and "set" commands where match defines the criteria under which the policy routing is performed (say, match a destination IP or a standard or Extended ACL) and set defines the actions to perform when match criteris met (say, set next hop).

In this example, I change the routing to a particular network only from a particular subnet which is defined in a standard ACL. This ACL is then matched in a route-map and applied as an IP policy for routing change for the change in routing behaviour.

IP Route-Map

Create Standard ACL

From the global configuration mode, create an ACL to permit source network 10.1.1.0/24

ciscorouter# conf term

ciscorouter(config)# access-list 10 permit 10.1.1.0 0.0.0.255

That creates a new ACL "10" with a permit for 10.1.1.0/24 network.

Create Route-Map

Define a route-map with "match" conditions and "set" actions.

ciscorouter(config)# route-map SetNextHop permit 10

ciscorouter(config-route-map)# match ip address 10

ciscorouter(config-route-map)# set ip next-hop 192.168.0.1

ciscorouter(config-route-map)# exit

That creates a route-map called "SetNextHop" and matches the ACL 10 where the source network for which the route-map should be actioned. I've set the action to be taken when the source network matches to set the next hop router as 192.168.0.1

Apply Policy Route-map to interface

This route-map is now applied to the interface (fa0/0)

ciscorouter(config)# interface fa0/0

ciscorouter(config-if)# ip policy route-map SetNextHop

Test for yourself. For source network 10.1.1.0/24, the nexthop IP is set as 192.168.0.1 (Router B) where every other source networks are router as specified by the static/dynamic routes (in our example through Router A)

Comments

9 responses to “How to setup IP Policy based routing in Cisco Router(IOS)”

  1. mehul Avatar
    mehul

    nice document site for refer

  2. joel Avatar
    joel

    int fa0/0?

    just wanna say thx..

  3. n. tomar Avatar
    n. tomar

    really nice document.

  4. Achilleas Avatar

    I have a question.

    What is the inside IP address for router A and router B
    and
    which is the gateway for the PCs to LAN (192.168.1.0/24)

    Achilleas from Greece

  5. aptgetmoo Avatar
    aptgetmoo

    Hello.

    I would like to know, can I reroute based on source IP address instead of source network address?

    Thanks in advance.
    aptgetmoo

  6. sunny Avatar
    sunny

    what is th difference when you say set ip next-hop compare to set interface ?

    I have found issue in traffic getting droped with set ip next-hop in reoute-map but worked with set interface command.

    Appreciate your input.

    regards
    Sunny

  7. Faisal Memon Avatar
    Faisal Memon

    Nice Share. Much Appreciated.

  8. Powerchino Avatar
    Powerchino

    Thanks for sharing, your document is right on target and please keep up the good work, Thank you!

  9. m3kw Avatar
    m3kw

    Didn’t you forgot the “no switchport” command?

Leave a Reply

Your email address will not be published. Required fields are marked *