IOS Configuration: Route Maps
Route maps are an advanced alternative to simple ACLs, and are used for:
- Controlling route redistribution - Can permit or deny routes, or change metrics
- Policy-based routing - Allows for more complex routing decisions
- Additional granularity in NAT - Can define arbitrary address mappings opposed to the normal static mappings
- Defining network policy - Used by BGP
Route maps are structured and processed similar to ACLs.
Each route map statement has a sequence number and is configured to either permit or deny traffic.
If a match condition is met, zero or more set parameters are acted upon.
Like ACLs, route maps end with an implicit deny any.
Route map structure:
route-map{match | set} <condition>...
...
Configuration
Router(config)# route-map <name> [{permit | deny} [<sequence number>]]
Router(config-route-map)# {match | set } <condition>
match conditions used in redistribution:
match interfacematch ip address [ACL]match ip next-hopmatch ip route-sourcematch metricmatch route-typematch tag
set operations used in redistribution:
set level {level-1 | level-2 | level-1-2 | stub-area | backbone}(OSPF/IS-IS)set metricset metric-type {internal | external | type-1 | type-2}set tag <value>
Implementing route maps for redistribution:
Router(config-router)# redistribute <protocol> [process ID] route-map <name>
Monitoring
show ip protocolshow ip routeshow route-map
