community.network.ce_bfd_session – Manages BFD session configuration on HUAWEI CloudEngine devices.

Note

This plugin is part of the community.network 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 community.network.

To use it in a playbook, specify: community.network.ce_bfd_session.

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
string
    Choices:
  • ipv4
Specifies the peer IP address type.
create_type
string
    Choices:
  • static ←
  • auto
BFD session creation mode, the currently created BFD session only supports static or static auto-negotiation mode.
dest_addr
string
Specifies the peer IP address bound to the BFD session.
local_discr
string
The BFD session local identifier does not need to be configured when the mode is auto.
out_if_name
string
Specifies the type and number of the interface bound to the BFD session.
remote_discr
string
The BFD session remote identifier does not need to be configured when the mode is auto.
session_name
string / required
Specifies the name of a BFD session. The value is a string of 1 to 15 case-sensitive characters without spaces.
src_addr
string
Indicates the source IP address carried in BFD packets.
state
string
    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
string
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
    community.network.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
    community.network.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
    community.network.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 / elements=string
always
commands sent to the device

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


Authors

  • QijunPan (@QijunPan)