Skip to content

Community Set#

Routing Policies → CSCommunity Sets

The CommunitySet resource defines a named collection of BGP community members and/or a match expression. A CommunitySet can be referenced by a routing policy to:

  • match a route that has none, any, or all of these communities
  • add, remove, or replace communities for a route

CommunitySet types#

A CommunitySet can be one of four types. The type determines the configuration path where the communities are configured, which is relevant for some operating systems.

Hybrid#

Operating System Configuration path
SR Linux .routing-policy.community-set
SR OS .configure.policy-options.community
EOS .routing-policy.defined-sets.bgp-defined-sets.community-sets
NXOS .System.rpm-items

Standard#

Operating System Configuration path
SR Linux .routing-policy.standard-community-set
SR OS Not supported
EOS Not supported
NXOS Not supported

Extended#

Operating System Configuration path
SR Linux .routing-policy.extended-community-set
SR OS .configure.policy-options.extended-community-set
EOS Not supported
NXOS Not supported

Large#

Operating System Configuration path
SR Linux Not supported
SR OS Not supported
EOS Not supported
NXOS Not supported

Match options#

When the community set is used in a Policy to take an action on routes that match a set of community members, the CommunitySet determines which routes are matched.

The matchSetOptions property accepts:

  • All to require all listed communities
  • Any to require any listed community
  • Invert to require none of the listed communities

Support varies by operating system and community-set type.

Match expressions#

The expressionMatch property may be used when more flexibility is required to match a route's communities. Expression syntax is platform-specific. The following examples use SR Linux syntax:

  • origin:65500:.*: route-origin extended communities whose Global Administrator is AS 65500
  • target:10.0.0.1:.*: routes with 10.0.0.1 as global administrator
  • gbp-tag:.*:9.*: SR Linux Group Policy ID extended communities whose Group Policy ID begins with 9

Using both members and expressions

SR Linux and SR OS configure both members and expressionMatch when both are provided. EOS and NXOS Hybrid sets require either members or expressionMatch, but not both.

Dependencies#

This resource does not have any dependencies.

Referenced resources#

This resource does not reference any other resource.

Examples#

apiVersion: routingpolicies.eda.nokia.com/v1
kind: CommunitySet
metadata:
  name: origin-dc
  namespace: routingpolicies
spec:
  members:
    - origin:65500:100
  type: Extended
cat << 'EOF' | kubectl apply -f -
apiVersion: routingpolicies.eda.nokia.com/v1
kind: CommunitySet
metadata:
  name: origin-dc
  namespace: routingpolicies
spec:
  members:
    - origin:65500:100
  type: Extended
EOF

Custom Resource Definition#

To browse the Custom Resource Definition go to crd.eda.dev.

CommunitySet

routingpolicies.eda.nokia.com / v1

SPEC

CommunitySetSpec defines the desired state of CommunitySet

  • #
  • #
  • #
  • #
  • #

STATUS

CommunitySetStatus defines the observed state of CommunitySet