Route Map
show route-map
Section titled “show route-map”[Command]
show route-map WORD
[Purpose]
Display data about each daemons knowledge of individual route-maps
[Parameter]
| Parameter | Description |
|---|---|
| WORD | route-map name |
[View]
System view
[Use Cases]
sonic# show route-mapclear route-map counters
Section titled “clear route-map counters”[Command]
clear route-map counters WORD
[Purpose]
Clear counters that are being stored about the route-map utilization so that subsuquent show commands will indicate since the last clear
[Parameter]
| Parameter | Description |
|---|---|
| WORD | route-map name |
[View]
System view
[Use Cases]
sonic# clear route-map countersshow ip prefix-list
Section titled “show ip prefix-list”[Command]
show ip prefix-list {detail|summary| NAME }
[Purpose]
Display the IP prefix list
[View]
System view
[Use Cases]
sonic# show ip prefix-list summaryPrefix-list with the last deletion/insertion: testZEBRA: ip prefix-list test: count: 1, range entries: 0, sequences: 1 - 1Prefix-list with the last deletion/insertion: testOSPF: ip prefix-list test: count: 1, range entries: 0, sequences: 1 - 1Prefix-list with the last deletion/insertion: testBGP: ip prefix-list test: count: 1, range entries: 0, sequences: 1 - 1Prefix-list with the last deletion/insertion: testISIS: ip prefix-list test: count: 1, range entries: 0, sequences: 1 - 1bgp as-path access-list
Section titled “bgp as-path access-list”[Command]
bgp as-path access-list WORD {permit|deny} LINE
no bgp as-path access-list WORD {permit|deny} LINE
[Purpose]
Configure route filtering policies based on AS path lists
[Parameter]
| Parameter | Description |
|---|---|
| WORD | Access-list name |
| LINE | Regular-expression (1234567890_^|[, {}() ]$*+.?-\) to match the BGP AS paths |
[View]
System configuration view
[Use Cases]
sonic# configure terminalsonic(config)# bgp as-path access-list s permit 66bgp large-community-list
Section titled “bgp large-community-list”[Command]
bgp large-community-list {standard|expanded} NAME {permit|deny} LARGE-COMMUNITY
no bgp large-community-list {standard|expanded} NAME {permit|deny} LARGE-COMMUNITY
[Purpose]
This command defines a new standard large-community-list
[Parameter]
| Parameter | Description |
|---|---|
| Standard | Standard community list |
| Expanded | Expanded community list |
| NAME | Community list name |
| LARGE-COMMUNITY | large community in ‘aa:bb:cc’ format |
[View]
System configuration view
[Notes] When filtering BGP large community attributes, you can configure multiple filter criteria within the same entry. The relationship between filter criteria is “AND,” which means all filter criteria must be matched for the rule to be considered a match. For example, with the command “bgp large-community-list standard test 10 permit 100:1:1200:1:1300:1:1,” the rule will be considered a match only when all three large community values (100:1:1, 200:1:1, and 300:1:1) are simultaneously present. Within a single list, multiple rules have an “OR” relationship. For example, with the commands “bgp large-community-list standard test 10 permit 100:1:1” and “bgp large-community-list standard test 20 permit 200:1:1,” when searching for rules within the “test” group, matching either 100:1:1 or 200:1:1 will be considered a match.
[Use Cases]
sonic# configure terminalsonic(config)# bgp large-community-list standard as permit aa:bb:ccroute-map
Section titled “route-map”[Command]
route-map WORD {permit|deny} ORDER
no route-map WORD {permit|deny} ORDER
[Purpose]
Configure the order’th entry in route-map-name with Match Policy of either permit or deny
[Parameter]
| Parameter | Description |
|---|---|
| WORD | route-map name |
| ORDER | Sequence to insert to/delete from existing route-map entry (1..65535) |
[Notes] This command unconfigures the order entry in the routing table name.
[View]
System configuration view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233ip prefix
Section titled “ip prefix”[Command]
ip prefix NAME
no ip prefix NAME [seq number ] {permit|deny} {any| A.B.C.D/M {ge|le} length }
[Purpose]
Configures an IP prefix list or one entry in the IP prefix list
[Parameter]
| Parameter | Description |
|---|---|
| NAME | Specifies the name of an IP prefix list |
| number | Specifies the sequence number of the entry in the IP prefix list. The value is an integer ranging from 1 to 4294967295, By default, the sequence number increases with a step of 5 according to the configuration order, and the first number is 1 |
| permit | Specifies the matching mode of the IP prefix list as permit. In permit mode, if the IP address to be filtered is in the defined prefix range, the IP address matches the route-policy and no longer matches against the next entry. Otherwise, the IP address continues to match against the next entry |
| deny | Specifies the matching mode of the IP prefix list as deny. In deny mode, if the IP address to be filtered is in the defined prefix range, the IP address fails to match the route-policy and cannot match against the next entry. Otherwise, the IP address continues to match against the next entry |
| any | All IP address |
| A.B.C.D/ | Specifies the IP address |
| ge length | Specifies the minimum value of the mask length range |
| le length | Specifies the maximum value of the mask length range |
[Notes] An IP prefix list can be used as a filter or as filtering conditions of a route-map The matching principle of table entries in the address prefix list is: match according to the ordinal ID from smallest to largest, and no other table entries will be matched after the filtered route hits a certain table entry, and the route that cannot match any table entry is deemed to have failed the filter and will not enter any subsequent processing
[View]
System config view
[Use Cases]
sonic(config)# ip prefix-list test permit 1.1.1.0/24 ge 32match {ip|ipv6} address
Section titled “match {ip|ipv6} address”[Command]
match {ip|ipv6} address {prefix-len LENGTH |prefix-list PREFIX-LIST-NAME } no match {ip|ipv6} address {prefix-len LENGTH |prefix-list PREFIX-LIST-NAME }
[Purpose]
Matches the specified prefix-list
[Parameter]
| Parameter | Description |
|---|---|
| LENGTH | Match prefix length of IP address |
| PREFIX-LIST-NAME | Match entries of prefix-lists |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# match ip address prefix-list testmatch {ip|ipv6} next-hop
Section titled “match {ip|ipv6} next-hop”[Command]
match {ip|ipv6} next-hop {prefix-len LENGTH |prefix-list PREFIX-LIST-NAME |address{ A.B.C.D | X:X::X:X **}|type blackhole}**no match {ip|ipv6} next-hop {prefix-len LENGTH |prefix-list PREFIX-LISTNAME |address{ A.B.C.D | X:X::X:X }|type blackhole}
[Purpose]
Match the next-hop
[Parameter]
| Parameter | Description |
|---|---|
| LENGTH | Match prefix length of IP address |
| PREFIX-LIST-NAME | Match entries of prefix-lists |
| A.B.C.D | IP address of next-hop |
| X:X::X:X | IPv6 address of next-hop |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# match ip next-hop type blackholematch as-path
Section titled “match as-path”[Command]
match as-path String no match as-path String
[Purpose]
Matches the specified as_path.
[Parameter]
| Parameter | Description |
|---|---|
| String | AS path access-list name |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# match as-path testmatch metric
Section titled “match metric”[Command]
match metric metric no match metric metric
[Purpose]
Matches the specified metric.
[Parameter]
| Parameter | Description |
|---|---|
| METRIC | value (0..4294967295) |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# match metric 12match tag
Section titled “match tag”[Command]
match tag TAG
no match tag TAG
[Purpose]
Matches the specified tag value associated with the route.
[Parameter]
| Parameter | Description |
|---|---|
| TAG | Tag value (1..4294967295) |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# match tag 12match local-preference
Section titled “match local-preference”[Command]
match local-preference metric no match local-preference metric
[Purpose]
Matches the specified local-preference.
[Parameter]
| Parameter | Description |
|---|---|
| METRIC | Metric value (0..4294967295) |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# match local-preference 12match community
Section titled “match community”[Command]
match community COMMUNITY-LIST
no math community COMMUNITY-LIST
[Purpose]
Matches the specified community_list.
[Parameter]
| Parameter | Description |
|---|---|
| COMMUNITY-LIST | Community-list name |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# match community testmatch peer
Section titled “match peer”[Command] match peer { A.B.C.D | X:X::X:X | INTERACE_NAME }
no match peer { A.B.C.D | X:X::X:X | INTERACE_NAME }
[Purpose]
This is a BGP specific match command. Matches the peer ipv6 address if the neighbor was specified in this manner.
[Parameter]
| Parameter | Description |
|---|---|
| A.B.C.D | IP address of peer |
| X:X::X:X | IPv6 address of peer |
| INTERACE_NAME | Interface name of peer |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# match peer 1.1.1.1match peer local
Section titled “match peer local”[Command]
match peer local
no match peer local
[Purpose]
Matches the peer static or redistributed routes.
[Notes] This command unmatches peer-to-peer static or redistributed routes.
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# match peer localmatch source-protocol
Section titled “match source-protocol”[Command]
match source-protocol {kernel|connected|static|rip|ripng|ospf|ospf6|isis|bgp|eigrp|nhrp|table|vnc|babel|sharp|openfabric}
no match source-protocol {kernel|connected|static|rip|ripng|ospf|ospf6|isis|bgp|eigrp|nhrp|table|vnc|babel|sharp|openfabric}
[Purpose]
This is a ZEBRA specific match command. Matches the originating protocol specified.
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# match source-protocol static lmatch source-instance
Section titled “match source-instance”[Command]
match source-instance INSTANCE
no match source-instance INSTANCE
[Purpose]
This is a ZEBRA specific match command.
[Parameter]
| Parameter | Description |
|---|---|
| INSTANCE | The instance number (0..255) |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# match source-instance 2match evpn route-type
Section titled “match evpn route-type”[Command] match evpn route-type {macip|multicast|prefix} no match evpn route-type {macip|multicast|prefix}
[Purpose] Match the specified EVPN route type.
[Parameter]
| Parameter | Description |
|---|---|
| macip | EVPN Type2 route |
| multicast | EVPN Type3 route |
| prefix | EVPN Type5 route |
[View] Route-map View
[Use Cases]
sonic(config)# route-map a permit 10sonic(config-route-map)# match evpn route-type macipset tag
Section titled “set tag”[Command]
set tag TAG
no set tag TAG
[Purpose]
Set a tag on the matched route.
[Parameter]
| Parameter | Description |
|---|---|
| TAG | Tag value (1..4294967295) |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# set tag 12set ip next-hop
Section titled “set ip next-hop”[Command]
set ip next-hop A.B.C.D
no set ip next-hop A.B.C.D
[Purpose]
Set the BGP nexthop address
[Parameter]
| Parameter | Description |
|---|---|
| A.B.C.D | IP address |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# set ip next-hop 1.1.1.1set ip next-hop peer-address
Section titled “set ip next-hop peer-address”[Command]
set ip next-hop peer-address
no set ip next-hop peer-address
[Purpose]
Set the BGP nexthop address to the address of the peer
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# set ip next-hop peer-addressset ip next-hop unchanged
Section titled “set ip next-hop unchanged”[Command] set ip next-hop unchanged
no set ip next-hop unchanged
[Purpose]
Set the route-map as unchanged
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# set ip next-hop unchangedset ipv6 next-hop peer-address
Section titled “set ipv6 next-hop peer-address”[Command]
set ipv6 next-hop peer-address
no set ipv6 next-hop peer-address
[Purpose]
Set the BGP nexthop address to the address of the peer.
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# set ipv6 next-hop peer-addressset ipv6 next-hop prefer-global
Section titled “set ipv6 next-hop prefer-global”[Command] set ipv6 next-hop prefer-global
no set ipv6 next-hop prefer-global
[Purpose]
For Incoming and Import Route-maps if we receive a v6 global and v6 LL address for the route, then prefer to use the global address as the nexthop.
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# set ipv6 next-hop prefer-globalset ipv6 next-hop global
Section titled “set ipv6 next-hop global”[Command]
set ipv6 next-hop global X:X::X:X
no set ipv6 next-hop global X:X::X:X
[Purpose]
Set the next-hop to the specified IPV6_ADDRESS for both incoming and outgoing route-maps.
[Parameter]
| Parameter | Description |
|---|---|
| X:X::X:X | IPv6 address of next hop |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# set ipv6 next-hop global 100::1set ipv6 next-hop local
Section titled “set ipv6 next-hop local”[Command]
set ipv6 next-hop local X:X::X:X
no set ipv6 next-hop local X:X::X:X
[Purpose]
Set the BGP-4+ link local IPv6 nexthop address.
[Parameter]
| Parameter | Description |
|---|---|
| X:X::X:X | IPv6 address of next hop |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# set ipv6 next-hop local 100::1set local-preference
Section titled “set local-preference”[Command]
set local-preference PREFERENCE
no set local-preference PREFERENCE
[Purpose]
Subtract the BGP local preference.
[Parameter]
| Parameter | Description |
|---|---|
| PREFERENCE | Preference value (0-4294967295) |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# set local-preference 12[Command]
set distance DISTANCE
no set distance DISTANCE
[Purpose]
Set the administrative distance
[Parameter]
| Parameter | Description |
|---|---|
| DISTANCE | Distance value (0..255) |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# set distance 12[Command]
set weight WEIGHT
no set weight WEIGHT
[Purpose]
Set the route’s weight.
[Parameter]
| Parameter | Description |
|---|---|
| WEIGHT | value (0..4294967295) |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# set weight 12[Command]
set metric { metric |rtt|+rtt|-rtt>}
no set metric { metric |rtt|+rtt|-rtt>}
[Purpose]
Set the BGP attribute MED to a specific value.
[Parameter]
| Parameter | Description |
|---|---|
| METRIC | 2147483647..2147483647 |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# set metric 12set as-path prepend
Section titled “set as-path prepend”[Command]
**set as-path prepend ** [ AS_PATH* ] [last-as NUMBER ]
**no set as-path prepend ** [ AS_PATH ] [last-as NUMBER ]
[Purpose]
Set the BGP AS path to prepend.
[Parameter]
| Parameter | Description |
|---|---|
| AS_PATH | AS number (1..4294967295) |
| NUMBER | Number of times to insert (1..10) |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# set as-path prepend 12set as-path exclude
Section titled “set as-path exclude”[Command]
**set as-path exclude ** [ AS_NUMBER ]
**no set as-path exclude ** [ AS_NUMBER ]
[Purpose]
Drop AS-NUMBER from the BGP AS path.
[Parameter]
| Parameter | Description |
|---|---|
| AS_NUMBER | AS number (1..4294967295) |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# set as-path exclude 12set community
Section titled “set community”[Command]
**set community ** [ COMMUNITY ]
**no set community ** [ COMMUNITY ]
[Purpose]
Set the BGP community attribute.
[Parameter]
| Parameter | Description |
|---|---|
| COMMUNITY | Community number in AA:NN format (where AA and NN are (0-65535)) or local-AS |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# set community 12set origin {egp|igp|incomplete}
Section titled “set origin {egp|igp|incomplete}”[Command]
set origin {egp|igp|incomplete} no set origin {egp|igp|incomplete}
[Purpose]
Set BGP route origin.
[Notes] This command cancels the BGP route origin setting.
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# set origin igpset table
Section titled “set table”[Command]
set table TABLEID
no set table TABLEID
[Purpose]
Set the BGP table to a given table identifier.
[Parameter]
| Parameter | Description |
|---|---|
| TABLEID | Kernel routing table id (1..4294967295) |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# set table 12set sr-te color
Section titled “set sr-te color”[Command]
set sr-te color COLOR
no set sr-te color COLOR
[Purpose]
Set the color of a SR-TE Policy to be applied to a learned route.
[Parameter]
| Parameter | Description |
|---|---|
| COLOR | Color of the SR-TE Policies to match with (1..4294967295) |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# set sr-te color 12on-match
Section titled “on-match”[Command]
on-match {goto NUMBER |next} no on-match {goto NUMBER |next}
[Purpose]
Proceed on to the next entry in the route-map
[Parameter]
| Parameter | Description |
|---|---|
| NUMBER | Number (1..65535) |
[View]
Route-map view
[Use Cases]
sonic# clear route-map counterssonic(config)# route-map test permit 233sonic(config-route-map)# on-match nextset src
Section titled “set src”[Command]
set src ip_address
[Purpose]
Set the preferred source address for matching routes when installing in the kernel
[Parameter]
| Parameter | Description |
|---|---|
| ip_address | IPv4/IPv6 address |
[View]
Route-map view
[Use Cases]
sonic(config)# route-map RM_SET_SRC permit 10sonic(config-route-map)# set src 30.11.0.48ip protocol
Section titled “ip protocol”[Command]
ip protocol protocol route-map routemap
[Purpose]
Filter which routes will install in the kernel
[Parameter]
| Parameter | Description |
|---|---|
| protocol | kernel/connected/static/rip/ospf/isis/bgp/any |
| routemap | router map name |
[View]
System configuration view
[Use Cases]
sonic(config)# ip protocol bgp route-map RM_SET_SRC