dellemc.enterprise_sonic.sonic_stp module – Manage STP configuration on SONiC
Note
This module is part of the dellemc.enterprise_sonic collection (version 3.0.0).
You might already have this collection installed if you are using the ansible
package.
It is not included in ansible-core
.
To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install dellemc.enterprise_sonic
.
To use it in a playbook, specify: dellemc.enterprise_sonic.sonic_stp
.
New in dellemc.enterprise_sonic 2.3.0
Synopsis
This module provides configuration management of STP for devices running SONiC
Parameters
Parameter |
Comments |
---|---|
Specifies STP configurations mstp, pvst and rapid_pvst are mutually exclusive. |
|
Global STP configuration |
|
Enables edge port BPDU filter Choices:
|
|
The manageable component of the bridge identifier Value must be a multiple of 4096 in the range of 0-61440 |
|
List of disabled STP VLANs. The value of a list item can be a single VLAN ID or a range of VLAN IDs separated by ‘-’ or ‘..’; for example 70-100 or 70..100. |
|
Specifies the type of STP enabled on the device Choices:
|
|
Delay in seconds used by STP bridges to transition root and designated ports to forwarding Range 4-30 |
|
Interval in seconds between periodic transmissions of configuration messages by designated ports Range 1-10 |
|
The loop guard default setting for the bridge Choices:
|
|
Maximum age in seconds of the information transmitted by the bridge when it is the root bridge Range 6-40 |
|
Enables PortFast globally on all access ports Configurable for pvst protocol Choices:
|
|
Specifies root guard recovery timeout in seconds before the port is moved back to forwarding state Range 5-600 |
|
Interfaces STP configuration |
|
Enables edge port BPDU filter Choices:
|
|
Enable edge port BPDU guard Choices:
|
|
The port’s contribution, when it is the root port, to the root path cost for the bridge Range 1-200000000 |
|
Configure interface as an STP edge port Choices:
|
|
Enables root guard or loop guard Choices:
|
|
Name of interface |
|
Specifies the interface’s link type Choices:
|
|
The manageable component of the port identifier Range 0-240 |
|
Enable/Disable portfast on specified interface Configurable for pvst protocol Choices:
|
|
Port to be shutdown when it receives a BPDU Choices:
|
|
Enables STP on the interface Choices:
|
|
Enables uplink fast Choices:
|
|
Multi STP configuration |
|
Delay in seconds used by STP bridges to transition root and designated ports to forwarding Range 4-30 |
|
Interval in seconds between periodic transmissions of configuration messages by designated ports Range 1-10 |
|
Maximum age in seconds of the information transmitted by the bridge when it is the root bridge Range 6-40 |
|
Number of bridges in an MST region that a BPDU can traverse before it is discarded Range 1-40 |
|
Configuration for MST instances |
|
The manageable component of the bridge identifier Value must be a multiple of 4096 in the range of 0-61440 |
|
List of STP enabled interfaces |
|
The port’s contribution, when it is the root port, to the root path cost for the bridge Range 1-200000000 |
|
Reference to the STP interface |
|
The manageable component of the port identifier, range 0-240 |
|
Value used to identify MST instance, range 0-4094 |
|
List of VLANs mapped to the MST instance. The value of a list item can be a single VLAN ID or a range of VLAN IDs separated by ‘-’ or ‘..’; for example 70-100 or 70..100. |
|
Name of the MST configuration identifier |
|
Revision level of the MST configuration identifier, range 0-65535 |
|
Per VLAN STP configuration |
|
The manageable component of the bridge identifier Value must be a multiple of 4096 in the range of 0-61440 |
|
Delay in seconds used by STP bridges to transition root and designated ports to forwarding Range 4-30 |
|
Interval in seconds between periodic transmissions of configuration messages by designated ports Range 1-10 |
|
List of STP enabled interfaces |
|
The port’s contribution, when it is the root port, to the root path cost for the bridge Range 1-200000000 |
|
Reference to the STP interface |
|
The manageable component of the port identifier, range 0-240 |
|
Maximum age in seconds of the information transmitted by the bridge when it is the root bridge Range 6-40 |
|
VLAN identifier, range 1-4094 |
|
Rapid per VLAN STP configuration |
|
The manageable component of the bridge identifier Value must be a multiple of 4096 in the range of 0-61440 |
|
Delay in seconds used by STP bridges to transition root and designated ports to forwarding Range 4-30 |
|
Interval in seconds between periodic transmissions of configuration messages by designated ports Range 1-10 |
|
List of STP enabled interfaces |
|
The port’s contribution, when it is the root port, to the root path cost for the bridge Range 1-200000000 |
|
Reference to the STP interface |
|
The manageable component of the port identifier, range 0-240 |
|
Maximum age in seconds of the information transmitted by the bridge when it is the root bridge Range 6-40 |
|
VLAN identifier, range 1-4094 |
|
The state of the configuration after module completion Choices:
|
Notes
Note
Tested against Enterprise SONiC Distribution by Dell Technologies.
Supports
check_mode
.
Examples
# Using merged
#
# Before State:
# -------------
#
# sonic# show running-configuration spanning-tree
# (No spanning-tree configuration present)
- name: Merge STP configurations
dellemc.enterprise_sonic.sonic_stp:
config:
global:
enabled_protocol: mst
loop_guard: true
bpdu_filter: true
disabled_vlans:
- 4-6
hello_time: 5
max_age: 10
fwd_delay: 20
bridge_priority: 4096
interfaces:
- intf_name: Ethernet20
edge_port: true
link_type: shared
guard: loop
bpdu_guard: true
bpdu_filter: true
uplink_fast: true
shutdown: true
cost: 20
port_priority: 30
stp_enable: true
mstp:
mst_name: mst1
revision: 1
max_hop: 3
hello_time: 6
max_age: 9
fwd_delay: 12
mst_instances:
- mst_id: 1
bridge_priority: 2048
vlans:
- 1
interfaces:
- intf_name: Ethernet20
cost: 60
port_priority: 65
state: merged
# After State:
# ------------
#
# sonic# show running-configuration spanning-tree
# no spanning-tree vlan 4-6
# spanning-tree mode mst
# spanning-tree edge-port bpdufilter default
# spanning-tree forward-time 20
# spanning-tree hello-time 5
# spanning-tree max-age 10
# spanning-tree loopguard default
# spanning-tree mst hello-time 6
# spanning-tree mst forward-time 12
# spanning-tree mst max-age 9
# spanning-tree mst max-hops 3
# spanning-tree mst 1 priority 2048
# !
# spanning-tree mst configuration
# name mst1
# revision 1
# instance 1 vlan 1
# activate
# !
# interface Ethernet20
# spanning-tree bpdufilter enable
# spanning-tree guard loop
# spanning-tree bpduguard port-shutdown
# spanning-tree cost 20
# spanning-tree link-type shared
# spanning-tree port-priority 30
# spanning-tree port type edge
# spanning-tree uplinkfast
# spanning-tree mst 1 cost 60
# spanning-tree mst 1 port-priority 65
# Using replaced
#
# Before State:
# -------------
#
# sonic# show running-configuration spanning-tree
# no spanning-tree vlan 4-6
# spanning-tree mode mst
# spanning-tree edge-port bpdufilter default
# spanning-tree loopguard default
# spanning-tree mst hello-time 6
# spanning-tree mst forward-time 12
# spanning-tree mst max-age 9
# spanning-tree mst max-hops 3
# spanning-tree mst 1 priority 2048
# !
# spanning-tree mst configuration
# name mst1
# revision 1
# instance 1 vlan 1
# activate
# !
# interface Ethernet20
# spanning-tree bpdufilter enable
# spanning-tree guard loop
# spanning-tree bpduguard port-shutdown
# spanning-tree cost 20
# spanning-tree link-type shared
# spanning-tree port-priority 30
# spanning-tree port type edge
# spanning-tree uplinkfast
# spanning-tree mst 1 cost 60
# spanning-tree mst 1 port-priority 65
- name: Replace STP configurations
dellemc.enterprise_sonic.sonic_stp:
config:
interfaces:
- intf_name: Ethernet20
cost: 25
port_priority: 35
mstp:
mst_name: mst2
revision: 2
max_hop: 4
hello_time: 7
max_age: 10
fwd_delay: 13
state: replaced
# After State:
# ------------
#
# sonic# show running-configuration spanning-tree
# no spanning-tree vlan 4-6
# spanning-tree mode mst
# spanning-tree edge-port bpdufilter default
# spanning-tree loopguard default
# spanning-tree mst hello-time 7
# spanning-tree mst forward-time 13
# spanning-tree mst max-age 10
# spanning-tree mst max-hops 4
# !
# spanning-tree mst configuration
# name mst2
# revision 2
# activate
# !
# interface Ethernet20
# spanning-tree cost 25
# spanning-tree port-priority 35
# Using overridden
#
# Before State:
# -------------
#
# sonic# show running-configuration spanning-tree
# no spanning-tree vlan 4-6
# spanning-tree mode mst
# spanning-tree edge-port bpdufilter default
# spanning-tree loopguard default
# spanning-tree mst hello-time 7
# spanning-tree mst forward-time 13
# spanning-tree mst max-age 10
# spanning-tree mst max-hops 4
# !
# spanning-tree mst configuration
# name mst2
# revision 2
# activate
# !
# interface Ethernet20
# spanning-tree cost 25
# spanning-tree port-priority 35
- name: Override STP configurations
dellemc.enterprise_sonic.sonic_stp:
config:
global:
enabled_protocol: pvst
bpdu_filter: true
root_guard_timeout: 25
portfast: true
hello_time: 5
max_age: 10
fwd_delay: 20
bridge_priority: 4096
pvst:
- vlan_id: 1
hello_time: 4
max_age: 6
fwd_delay: 8
bridge_priority: 4096
interfaces:
- intf_name: Ethernet20
cost: 10
port_priority: 50
state: overridden
# After State:
# ------------
#
# sonic# show running-configuration spanning-tree
# spanning-tree mode pvst
# spanning-tree edge-port bpdufilter default
# spanning-tree forward-time 20
# spanning-tree guard root timeout 25
# spanning-tree hello-time 5
# spanning-tree max-age 10
# spanning-tree priority 4096
# spanning-tree portfast default
# spanning-tree vlan 1 hello-time 4
# spanning-tree vlan 1 forward-time 8
# spanning-tree vlan 1 max-age 6
# sonic# show running-configuration interface Ethernet 20 | grep spanning-tree
# spanning-tree vlan 1 cost 10
# spanning-tree vlan 1 port-priority 50
# Using deleted
#
# Before State:
# -------------
#
# sonic# show running-configuration spanning-tree
# spanning-tree mode pvst
# spanning-tree edge-port bpdufilter default
# spanning-tree forward-time 20
# spanning-tree guard root timeout 25
# spanning-tree hello-time 5
# spanning-tree max-age 10
# spanning-tree priority 4096
# spanning-tree portfast default
# spanning-tree vlan 1 hello-time 4
# spanning-tree vlan 1 forward-time 8
# spanning-tree vlan 1 max-age 6
# sonic# show running-configuration interface Ethernet 20 | grep spanning-tree
# spanning-tree vlan 1 cost 10
# spanning-tree vlan 1 port-priority 50
- name: Delete STP configurations
dellemc.enterprise_sonic.sonic_stp:
config:
global:
bpdu_filter: true
root_guard_timeout: 25
pvst:
- vlan_id: 1
interfaces:
- intf_name: Ethernet20
state: deleted
# After State:
# ------------
#
# sonic# show running-configuration spanning-tree
# spanning-tree mode pvst
# spanning-tree forward-time 20
# spanning-tree hello-time 5
# spanning-tree max-age 10
# spanning-tree priority 4096
# spanning-tree portfast default
# spanning-tree vlan 1 hello-time 4
# spanning-tree vlan 1 forward-time 8
# spanning-tree vlan 1 max-age 6
# sonic# show running-configuration interface Ethernet 20 | grep spanning-tree
# (No spanning-tree configuration present)
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
---|---|
The resulting configuration module invocation. Returned: when changed Sample: |
|
The generated configuration module invocation. Returned: when Sample: |
|
The configuration prior to the module invocation. Returned: always Sample: |
|
The set of commands pushed to the remote device. Returned: always Sample: |