Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

header-navigation
keyboard_arrow_up
close
keyboard_arrow_left
IS-IS User Guide
Table of Contents Expand all
list Table of Contents
file_download PDF
{ "lLangCode": "en", "lName": "English", "lCountryCode": "us", "transcode": "en_US" }
English
keyboard_arrow_right

Example: Configuring a Routing Policy to Redistribute BGP Routes with a Specific Community Tag into IS-IS

date_range 24-Nov-23

This example defines a policy that takes BGP routes from the Edu community and places them into IS-IS with a metric of 63.

Requirements

No special configuration beyond device initialization is required before configuring this example.

Overview

Figure 1 shows the topology used in this example.

Figure 1: Redistributing BGP Routes with a Specific Community Tag into IS-ISRedistributing BGP Routes with a Specific Community Tag into IS-IS

In this example, Device A, Device B, Device C, and Device D are in autonomous system (AS) 1 and are running IS-IS. All of the AS 1 devices, except Device D, are running internal BGP (IBGP).

Device E is in AS 2 and has an external BGP (EBGP) peering session with Device C. Device E has two static routes, 10.2.0.0/16 and 10.3.0.0/16. These routes are tagged with the Edu 2:5 community attribute and are advertised by way of EBGP to Device C.

Device C accepts the BGP routes that are tagged with the Edu 2:5 community attribute, redistributes the routes into IS-IS, and applies an IS-IS metric of 63 to these routes.

CLI Quick Configuration shows the configuration for all of the devices in Figure 1. The section #configuration589__isis-community-step-by-step describes the steps on Device C and Device E.

Configuration

Procedure

CLI Quick Configuration

To quickly configure this example, copy the following commands, paste them into a text file, remove any line breaks, change any details necessary to match your network configuration, and then copy and paste the commands into the CLI at the [edit] hierarchy level.

Device A

content_copy zoom_out_map
set interfaces fe-1/2/0 unit 0 family inet address 10.0.0.5/30
set interfaces fe-1/2/0 unit 0 family iso
set interfaces lo0 unit 0 family inet address 192.168.0.1/32
set interfaces lo0 unit 0 family iso address 49.0002.0192.0168.0001.00
set protocols bgp group int type internal
set protocols bgp group int local-address 192.168.0.1
set protocols bgp group int neighbor 192.168.0.2
set protocols bgp group int neighbor 192.168.0.3
set protocols isis interface fe-1/2/0.0 level 1 disable
set protocols isis interface lo0.0
set routing-options router-id 192.168.0.1
set routing-options autonomous-system 1

Device B

content_copy zoom_out_map
set interfaces fe-1/2/0 unit 0 family inet address 10.0.0.6/30
set interfaces fe-1/2/0 unit 0 family iso
set interfaces fe-1/2/1 unit 0 family inet address 10.0.0.9/30
set interfaces fe-1/2/1 unit 0 family iso
set interfaces lo0 unit 0 family inet address 192.168.0.2/32
set interfaces lo0 unit 0 family iso address 49.0002.0192.0168.0002.00
set protocols bgp group int type internal
set protocols bgp group int local-address 192.168.0.2
set protocols bgp group int neighbor 192.168.0.1
set protocols bgp group int neighbor 192.168.0.3
set protocols isis interface fe-1/2/0.0 level 1 disable
set protocols isis interface fe-1/2/1.0 level 1 disable
set protocols isis interface lo0.0
set routing-options router-id 192.168.0.2
set routing-options autonomous-system 1

Device C

