[Contents] [Prev] [Next] [Index] [Report an Error]

Example: Configuring Multiple Routing Instances of IS-IS

Figure 4 shows how you can use multiple instances of IS-IS to segregate traffic within a large network. The network consists of three administrative entities: voice_policy, other_policy, and the backbone or core. Each entity is composed of several geographically separate sites that are connected by the backbone and managed by the backbone entity.

Figure 4: Configuration for Multiple Routing Instances

Image h1460.gif

Sites A and D belong to the voice_policy routing instance. Sites B and C belong to the other_policy instance. Router 1 and Router 3 at the edge of the backbone connect the routing instances. Each runs a separate IS-IS instance (one per entity).

Router 1 runs three IS-IS instances: one each for Site A (voice_policy), Site C (other_policy), and the backbone, otherwise known as the default instance. Router 3 also runs three IS-IS instances: one each for Site B (other_policy), Site D (voice_policy), and the backbone (default instance).

When Router 1 runs the IS-IS instances, the following occur:

Configuring Router 1

The following sections describe how to configure Router 1 in the backbone entity with multiple routing instances.

Configure the routing instances for voice-policy and other-policy. Use all routes learned from the routing tables in the routing table group common. Export routes tagged as belonging to the routing instance.

[edit]
routing-instances {
voice-policy {
interface so-2/2/2.0;
protocols {
isis {
rib-group voice_to_inet;
export filter-on-voice-policy;
interface so-2/2/2.0 {
level 2 metric 20;
}
}
}
}
}
other-policy {
interface so-4/2/2.0;
protocols {
isis {
rib-group other_to_inet;
export filter-on-other-policy;
interface so-4/2/2.0 {
level 2 metric 20;
}
}
}
}

Configure the routing table group inet_to_voice_and_other to share routes with the inet.0 (in the backbone entity), voice-policy.inet.0, and other-policy.inet.0 routing tables:

[edit]
routing-options {
rib-groups {
inet_to_voice_and_other {
import-rib [ inet.0 voice-policy.inet.0 other-policy.inet.0 ];
}
}
}

Configure the routing table group voice_to_inet to share routes with the inet.0 (in the backbone entity) and voice-policy.inet.0 routing tables:

[edit]
routing-options {
rib-groups {
voice_to_inet {
import-rib [ voice-policy.inet.0 inet.0];
}
}
}

Configure the routing table group other_to_inet to share routes with the inet.0 (in the backbone entity) and other-policy.inet.0 routing tables:

[edit]
routing-options {
rib-groups {
other_to_inet {
import-rib [ other-policy.inet.0 inet.0];
}
}
}

Configure the default IS-IS instance so that the routes learned from the routing instances are installed in inet.0 and the tagged routes are exported from voice-policy and other-policy:

[edit]
protocols {
isis {
export apply-tag;
rib-group inet_to_voice_and_other;
interface so-1/0/0.0 {
level 2 metric 20;
}
interface fxp0.0 {
disable;
}
interface lo0.0 {
passive;
}
}
}

Configure routing policy for the routes learned from the routing instances:

[edit]
policy-options {
policy-statement apply-tag {
term voice-policy {
from instance voice-policy;
then {
tag 10;
accept;
}
}
term other-policy {
from instance other-policy;
then {
tag 12;
accept;
}
}
}
policy-statement filter-on-voice-policy {
from {
tag 10;
protocol isis;
}
then {
accept;
}
}
policy-statement filter-on-other-policy {
from {
tag 12;
protocol isis;
}
then {
accept;
}
}
}

Configuring Router 3

The configuration for Router 3 is the same as for Router 1 except that the interface names might differ. In this topology, the interface so-5/2/2.0 belongs to other-policy, and so-3/2/2.0 belongs to voice-policy.


[Contents] [Prev] [Next] [Index] [Report an Error]