Route Redistribution in ISIS

Redistribution is technique using which the boundary routers connecting different routing domains can exchange and advertise routing information. In this article we will learn how to redistribute any routing protocol into ISIS. Below syntax is followed. The command has to be configured in router configuration mode.


redistribute protocol [process-id] [level  level-value] [metric metric-value] [metric-type type-value]  [route-map name]

  • protocol: For example the protocol you want to redistribute into ISIS (i.e. EIGRP, OSPF,  RIP, or BGP etc.)
  • process-id: This field is specifically used while redistributing the protocols EIGRP and BGP into ISIS. The value of this field is AS number in case of EIGRP and BGP and process-id in case of OSPF. No value is required for RIP.
  • level: This is an optional field. It specifies how external routes are redistributed. The level types exist. The routers can be Level 1 (level-1), Level 1/Level 2 (level-1-2), or Level 2 (level-2) routes. The default type is level-2.
  • metric: This is an optional field  that specifies the ISIS seed metric used for the redistributed route. IS-IS uses a default metric of 0. Unlike RIP and EIGRP, a default metric of 0 is not treated as infinity or unreachable, so the route is redistributed. The metric is incremented as the route is propagated into the IS-IS domain. The IS-IS default metric value is cost.
  • metric-type: This field is optional and specifies the the IS-IS metric type as external or internal. The default metric type is internal.
  • route-map: This is again an optional field and used when when we have to do any route filtering while redistribution.
Route Redistribution in ISIS

R2(config)#router ISIS
R2(config-router)#redistribute eigrp 10 route-map FILTER

Imp Point: Kindly also note that you have to configure the the route-map 'FILTER'. An empty route-map or wrong route-map configured will not allow redistribution of routes.

Using above topology, let's try a simple redistribution of EIGRP into ISIS. While checking the ISIS database for R1's prefix, we can see the route is installed with default seed metric of 0.

R2(config)#router ISIS
R2(config-router)#redistribute eigrp 10 level-2

R2#sh isis database level-2 R2.00-00 detail
IS-IS Level-2 LSP R2.00-00
LSPID                 LSP Seq Num  LSP Checksum  LSP Holdtime      ATT/P/OL
R2.00-00            * 0x00000008   0x8BFD        725               0/0/0
  Area Address: 49.00aa
  NLPID:        0xCC
  Hostname: R2
  IP Address:
  Metric: 10         IS R3.02
  Metric: 0          IP-External
  Metric: 0          IP-External
  Metric: 0          IP-External
  Metric: 10         IP

Imp Point:  The default link cost of any link in ISIS domain is 10 (irrespective of link bandwidth) when the ISIS is configured with metric-style  narrow (0-63).

If we check the route of prefix on R3, the link cost metric will be added to default seed metric(0). This metric is cumulative and keep on adding as the route propagates more links in the network.

R3#show ip route
Routing entry for
  Known via "isis", distance 115, metric 10, type level-2
  Redistributing via isis
  Last update from on FastEthernet1/0, 00:05:53 ago
  Routing Descriptor Blocks:
  *, from, 00:05:53 ago, via FastEthernet1/0
      Route metric is 10, traffic share count is 1

When ISIS routes are redistribued in other protocols for example EIGRP or OSPF, we have the option to include Level 1, Level 2, or both Level 1 and Level 2 routes.  If no level is specified during redistribution, all routes are redistributed.

R2(config)#router eigrp 10
R2(config-router)#redistribute isis ?
  WORD       ISO routing area tag
  level-1    IS-IS level-1 routes only
  level-1-2  IS-IS level-1 and level-2 routes
  level-2    IS-IS level-2 routes only
  metric     Metric for redistributed routes
  route-map  Route map reference

R2(config-router)#redistribute isis metric 10000 10 255 1 1500

As specified above, we didn't choose any level type while redistributing ISIS routes in EIGRP, so all routes are distributed by default.

R1#show ip route eigrp
D [90/156160] via, 00:22:33, FastEthernet1/0
D EX [170/261120] via, 00:01:56, FastEthernet1/0
D [90/30720] via, 00:22:33, FastEthernet1/0

If you want to restrict the number of  redistributed, you can use the below router configuration command in ISIS.

R2(config)#router isis
R2(config-router)#redistribute maximum-prefix maximum [threshold] [warning-only | withdraw]

By default, we will a logging warning when a threshold of 75%  of  defined maximum value is reached.  Also, after reaching the defined maximum number, no further routes are redistributed. The optional withdraw field will also cause IS-IS to rebuild link-state protocol data units (PDUs) (link-state packets [LSPs]) without the external (redistributed) IP prefixes. If the warning-only field is configured, no limitation is placed on redistribution; the maximum value number simply becomes a second point where another warning messaged is logged.

Imp Point: By default, iBGP routes do not get redistributed into ISIS (or OSPF). We need to add bgp redistribute-internal command under BGP router configuration to enable the BGP internal routes get redistributed in ISIS (or OSPF).

Route Tagging in ISIS

The route tagging feature in IS-IS enables you to tag route prefixes and use those tags in a route map to control IS-IS route redistribution or route leaking. The results are network scalability and faster convergence for device updates. In IS-IS, devices are allowed to redistribute external prefixes or the prefixes which are learned from any other routing protocol such is RIP, EIGRP etc., static configuration, or connected interfaces. The redistributed routes are allowed in either a Level 1 device or a Level 2 device. Level 2 routes injected as Level 1 routes is called route leaking.

Kindly note that to use the route tagging feature in IS-IS, you must change to the 'metric-style wide command' from 'metric-style narrow' command which is configured by default under the ISIS router configuration. The tag value is set into sub-TLV 1 for type, length, values (TLV) Type 135.

R1(config)#router isis
R1(config-router)#metric-style wide

R1#conf t
R1(config)#int gi0/0/1
R1(config-if)#ip address
R1(config-if)#isis tag 100

Commands to verify ISIS route tagging.

R1#show isis database verbose
R# show ip route x.x.x.x

After the tag is set to ISIS prefix, we can filter the route or set any routing policy to this tagged route using a route-map during redistribution.

R2(config)#route-map TAG [permit | deny ] [sequence-number]
match tag tag-value
set next-hop x.x.x.x

Click Here for other useful Route-Redistribution articles

Post a comment