content_copy zoom_out_map
set interfaces fe-1/2/0 unit 0 family inet address 10.0.0.10/30
set interfaces fe-1/2/0 unit 0 family iso
set interfaces fe-1/2/1 unit 0 family inet address 10.0.0.13/30
set interfaces fe-1/2/1 unit 0 family iso
set interfaces fe-1/2/2 unit 0 family inet address 10.0.0.25/30
set interfaces fe-1/2/2 unit 0 family iso
set interfaces lo0 unit 0 family inet address 192.168.0.3/32
set interfaces lo0 unit 0 family iso address 49.0002.0192.0168.0003.00
set protocols bgp group int type internal
set protocols bgp group int local-address 192.168.0.3
set protocols bgp group int neighbor 192.168.0.1
set protocols bgp group int neighbor 192.168.0.2
set protocols bgp group external-peers type external
set protocols bgp group external-peers export send-isis-and-direct
set protocols bgp group external-peers peer-as 2
set protocols bgp group external-peers neighbor 10.0.0.26
set protocols isis export Edu-to-isis
set protocols isis interface fe-1/2/0.0 level 1 disable
set protocols isis interface fe-1/2/1.0 level 1 disable
set protocols isis interface fe-1/2/2.0 level 1 disable
set protocols isis interface fe-1/2/2.0 level 2 passive
set protocols isis interface lo0.0
set policy-options policy-statement Edu-to-isis term 1 from protocol bgp
set policy-options policy-statement Edu-to-isis term 1 from community Edu
set policy-options policy-statement Edu-to-isis term 1 then metric 63
set policy-options policy-statement Edu-to-isis term 1 then accept
set policy-options policy-statement send-isis-and-direct term 1 from protocol isis
set policy-options policy-statement send-isis-and-direct term 1 from protocol direct
set policy-options policy-statement send-isis-and-direct term 1 from route-filter 10.0.0.0/16 orlonger
set policy-options policy-statement send-isis-and-direct term 1 from route-filter 192.168.0.0/16 orlonger
set policy-options policy-statement send-isis-and-direct term 1 then accept
set policy-options community Edu members 2:5
set routing-options router-id 192.168.0.3
set routing-options autonomous-system 1

Device D

content_copy zoom_out_map
set interfaces fe-1/2/0 unit 0 family inet address 10.0.0.14/30
set interfaces fe-1/2/0 unit 0 family iso
set interfaces lo0 unit 0 family inet address 192.168.0.4/32
set interfaces lo0 unit 0 family iso address 49.0002.0192.0168.0004.00
set protocols isis interface fe-1/2/0.0 level 1 disable
set protocols isis interface lo0.0
set routing-options router-id 192.168.0.4
set routing-options autonomous-system 1

Device E

content_copy zoom_out_map
set interfaces fe-1/2/0 unit 0 family inet address 10.0.0.26/30
set interfaces lo0 unit 7 family inet address 192.168.0.5/32 primary
set interfaces lo0 unit 7 family inet address 10.2.0.1/32
set interfaces lo0 unit 7 family inet address 10.3.0.1/32
set protocols bgp group external-peers type external
set protocols bgp group external-peers export statics
set protocols bgp group external-peers peer-as 1
set protocols bgp group external-peers neighbor 10.0.0.25
set policy-options policy-statement statics from protocol static
set policy-options policy-statement statics then community add Edu
set policy-options policy-statement statics then accept
set policy-options community Edu members 2:5
set routing-options static route 10.2.0.0/16 reject
set routing-options static route 10.2.0.0/16 install
set routing-options static route 10.3.0.0/16 reject
set routing-options static route 10.3.0.0/16 install
set routing-options router-id 192.168.0.5
set routing-options autonomous-system 2

Step-by-Step Procedure

The following example requires you to navigate various levels in the configuration hierarchy. For information about navigating the CLI, see Using the CLI Editor in Configuration Mode in the CLI User Guide.

To configure Device E:

  1. Configure the interfaces.

    content_copy zoom_out_map
    [edit interfaces]
    user@E# set fe-1/2/0 unit 0 family inet address 10.0.0.26/30
    user@E# set lo0 unit 7 family inet address 192.168.0.5/32 primary
    user@E# set lo0 unit 7 family inet address 10.2.0.1/32
    user@E# set lo0 unit 7 family inet address 10.3.0.1/32
    
  2. Configure the statics policy, which adds the Edu community attribute to the static routes.

    content_copy zoom_out_map
    [edit policy-options]
    user@E# set policy-statement statics from protocol static
    user@E# set policy-statement statics then community add Edu
    user@E# set policy-statement statics then accept
    user@E# set community Edu members 2:5
    
  3. Configure EBGP and apply the statics policy.

    content_copy zoom_out_map
    [edit protocols bgp group external-peers]
    user@E# set type external
    user@E# set export statics
    user@E# set peer-as 1
    user@E# set protocols bgp group external-peers neighbor 10.0.0.25
    
  4. Configure the static routes.

    content_copy zoom_out_map
    [edit routing-options static]
    user@E# set route 10.2.0.0/16 reject
    user@E# set route 10.2.0.0/16 install
    user@E# set route 10.3.0.0/16 reject
    user@E# set route 10.3.0.0/16 install
    
  5. Configure the router ID and the AS number.

    content_copy zoom_out_map
    [edit routing-options]
    user@E# set router-id 192.168.0.5
    user@E# set autonomous-system 2
    

