Configuring multiple Static Mroutes for IPv4 in Cisco IOS Last updated: 8/2003 ------------------------------------------------------------------------- In certain cases it is necessary to configure multiple static routes. One example is to support routing traffic across two interfaces. each of which may go down. Depending on the distance configured for the static routes, one either wants to prefer one such interface (lower distance) or load-split traffic across them (same distance on both interfaces). For IPv4 unicast, the way to configure multiple equal cost static routes is simple: ip route
[ ] ip route
[ ] Unfortunately, if only IP multicast traffic is to be passed across these routes, one need to use "ip mroute" instead of "ip route". If "ip route" is used, both unicast and multicast traffic are passed across the route. "ip mroute" unfortunately has the limitation that you can only configure one "ip mroute" for each prefix (eg:
/ combination), but not two or more as shown above for the "ip route command". The purpose of this configuration note is to describe the limited workaround supported for this problem today in Cisco IOS IPv4 multicast. Note that this problem does not apply to IPv6 multicast and as such the workarounds presented here are also not necessary: The following configuration is what IOS does not support: ip mroute
[ ] ip mroute
[ ] To get this working, choose an unused IPv4 unicast address, for example 1.1.1.1 or something that is likewise easy identifyable as a address to make troubleshooting easy. Then configure: ip route 255.255.255.255 [ ] ip route 255.255.255.255 [ ] ip mroute
Effectively we use recursive route resolution to get around the problem that only one "ip mroute command" can be configured for each
/ combination. You will need one bogus address for each combination of next-hops that you want to route across of coures. Notes: o multipath routing not supported If and are different, only the route with the lower/lowest distance is being actively used. If the next-hop of that route become unreachable the route with the next-higher distance is being used. If and are equal, Cisco IOS will only use the first configured route entry when resolving this route recursively via "ip mroute". This also means that you can not use this workaround with recursive route resolution for equal cost multipath routing for in conjunction with "ip multicast multipath". You can use it without "ip mroute" though! o Number of static (m)routes needed In the most simple of cases (as shown above), the workaround solution requires one more configuration like, but if you actually have multiple sets of static mroutes to configure, the workaround also results in less configuration likes. Assume that you have the two possible and but a larger range of routes to pass across it, eg: /,... /. With recursive route resolution you effectively get 2 static routes and 20 static mroutes. Without route recursion, you would need to configure 40 static (m)routes. o Validation You may want to use "show ip rpf" to verify the correct configuration of your static routes/mroutes. o Background Recursive route resolution is quite standard when i(M)BGP is being used: The i(M)BGP route has a remote PE router as the next hop and route lookup recurses into the routing table to find an appropriate IGP routing table entry for this remote PE router address. This recursion in the Cisco IOS IPv4 unicast route lookup is not restricted to BGP->IGP recursion but it works with all routes in the unicast routing table including static routes. It is also not restricted to just one level of recursion. The Cisco IOS IPv4 multicast RPF lookup can also support recursion, although with some limitations not applicable to unicast: The first route examined in a multicast RPF lookup can be an MBGP route, static mroute, DVMRP route or a route from the unicast routing table (eg: IGPs, static routes and BGP). If the result of this lookup renders a non-directly connected next hop, recursion will only look into the unicast routing table from there on. For example an mroute->mroute route recursion configuration is not supported. o Tunnels Please refer to the following configuration note for a description on how to apply this workaround to multiple GRE tunnel interfaces: ftp://ftpeng.cisco.com/ipmulticast/config-notes/gre-tunnel.txt Should you have problems with this configuration, please send email to multicast-support@cisco.com .