dellemc / dellemc.enterprise_sonic / 2.4.0 / module / sonic_bfd Manage BFD configuration on SONiC | "added in version" 2.1.0 of dellemc.enterprise_sonic" Authors: Shade Talabi (@stalabi1) preview | supported by communitydellemc.enterprise_sonic.sonic_bfd (2.4.0) — module
Install with ansible-galaxy collection install dellemc.enterprise_sonic:==2.4.0
collections: - name: dellemc.enterprise_sonic version: 2.4.0
This module provides configuration management of BFD for devices running SONiC
# Using Merged # # Before state: # ------------- # # sonic# show bfd profile # (No "bfd profile" configuration present) # sonic# show bfd peers # (No "bfd peers" configuration present) - name: Merge BFD configuration dellemc.enterprise_sonic.sonic_bfd: config: profiles: - profile_name: 'p1' enabled: True transmit_interval: 120 receive_interval: 200 detect_multiplier: 2 passive_mode: True min_ttl: 140 echo_interval: 150 echo_mode: True single_hops: - remote_address: '196.88.6.1' vrf: 'default' interface: 'Ethernet20' local_address: '1.1.1.1' enabled: True transmit_interval: 50 receive_interval: 80 detect_multiplier: 4 passive_mode: True echo_interval: 110 echo_mode: True profile_name: 'p1' multi_hops: - remote_address: '192.40.1.3' vrf: 'default' local_address: '3.3.3.3' enabled: True transmit_interval: 75 receive_interval: 100 detect_multiplier: 3 passive_mode: True min_ttl: 125 profile_name: 'p1' state: merged
# After state: # ------------ # # sonic# show bfd profile # BFD Profile: # Profile-name: p1 # Enabled: True # Echo-mode: Enabled # Passive-mode: Enabled # Minimum-Ttl: 140 # Detect-multiplier: 2 # Receive interval: 200ms # Transmission interval: 120ms # Echo transmission interval: 150ms # sonic# show bfd peers # BFD Peers: # # peer 192.40.1.3 multihop local-address 3.3.3.3 vrf default # ID: 989720421 # Remote ID: 0 # Passive mode: Enabled # Profile: p1 # Minimum TTL: 125 # Status: down # Downtime: 0 day(s), 0 hour(s), 1 min(s), 46 sec(s) # Diagnostics: ok # Remote diagnostics: ok # Peer Type: configured # Local timers: # Detect-multiplier: 2 # Receive interval: 100ms # Transmission interval: 75ms # Echo transmission interval: ms # Remote timers: # Detect-multiplier: 3 # Receive interval: 1000ms # Transmission interval: 1000ms # Echo transmission interval: 0ms # # peer 196.88.6.1 local-address 1.1.1.1 vrf default interface Ethernet20 # ID: 1134635660 # Remote ID: 0 # Passive mode: Enabled # Profile: p1 # Status: down # Downtime: 0 day(s), 1 hour(s), 50 min(s), 48 sec(s) # Diagnostics: ok # Remote diagnostics: ok # Peer Type: configured # Local timers: # Detect-multiplier: 4 # Receive interval: 80ms # Transmission interval: 50ms # Echo transmission interval: 110ms # Remote timers: # Detect-multiplier: 3 # Receive interval: 1000ms # Transmission interval: 1000ms # Echo transmission interval: 0ms # # # Using replaced # # Before state: # ------------- # # sonic# show bfd profile # BFD Profile: # Profile-name: p1 # Enabled: True # Echo-mode: Enabled # Passive-mode: Enabled # Minimum-Ttl: 140 # Detect-multiplier: 2 # Receive interval: 200ms # Transmission interval: 120ms # Echo transmission interval: 150ms # Profile-name: p2 # Enabled: True # Echo-mode: Disabled # Passive-mode: Disabled # Minimum-Ttl: 254 # Detect-multiplier: 3 # Receive interval: 300ms # Transmission interval: 300ms # Echo transmission interval: 300ms - name: Replace BFD configuration dellemc.enterprise_sonic.sonic_bfd: config: profiles: - profile_name: 'p1' transmit_interval: 144 - profile_name: 'p2' enabled: False transmit_interval: 110 receive_interval: 235 detect_multiplier: 5 passive_mode: True min_ttl: 155 echo_interval: 163 echo_mode: True state: replaced
# After state: # ------------ # # sonic# show bfd profile # BFD Profile: # Profile-name: p1 # Enabled: True # Echo-mode: Enabled # Passive-mode: Enabled # Minimum-Ttl: 140 # Detect-multiplier: 2 # Receive interval: 200ms # Transmission interval: 144ms # Echo transmission interval: 150ms # Profile-name: p2 # Enabled: False # Echo-mode: Enabled # Passive-mode: Enabled # Minimum-Ttl: 155 # Detect-multiplier: 5 # Receive interval: 235ms # Transmission interval: 110ms # Echo transmission interval: 163ms # # # Using overridden # # Before state: # ------------- # # sonic# show bfd peers # BFD Peers: # # peer 192.40.1.3 multihop local-address 3.3.3.3 vrf default # ID: 989720421 # Remote ID: 0 # Passive mode: Enabled # Profile: p1 # Minimum TTL: 125 # Status: down # Downtime: 0 day(s), 0 hour(s), 1 min(s), 46 sec(s) # Diagnostics: ok # Remote diagnostics: ok # Peer Type: configured # Local timers: # Detect-multiplier: 2 # Receive interval: 100ms # Transmission interval: 75ms # Echo transmission interval: ms # Remote timers: # Detect-multiplier: 3 # Receive interval: 1000ms # Transmission interval: 1000ms # Echo transmission interval: 0ms # # peer 196.88.6.1 local-address 1.1.1.1 vrf default interface Ethernet20 # ID: 1134635660 # Remote ID: 0 # Passive mode: Enabled # Profile: p1 # Status: down # Downtime: 0 day(s), 1 hour(s), 50 min(s), 48 sec(s) # Diagnostics: ok # Remote diagnostics: ok # Peer Type: configured # Local timers: # Detect-multiplier: 4 # Receive interval: 80ms # Transmission interval: 50ms # Echo transmission interval: 110ms # Remote timers: # Detect-multiplier: 3 # Receive interval: 1000ms # Transmission interval: 1000ms # Echo transmission interval: 0ms - name: Override BFD configuration dellemc.enterprise_sonic.sonic_bfd: config: single_hops: - remote_address: '172.68.2.1' vrf: 'default' interface: 'Ethernet16' local_address: '2.2.2.2' enabled: True transmit_interval: 60 receive_interval: 88 detect_multiplier: 6 passive_mode: True echo_interval: 112 echo_mode: True profile_name: 'p3' multi_hops: - remote_address: '186.42.1.2' vrf: 'default' local_address: '1.1.1.1' enabled: False transmit_interval: 85 receive_interval: 122 detect_multiplier: 4 passive_mode: False min_ttl: 120 profile_name: 'p3' state: overridden
# After state: # ------------ # # sonic# show bfd peers # BFD Peers: # # peer 186.42.1.2 multihop local-address 1.1.1.1 vrf default # ID: 989720421 # Remote ID: 0 # Passive mode: Disabled # Profile: p3 # Minimum TTL: 120 # Status: down # Downtime: 0 day(s), 0 hour(s), 1 min(s), 46 sec(s) # Diagnostics: ok # Remote diagnostics: ok # Peer Type: configured # Local timers: # Detect-multiplier: 4 # Receive interval: 122ms # Transmission interval: 85ms # Echo transmission interval: ms # Remote timers: # Detect-multiplier: 3 # Receive interval: 1000ms # Transmission interval: 1000ms # Echo transmission interval: 0ms # # peer 172.68.2.1 local-address 2.2.2.2 vrf default interface Ethernet16 # ID: 1134635660 # Remote ID: 0 # Passive mode: Enabled # Profile: p3 # Status: down # Downtime: 0 day(s), 1 hour(s), 50 min(s), 48 sec(s) # Diagnostics: ok # Remote diagnostics: ok # Peer Type: configured # Local timers: # Detect-multiplier: 6 # Receive interval: 88ms # Transmission interval: 60ms # Echo transmission interval: 112ms # Remote timers: # Detect-multiplier: 3 # Receive interval: 1000ms # Transmission interval: 1000ms # Echo transmission interval: 0ms # # # Using deleted # # Before state: # ------------- # # sonic# show bfd profile # BFD Profile: # Profile-name: p1 # Enabled: True # Echo-mode: Enabled # Passive-mode: Enabled # Minimum-Ttl: 140 # Detect-multiplier: 2 # Receive interval: 200ms # Transmission interval: 120ms # Echo transmission interval: 150ms # sonic# show bfd peers # BFD Peers: # # peer 192.40.1.3 multihop local-address 3.3.3.3 vrf default # ID: 989720421 # Remote ID: 0 # Passive mode: Enabled # Profile: p1 # Minimum TTL: 125 # Status: down # Downtime: 0 day(s), 0 hour(s), 1 min(s), 46 sec(s) # Diagnostics: ok # Remote diagnostics: ok # Peer Type: configured # Local timers: # Detect-multiplier: 2 # Receive interval: 100ms # Transmission interval: 75ms # Echo transmission interval: ms # Remote timers: # Detect-multiplier: 3 # Receive interval: 1000ms # Transmission interval: 1000ms # Echo transmission interval: 0ms # # peer 196.88.6.1 local-address 1.1.1.1 vrf default interface Ethernet20 # ID: 1134635660 # Remote ID: 0 # Passive mode: Enabled # Profile: p1 # Status: down # Downtime: 0 day(s), 1 hour(s), 50 min(s), 48 sec(s) # Diagnostics: ok # Remote diagnostics: ok # Peer Type: configured # Local timers: # Detect-multiplier: 4 # Receive interval: 80ms # Transmission interval: 50ms # Echo transmission interval: 110ms # Remote timers: # Detect-multiplier: 3 # Receive interval: 1000ms # Transmission interval: 1000ms # Echo transmission interval: 0ms - name: Delete BFD configuration dellemc.enterprise_sonic.sonic_bfd: config: profiles: - profile_name: 'p1' enabled: True transmit_interval: 120 receive_interval: 200 detect_multiplier: 2 passive_mode: True min_ttl: 140 echo_interval: 150 echo_mode: True single_hops: - remote_address: '196.88.6.1' vrf: 'default' interface: 'Ethernet20' local_address: '1.1.1.1' multi_hops: - remote_address: '192.40.1.3' vrf: 'default' local_address: '3.3.3.3' state: deleted
state: choices: - merged - deleted - replaced - overridden default: merged description: - The state of the configuration after module completion. type: str config: description: - Specifies BFD configurations suboptions: multi_hops: description: - List of multi-hop sessions elements: dict suboptions: detect_multiplier: default: 3 description: - Number of missed packets to bring down a BFD session type: int enabled: default: true description: - Enables BFD session when set to true type: bool local_address: description: - Source IP address to be used for BFD sessions over the interface required: true type: str min_ttl: default: 254 description: - Minimum expected TTL on received packets type: int passive_mode: default: false description: - Specifies BFD peer as passive when set to true type: bool profile_name: description: - BFD profile name type: str receive_interval: default: 300 description: - Specifies peer receive interval type: int remote_address: description: - IP address used by the remote system for the BFD session required: true type: str transmit_interval: default: 300 description: - Specifies peer transmit interval type: int vrf: description: - Name of the configured VRF on the device required: true type: str type: list profiles: description: - List of preconfiguration profiles elements: dict suboptions: detect_multiplier: default: 3 description: - Number of missed packets to bring down a BFD session type: int echo_interval: default: 300 description: - Specifies echo interval type: int echo_mode: default: false description: - Echo mode is enabled when set to true type: bool enabled: default: true description: - Enables BFD session when set to true type: bool min_ttl: default: 254 description: - Minimum expected TTL on received packets type: int passive_mode: default: false description: - Specifies BFD peer as passive when set to true type: bool profile_name: description: - BFD profile name required: true type: str receive_interval: default: 300 description: - Specifies peer receive interval type: int transmit_interval: default: 300 description: - Specifies peer transmit interval type: int type: list single_hops: description: - List of single-hop sessions elements: dict suboptions: detect_multiplier: default: 3 description: - Number of missed packets to bring down a BFD session type: int echo_interval: default: 300 description: - Specifies echo interval type: int echo_mode: default: false description: - Echo mode is enabled when set to true type: bool enabled: default: true description: - Enables BFD session when set to true type: bool interface: description: - Interface to use to contact peer required: true type: str local_address: description: - Source IP address to be used for BFD sessions over the interface required: true type: str passive_mode: default: false description: - Specifies BFD peer as passive when set to true type: bool profile_name: description: - BFD profile name type: str receive_interval: default: 300 description: - Specifies peer receive interval type: int remote_address: description: - IP address used by the remote system for the BFD session required: true type: str transmit_interval: default: 300 description: - Specifies peer transmit interval type: int vrf: description: - Name of the configured VRF on the device required: true type: str type: list type: dict
after: description: The resulting configuration model invocation. returned: when changed sample: 'The configuration returned will always be in the same format of the parameters above. ' type: list before: description: The configuration prior to the model invocation. returned: always sample: 'The configuration returned will always be in the same format of the parameters above. ' type: list commands: description: The set of commands pushed to the remote device. returned: always sample: - command 1 - command 2 - command 3 type: list