Prerequisites for BGP per Neighbor SoO Configuration
This feature assumes that a Border Gateway Protocol (BGP) network is configured and that Cisco Express Forwarding is enabled in your network.
The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
The BGP per Neighbor SoO Configuration feature simplifies the configuration of the site-of-origin (SoO) value. Per neighbor SoO configuration introduces two new commands that can be configured in submodes under router configuration mode to set the SoO value.
This feature assumes that a Border Gateway Protocol (BGP) network is configured and that Cisco Express Forwarding is enabled in your network.
A BGP neighbor or peer policy template-based SoO configuration takes precedence over the SoO value configured in an inbound route map.
Information About Configuring BGP per Neighbor SoO
The site-of-origin (SoO) extended community is a BGP extended community attribute that is used to identify routes that have originated from a site so that the readvertisement of that prefix back to the source site can be prevented. The SoO extended community uniquely identifies the site from which a router has learned a route. BGP can use the SoO value associated with a route to prevent routing loops.
A route distinguisher (RD) creates routing and forwarding tables and specifies the default route distinguisher for a VPN. The RD is added to the beginning of an IPv4 prefix to change it into a globally unique VPN-IPv4 prefix. An RD can be composed in one of two ways: with an autonomous system number and an arbitrary number or with an IP address and an arbitrary number.
You can enter an RD in either of these formats:
Enter a 16-bit autonomous system number, a colon, and a 32-bit number. For example:
45000:3
Enter a 32-bit IP address, a colon, and a 16-bit number. For example:
192.168.10.15:1
There are three ways to configure an SoO value for a BGP neighbor:
BGP peer policy template--A peer policy template is created, and an SoO value is configured as part of the peer policy. Under address family IPv4 VRF, a neighbor is identified and is configured to inherit the peer policy that contains the SoO value.
BGP neighbor command--Under address family IPv4 VRF, a neighbor is identified, and an SoO value is configured for the neighbor.
BGP peer group--Under address family IPv4 VRF, a BGP peer group is configured, an SoO value is configured for the peer group, a neighbor is identified, and the neighbor is configured as a member of the peer group.
Note |
A BGP neighbor or peer policy template-based SoO configuration takes precedence over the SoO value configured in an inbound route map. |
The configuration of SoO values for BGP neighbors is performed on a provider edge (PE) router, which is the VPN entry point. When SoO is enabled, the PE router forwards prefixes to the customer premises equipment (CPE) only when the SoO tag of the prefix does not match the SoO tag configured for the CPE.
For example, in the figure below, an SoO tag is set as 65000:1 for the customer site that includes routers CPE1 and CPE2 with an autonomous system number of 65000. When CPE1 sends prefixes to PE1, PE1 tags the prefixes with 65000:1, which is the SoO tag for CPE1 and CPE2. When PE1 sends the tagged prefixes to PE2, PE2 performs a match against the SoO tag from CPE2. Any prefixes with the tag value of 65000:1 are not sent to CPE2 because the SoO tag matches the SoO tag of CPE2, and a routing loop is avoided.
In releases prior to the introduction of this feature, the SoO extended community attribute is configured using an inbound route map that sets the SoO value during the update process. With the introduction of the BGP per Neighbor Site of Origin feature, two new commands configured in submodes under router configuration mode simplify the SoO value configuration.
Peer policy templates are used to configure BGP policy commands that are configured for neighbors that belong to specific address families. Peer policy templates are configured once and then applied to many neighbors through the direct application of a peer policy template or through inheritance from peer policy templates. The configuration of peer policy templates simplifies the configuration of BGP policy commands that are applied to all neighbors within an autonomous system.
Peer policy templates support inheritance. A directly applied peer policy template can directly or indirectly inherit configurations from up to seven peer policy templates. So, a total of eight peer policy templates can be applied to a neighbor or neighbor group.
The configuration of peer policy templates simplifies and improves the flexibility of BGP configuration. A specific policy can be configured once and referenced many times. Because a peer policy supports up to eight levels of inheritance, very specific and very complex BGP policies can be created.
For more details about BGP peer policy templates, see the "Configuring a Basic BGP Network" module.
How to Configure BGP per Neighbor SoO
Perform this task on both of the PE routers in the figure above to configure Virtual Routing and Forwarding (VRF) instances to be used with the per-VRF assignment tasks. In this task, Cisco Express Forwarding is enabled, and a VRF instance named SOO_VRF is created. To make the VRF functional, a route distinguisher is created, and the VRF is associated with an interface. When the route distinguisher is created, the routing and forwarding tables are created for the VRF instance named SOO_VRF. After associating the VRF with an interface, the interface is configured with an IP address.
Command or Action | Purpose | |||
---|---|---|---|---|
Step 1 |
enable Example:
|
Enables privileged EXEC mode.
|
||
Step 2 |
configure terminal Example:
|
Enters global configuration mode. |
||
Step 3 |
ip cef Example:
|
Enables Cisco Express Forwarding on the route processor. |
||
Step 4 |
ip vrf vrf-name Example:
|
Defines a VRF instance and enters VRF configuration mode. |
||
Step 5 |
rd route-distinguisher Example:
|
Creates routing and forwarding tables for a VRF and specifies the default RD for a VPN.
|
||
Step 6 |
route-target {export | both } route-target-ext-community Example:
|
Creates a route-target extended community for a VRF.
|
||
Step 7 |
route-target {import | both } route-target-ext-community Example:
|
Creates a route-target extended community for a VRF.
|
||
Step 8 |
exit Example:
|
Exits VRF configuration mode and returns to global configuration mode. |
||
Step 9 |
interface type number Example:
|
Configures an interface type and enters interface configuration mode. |
||
Step 10 |
ip vrf forwarding vrf-name [downstream vrf-name2 ] Example:
|
Associates a VRF with an interface or subinterface.
|
||
Step 11 |
ip address ip-address mask [secondary ] Example:
|
Configures an IP address.
|
||
Step 12 |
end Example:
|
Exits interface configuration mode and returns to privileged EXEC mode. |
||
Step 13 |
show ip vrf [brief | detail | interfaces | id ] [vrf-name ] [output-modifiers ] Example:
|
Displays the configured VRFs.
|
The following output of the show ip vrf command displays the VRF named SOO_VRF configured in this task.
Device# show ip vrf
Name Default RD Interfaces
SOO_VRF 1:1 GE1/0/0
Perform this task on router PE1 in the figure above to configure an SoO value for a BGP neighbor at the router CPE1 in the figure above using a peer policy template. In this task, a peer policy template is created, and the SoO value is configured for the peer policy. Under address family IPv4 VRF, a neighbor is identified and is configured to inherit the peer policy that contains the SoO value.
If a BGP peer inherits from several peer policy templates that specify different SoO values, the SoO value in the last template applied takes precedence and is applied to the peer. However, direct configuration of the SoO value on the BGP neighbor overrides any inherited template configurations of the SoO value.
This task assumes that the task described in the Enabling Cisco Express Forwarding and Configuring VRF Instances has been performed.
Note |
A BGP peer cannot inherit from a peer policy or session template and be configured as a peer group member at the same. BGP templates and BGP peer groups are mutually exclusive. > |
Command or Action | Purpose | |
---|---|---|
Step 1 |
enable Example:
|
Enables privileged EXEC mode.
|
Step 2 |
configure terminal Example:
|
Enters global configuration mode. |
Step 3 |
router bgp autonomous-system-number Example:
|
Enters router configuration mode for the specified routing process. |
Step 4 |
template peer-policy policy-template-name Example:
|
Creates a peer policy template and enters policy-template configuration mode. |
Step 5 |
soo extended-community-value Example:
|
Sets the SoO value for a BGP peer policy template.
|
Step 6 |
exit-peer-policy Example:
|
Exits policy-template configuration mode and returns to router configuration mode. |
Step 7 |
address-family ipv4 [unicast | multicast | vrf vrf-name ] Example:
|
Specifies the IPv4 address family and enters address family configuration mode.
|
Step 8 |
neighbor ip-address remote-as autonomous-system-number Example:
|
Adds the IP address of the neighbor in the specified autonomous system to the IPv4 multiprotocol BGP neighbor table of the local router. |
Step 9 |
neighbor ip-address activate Example:
|
Enables the neighbor to exchange prefixes for the IPv4 VRF address family with the local router. |
Step 10 |
neighbor ip-address inherit peer-policy policy-template-name Example:
|
Sends a peer policy template to a neighbor so that the neighbor can inherit the configuration.
|
Step 11 |
end Example:
|
Exits address family configuration mode and returns to privileged EXEC mode. |
Perform this task on router PE2 in the figure above to configure an SoO value for the BGP neighbor at router CPE2 in the figure above using a neighbor command. For the IPv4 VRF address family, a neighbor is identified, and an SoO value is configured for the neighbor.
Direct configuration of the SoO value on a BGP neighbor overrides any inherited peer policy template configurations of the SoO value.
This task assumes that the task described in the “Verifying CEF and Configuring VRF Instances” section has been performed with appropriate changes to interfaces and IP addresses.
Command or Action | Purpose | |||
---|---|---|---|---|
Step 1 |
enable Example:
|
Enables privileged EXEC mode.
|
||
Step 2 |
configure terminal Example:
|
Enters global configuration mode. |
||
Step 3 |
router bgp autonomous-system-number Example:
|
Enters router configuration mode for the specified routing process. |
||
Step 4 |
address-family ipv4 [unicast | multicast | vrf vrf-name ] Example:
|
Specifies the IPv4 address family and enters address family configuration mode.
|
||
Step 5 |
neighbor {ip-address | peer-group-name } remote-as autonomous-system-number Example:
|
Adds the IP address of the neighbor in the specified autonomous system to the IPv4 multiprotocol BGP neighbor table of the local router. |
||
Step 6 |
neighbor ip-address activate Example:
|
Enables the neighbor to exchange prefixes for the IPv4 VRF address family with the local router.
|
||
Step 7 |
neighbor {ip-address | peer-group-name } soo extended-community-value Example:
|
Sets the site-of-origin (SoO) value for a BGP neighbor or peer group.
|
||
Step 8 |
end Example:
|
Exits address family configuration mode and returns to privileged EXEC mode. |
Perform this task on router PE1 in the figure above to configure an SoO value for the BGP neighbor at router CPE1 in the figure above using a neighbor command with a BGP peer group. Under address family IPv4 VRF, a BGP peer group is created and an SoO value is configured using a BGP neighbor command, and a neighbor is then identified and added as a peer group member. A BGP peer group member inherits the configuration associated with a peer group, which in this example, includes the SoO value.
Direct configuration of the SoO value on a BGP neighbor overrides any inherited peer group configurations of the SoO value.
This task assumes that the task described in “Enabling Cisco Express Forwarding and Configuring VRF Instances” has been performed.
Note |
A BGP peer cannot inherit from a peer policy or session template and be configured as a peer group member at the same. BGP templates and BGP peer groups are mutually exclusive. |
Command or Action | Purpose | |
---|---|---|
Step 1 |
enable Example:
|
Enables privileged EXEC mode.
|
Step 2 |
configure terminal Example:
|
Enters global configuration mode. |
Step 3 |
router bgp autonomous-system-number Example:
|
Enters router configuration mode for the specified routing process. |
Step 4 |
address-family ipv4 [unicast | multicast | vrf vrf-name ] Example:
|
Specifies the IPv4 address family and enters address family configuration mode.
|
Step 5 |
neighbor peer-group-name peer-group Example:
|
Creates a BGP peer group. |
Step 6 |
neighbor {ip-address | peer-group-name } soo extended-community-value Example:
|
Sets the site-of-origin (SoO) value for a BGP neighbor or peer group.
|
Step 7 |
neighbor ip-address remote-as autonomous-system-number Example:
|
Adds the IP address of the neighbor in the specified autonomous system to the IPv4 multiprotocol BGP neighbor table of the local router. |
Step 8 |
neighbor ip-address activate Example:
|
Enables the neighbor to exchange prefixes for the IPv4 VRF address family with the local router. |
Step 9 |
neighbor ip-address peer-group peer-group-name Example:
|
Assigns the IP address of a BGP neighbor to a peer group. |
Step 10 |
end Example:
|
Exits address family configuration mode and returns to privileged EXEC mode. |
Configuration Examples for BGP per Neighbor SoO Configuration
The following example shows how to create a peer policy template and configure an SoO value as part of the peer policy. After enabling Cisco Express Forwarding and configuring a VRF instance named SOO_VRF, a peer policy template is created and an SoO value is configured as part of the peer policy. Under the IPv4 VRF address family, a neighbor is identified and configured to inherit the peer policy that contains the SoO value.
ip cef
ip vrf SOO_VRF
rd 1:1
route-target export 1:1
route-target import 1:1
exit
interface GigabitEthernet 1/0/0
ip vrf forwarding SOO_VRF
ip address 192.168.1.2 255.255.255.0
exit
router bgp 50000
template peer-policy SOO_POLICY
soo 65000:1
exit-peer-policy
address-family ipv4 vrf SOO_VRF
neighbor 192.168.1.1 remote-as 65000
neighbor 192.168.1.1 activate
neighbor 192.168.1.1 inherit peer-policy SOO_POLICY
end
The following example shows how to configure an SoO value for a BGP neighbor. After enabling Cisco Express Forwarding and configuring a VRF instance named SOO_VRF, a neighbor is identified in the IPv4 VRF address family and an SoO value is configured for the neighbor.
ip cef
ip vrf SOO_VRF
rd 1:1
route-target export 1:1
route-target import 1:1
exit
interface GigabitEthernet 1/0/0
ip vrf forwarding SOO_VRF
ip address 192.168.2.2 255.255.255.0
exit
router bgp 50000
address-family ipv4 vrf SOO_VRF
neighbor 192.168.2.1 remote-as 65000
neighbor 192.168.2.1 activate
neighbor 192.168.2.1 soo 65000:1
end
The following example shows how to configure an SoO value for a BGP peer group. After enabling Cisco Express Forwarding and configuring a VRF instance named SOO_VRF, a BGP peer group is configured in the IPv4 VRF address family, an SoO value is configured for the peer group, a neighbor is identified, and the neighbor is configured as a member of the peer group.
ip cef
ip vrf SOO_VRF
rd 1:1
route-target export 1:1
route-target import 1:1
exit
interface GigabitEthernet 1/0/0
ip vrf forwarding SOO_VRF
ip address 192.168.1.2 255.255.255.0
exit
router bgp 50000
address-family ipv4 vrf SOO_VRF
neighbor SOO_GROUP peer-group
neighbor SOO_GROUP soo 65000:65
neighbor 192.168.1.1 remote-as 65000
neighbor 192.168.1.1 activate
neighbor 192.168.1.1 peer-group SOO_GROUP
end
To read an overview of BGP, proceed to the "Cisco BGP Overview" module.
To perform basic BGP feature tasks, proceed to the "Configuring a Basic BGP Network" module.
To perform advanced BGP feature tasks, proceed to the "Configuring Advanced BGP Features" module.
To configure BGP neighbor session options, proceed to the "Configuring BGP Neighbor Session Options" module.
To perform internal BGP tasks, proceed to the "Configuring Internal BGP Features" module.
Related Topic |
Document Title |
---|---|
Cisco IOS commands |
|
BGP commands |
|
IP Switching commands |
MIB |
MIBs Link |
---|---|
— |
To locate and download MIBs for selected platforms, Cisco IOS releases, and feature sets, use Cisco MIB Locator found at the following URL: |
Description |
Link |
---|---|
The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password. |
The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Feature Name |
Releases |
Feature Information |
---|---|---|
BGP per Neighbor SoO Configuration |
Cisco IOS XE Release 2.1 |
The BGP per neighbor SOO configuration feature simplifies the configuration of the site-of-origin (SoO) parameter. The per neighbor SoO configuration introduces two new commands that can be configured in submodes under router configuration mode to set the SoO value. This feature was introduced on the Cisco ASR 1000 Series Aggregation Services Routers. The following commands were introduced by this feature: neighbor soo , soo . |