ce_bfd_session – Manages BFD session configuration on HUAWEI CloudEngine devices

New in version 2.4.

Synopsis

  • Manages BFD session configuration, creates a BFD session or deletes a specified BFD session on HUAWEI CloudEngine devices.

Parameters

Parameter Choices/Defaults Comments
addr_type
-
    Choices:
  • ipv4
Specifies the peer IP address type.
create_type
-
    Choices:
  • static ←
  • auto
BFD session creation mode, the currently created BFD session only supports static or static auto-negotiation mode.
dest_addr
-
Specifies the peer IP address bound to the BFD session.
local_discr
-
added in 2.9
The BFD session local identifier does not need to be configured when the mode is auto.
out_if_name
-
Specifies the type and number of the interface bound to the BFD session.
remote_discr
-
added in 2.9
The BFD session remote identifier does not need to be configured when the mode is auto.
session_name
- / required
Specifies the name of a BFD session. The value is a string of 1 to 15 case-sensitive characters without spaces.
src_addr
-
Indicates the source IP address carried in BFD packets.
state
-
    Choices:
  • present ←
  • absent
Determines whether the config should be present or not on the device.
use_default_ip
boolean
    Choices:
  • no ←
  • yes
Indicates the default multicast IP address that is bound to a BFD session. By default, BFD uses the multicast IP address 224.0.0.184. You can set the multicast IP address by running the default-ip-address command. The value is a bool type.
vrf_name
-
Specifies the name of a Virtual Private Network (VPN) instance that is bound to a BFD session. The value is a string of 1 to 31 case-sensitive characters, spaces not supported. When double quotation marks are used around the string, spaces are allowed in the string. The value _public_ is reserved and cannot be used as the VPN instance name.

Notes

Note

  • This module requires the netconf system service be enabled on the remote device being managed.
  • Recommended connection is netconf.
  • This module also works with local connections for legacy playbooks.

Examples

- name: bfd session module test
  hosts: cloudengine
  connection: local
  gather_facts: no
  vars:
    cli:
      host: "{{ inventory_hostname }}"
      port: "{{ ansible_ssh_port }}"
      username: "{{ username }}"
      password: "{{ password }}"
      transport: cli

  tasks:
  - name: Configuring Single-hop BFD for Detecting Faults on a Layer 2 Link
    ce_bfd_session:
      session_name: bfd_l2link
      use_default_ip: true
      out_if_name: 10GE1/0/1
      local_discr: 163
      remote_discr: 163
      provider: '{{ cli }}'

  - name: Configuring Single-Hop BFD on a VLANIF Interface
    ce_bfd_session:
      session_name: bfd_vlanif
      dest_addr: 10.1.1.6
      out_if_name: Vlanif100
      local_discr: 163
      remote_discr: 163
      provider: '{{ cli }}'

  - name: Configuring Multi-Hop BFD
    ce_bfd_session:
      session_name: bfd_multi_hop
      dest_addr: 10.1.1.1
      local_discr: 163
      remote_discr: 163
      provider: '{{ cli }}'

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
changed
boolean
always
check to see if a change was made on the device

Sample:
True
end_state
dictionary
always
k/v pairs of configuration after module execution

Sample:
{'session': {'addrType': 'IPV4', 'createType': 'SESS_STATIC', 'destAddr': None, 'outIfName': '10GE1/0/1', 'sessName': 'bfd_l2link', 'srcAddr': None, 'useDefaultIp': 'true', 'vrfName': None}}
existing
dictionary
always
k/v pairs of existing configuration

Sample:
{'session': {}}
proposed
dictionary
always
k/v pairs of parameters passed into module

Sample:
{'addr_type': None, 'create_type': None, 'dest_addr': None, 'out_if_name': '10GE1/0/1', 'session_name': 'bfd_l2link', 'src_addr': None, 'state': 'present', 'use_default_ip': True, 'vrf_name': None}
updates
list
always
commands sent to the device

Sample:
['bfd bfd_l2link bind peer-ip default-ip interface 10ge1/0/1']


Status

Authors

  • QijunPan (@QijunPan)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.