Step-by-Step Procedure

The following example requires you to navigate various levels in the configuration hierarchy. For information about navigating the CLI, see Using the CLI Editor in Configuration Mode in the CLI User Guide.

To configure Device C:

  1. Configure the interfaces.

    content_copy zoom_out_map
    [edit interfaces]
    user@C# set fe-1/2/0 unit 0 family inet address 10.0.0.10/30
    user@C# set fe-1/2/0 unit 0 family iso
    user@C# set fe-1/2/1 unit 0 family inet address 10.0.0.13/30
    user@C# set fe-1/2/1 unit 0 family iso
    user@C# set fe-1/2/2 unit 0 family inet address 10.0.0.25/30
    user@C# set fe-1/2/2 unit 0 family iso
    user@C# set lo0 unit 0 family inet address 192.168.0.3/32
    user@C# set lo0 unit 0 family iso address 49.0002.0192.0168.0003.00
    
  2. Configure IBGP.

    content_copy zoom_out_map
    [edit protocols bgp group int]
    user@C# set type internal
    user@C# set local-address 192.168.0.3
    user@C# set neighbor 192.168.0.1
    user@C# set neighbor 192.168.0.2
    
  3. Configure the Edu-to-isis policy, which redistributes the Edu-tagged BGP routes learned from Device E and applies a metric of 63.

    content_copy zoom_out_map
    [edit policy-options]
    user@C# set policy-statement Edu-to-isis term 1 from protocol bgp
    user@C# set policy-statement Edu-to-isis term 1 from community Edu
    user@C# set policy-statement Edu-to-isis term 1 then metric 63
    user@C# set policy-statement Edu-to-isis term 1 then accept
    user@C# set community Edu members 2:5
    
  4. Enable IS-IS on the interfaces, and apply the Edu-to-isis policy.

    content_copy zoom_out_map
    [edit protocols isis]
    user@C# set export Edu-to-isis
    user@C# set interface fe-1/2/0.0 level 1 disable
    user@C# set interface fe-1/2/1.0 level 1 disable
    user@C# set interface fe-1/2/2.0 level 1 disable
    user@C# set interface fe-1/2/2.0 level 2 passive
    user@C# set interface lo0.0
    
  5. Configure the send-isis-and-direct policy, which redistributes routes to Device E, through EBGP.

    Without this policy, Device E would not have connectivity to the networks in AS 1.

    content_copy zoom_out_map
    [edit policy-options policy-statement send-isis-and-direct term 1]
    user@C# set from protocol isis
    user@C# set from protocol direct
    user@C# set from route-filter 10.0.0.0/16 orlonger
    user@C# set from route-filter 192.168.0.0/16 orlonger
    user@C# set then accept
    
  6. Configure EBGP and apply the send-isis-and-direct policy.

    content_copy zoom_out_map
    [edit protocols bgp group external-peers]
    user@C# set type external
    user@C# set export send-isis-and-direct
    user@C# set peer-as 2
    user@C# set neighbor 10.0.0.26
    
  7. Configure the router ID and the autonomous system (AS) number.

    content_copy zoom_out_map
    [edit routing-options]
    user@C# set router-id 192.168.0.3
    user@C# set autonomous-system 1
    

Results

From configuration mode, confirm your configuration by entering the show interfaces, show protocols, show policy-options, and show routing-options commands. If the output does not display the intended configuration, repeat the instructions in this example to correct the configuration.

Device E

content_copy zoom_out_map
user@E# show interfaces
fe-1/2/0 {
    unit 0 {
        family inet {
            address 10.0.0.26/30;
        }
    }
}
lo0 {
    unit 0 {
        family inet {
            address 192.168.0.5/32 {
                primary;
            }
            address 10.2.0.1/32;
            address 10.3.0.1/32;
        }
    }
}
content_copy zoom_out_map
user@E# show protocols
bgp {
    group external-peers {
        type external;
        export statics;
        peer-as 1;
        neighbor 10.0.0.25;
    }
}
content_copy zoom_out_map
user@E# show policy-options
policy-statement statics {
    from protocol static;
    then {
        community add Edu;
        accept;
    }
}
community Edu members 2:5;
content_copy zoom_out_map
user@E# show routing-options
static {
    route 10.2.0.0/16 {
        reject;
        install;
    }
    route 10.3.0.0/16 {
        reject;
        install;
    }
}
router-id 192.168.0.5;
autonomous-system 2;

