Basic Route Redistribution

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

Configure RIP : 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

Configure OSPF

R1(config)# router ospf 1

R1(config-router)# router-id 1.1.1.1

R1(config-router)# network 10.1.23.1 0.0.0.0 area 0

Configure Redistribution : All the following protocols could be redistributed

R1(config-router)# redistribute ?

bgp connected eigrp isis IGRP

metric (Metric for redistributed routes)

mobile (Mobile routes)

odr ospf rip

route-map (Route map reference)

static Static routes

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 ?

Set OSPF External Type 1 metrics

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