Using Multiple routing protocols...why ?
- The politics of networking (proprietary protocol such as EIGRP, ... )
- Conversion between routing protocols
- Vendor selection
- Application / Business requirements
Understanding route redistribution
Why it is so complex:
- Incompatible Metric : so use of a default metric when redistribution
- Loop redistribution : so use a primary route with a lowest metric than your backup route.
Configuring route redistribution
Because some version of IOS does not support classless network command, the classfull network 10.0.0.0 is defined in the following example. To prevent RIP to run in the serial 1.3 interface, we use the passive-interface command.
R1(config)# router rip R1(config-router)# version 2 R1(config-router)# no auto-summary R1(config-router)# network 10.0.0.0 R1(config-router)# passive-interface serial 1.3
R1(config)# router ospf 1 R1(config-router)# router-id 18.104.22.168 R1(config-router)# network 10.1.23.1 0.0.0.0 area 0
All the following protocols could be redistributed
R1(config-router)# redistribute ? bgp Border Gateway Protocol (BGP) connected Connected eigrp Enhanced Interior Gateway Routing Protocol (EIGRP) isis ISO IS-IS iso-igrp IGRP for OSI networks metric Metric for redistributed routes mobile Mobile routes odr On Demand stub Routes ospf Open Shortest Path First (OSPF) rip Routing Information Protocol (RIP) route-map Route map reference static Static routes <cr>
However each protocol has some unique characteristics when redistributing:
- RIP : Metric must be set, except when redistributing static or connected routes, which have a metric of 1.
- OSPF : Default metric is 20. Can specify the metric type; the default is E2. Must use subnets keyword or only classfull networks are redistributed.
- EIGRP : Metric must be set, except when redistributing static or connected routes, which get their metric from the interface. Metric value is “bandwidth, delay, reliability, load, MTU.” Redistributed routes have a higher administrative distance than internal ones.
- IS-IS : Default metric is 0. Can specify route level; default is L2. Can choose to redistribute only external or internal routes into IS- IS from OSPF and into OSPF from IS-IS.
- Static/Connected : To include local networks not running the routing protocol, you must redistribute connected interfaces. You can also redistribute static routes into a dynamic protocol.
A default metric could be defined for every protocol, it is also called seed metric. All routes that will be redistribute in OSPF for example will have this specified metric.
R1(config-router)# default-metric ? <1-16777214> Default metric
Configure Redistribution from OSPF to RIP
R1(config)# router rip R1(config-router)#redistribute ospf ? <1-65535> Process ID
R1(config-router)#redistribute ospf 1 ? match Redistribution of OSPF routes metric Metric for redistributed routes route-map Route map reference vrf VPN Routing/Forwarding Instance <cr>
R1(config-router)#redistribute ospf 1 match ? external Redistribute OSPF external routes internal Redistribute OSPF internal routes nssa-external Redistribute OSPF NSSA external routes
R1(config-router)#redistribute ospf 1 metric ? <0-16> Default metric transparent Transparently redistribute metric
This metric, based on hop-count in RIP, will increase for every routers.
Configure Redistribution from RIP to OSPF
R1(config)# router ospf 1 R1(config-router) # redistribute rip ? metric Metric for redistributed routes metric-type OSPF/IS-IS exterior metric type for redistributed routes route-map Route map reference subnets Consider subnets for redistribution into OSPF tag Set tag for routes redistributed into OSPF <cr>
The subnets command permits to have a classless redistribution. By default (without that commande, OSPF uses auto-summary).
R1(config-router) # redistribute rip subnets metric 1800 metric-type ? 1 Set OSPF External Type 1 metrics 2 Set OSPF External Type 2 metrics
Metric Type 1 will continue to increment through the OSPF network, when Type 2 is static (default).
R1(config-router)#redistribute rip subnets metric 1800 metric-type 2 tag ? <0-4294967295> 32-bit tag value
The tag feature permits to tag routes from a protocol. This permits after that for example to filter some routes.