Device C

content_copy zoom_out_map
user@C# show interfaces
fe-1/2/0 {
    unit 0 {
        family inet {
            address 10.0.0.10/30;
        }
        family iso;
    }
}
fe-1/2/1 {
    unit 0 {
        family inet {
            address 10.0.0.13/30;
        }
        family iso;
    }
}
fe-1/2/2 {
    unit 0 {
        family inet {
            address 10.0.0.25/30;
        }
        family iso;
    }
}
lo0 {
    unit 0 {
        family inet {
            address 192.168.0.3/32;
        }
        family iso {
            address 49.0002.0192.0168.0003.00;
        }
    }
}
content_copy zoom_out_map
user@C# show protocols
bgp {
    group int {
        type internal;
        local-address 192.168.0.3;
        neighbor 192.168.0.1;
        neighbor 192.168.0.2;
    }
    group external-peers {
        type external;
        export send-isis-and-direct;
        peer-as 2;
        neighbor 10.0.0.26;
    }
}
isis {
    export Edu-to-isis;
    interface fe-1/2/0.0 {
        level 1 disable;
    }
    interface fe-1/2/1.0 {
        level 1 disable;
    }
    interface fe-1/2/2.0 {
        level 1 disable;
        level 2 passive;
    }
    interface lo0.0;
}
content_copy zoom_out_map
user@C# show policy-options
policy-statement Edu-to-isis {
    term 1 {
        from {
            protocol bgp;
            community Edu;
        }
        then {
            metric 63;
            accept;
        }
    }
}
policy-statement send-isis-and-direct {
    term 1 {
        from {
            protocol [ isis direct ];
            route-filter 10.0.0.0/16 orlonger;
            route-filter 192.168.0.0/16 orlonger;
        }
        then accept;
    }
}
community Edu members 2:5;
content_copy zoom_out_map
user@C# show routing-options
router-id 192.168.0.3;
autonomous-system 1;

If you are done configuring the device, enter commit from configuration mode.

Verification

Confirm that the configuration is working properly.

Verifying the IS-IS Neighbor

Purpose

Verify that the BGP routes from Device E are communicated on the IS-IS network in AS 1.

Action

From operational mode, enter the show route protocol isis command.

content_copy zoom_out_map
user@D> show route protocol isis
inet.0: 11 destinations, 11 routes (11 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

10.0.0.4/30        *[IS-IS/18] 22:30:53, metric 30
                    > to 10.0.0.13 via fe-1/2/0.0
10.0.0.8/30        *[IS-IS/18] 22:30:53, metric 20
                    > to 10.0.0.13 via fe-1/2/0.0
10.0.0.24/30       *[IS-IS/18] 03:31:21, metric 20
                    > to 10.0.0.13 via fe-1/2/0.0
10.2.0.0/16        *[IS-IS/165] 02:36:31, metric 73
                    > to 10.0.0.13 via fe-1/2/0.0
10.3.0.0/16        *[IS-IS/165] 02:36:31, metric 73
                    > to 10.0.0.13 via fe-1/2/0.0
192.168.0.1/32     *[IS-IS/18] 03:40:28, metric 30
                    > to 10.0.0.13 via fe-1/2/0.0
192.168.0.2/32     *[IS-IS/18] 22:30:53, metric 20
                    > to 10.0.0.13 via fe-1/2/0.0
192.168.0.3/32     *[IS-IS/18] 22:30:53, metric 10
                    > to 10.0.0.13 via fe-1/2/0.0

iso.0: 1 destinations, 1 routes (1 active, 0 holddown, 0 hidden)

Meaning

As expected, the 10.2.0.0/16 and 10.3.0.0/16 routes are in Device D’s routing table as IS-IS external routes with a metric of 73. If Device C had not added 63 to the metric, Device D would have a metric of 10 for these routes.

footer-navigation