community.network.ce_dldp – Manages global DLDP configuration on HUAWEI CloudEngine switches.
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_dldp
.
Parameters
Parameter |
Comments |
---|---|
Specifies authentication algorithm of DLDP. Choices:
|
|
Specifies authentication password. The value is a string of 1 to 16 case-sensitive plaintexts or 24/32/48/108/128 case-sensitive encrypted characters. The string excludes a question mark (?). |
|
Set global DLDP enable state. Choices:
|
|
Specify whether reset DLDP state of disabled interfaces. Choices:
|
|
Specifies the interval for sending Advertisement packets. The value is an integer ranging from 1 to 100, in seconds. The default interval for sending Advertisement packets is 5 seconds. |
|
Set global DLDP work-mode. Choices:
|
Notes
Note
The relevant configurations will be deleted if DLDP is disabled using enable=disable.
When using auth_mode=none, it will restore the default DLDP authentication mode. By default, DLDP packets are not authenticated.
By default, the working mode of DLDP is enhance, so you are advised to use work_mode=enhance to restore default DLDP working mode.
The default interval for sending Advertisement packets is 5 seconds, so you are advised to use time_interval=5 to restore default DLDP interval.
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: DLDP 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: "Configure global DLDP enable state"
community.network.ce_dldp:
enable: enable
provider: "{{ cli }}"
- name: "Configure DLDP work-mode and ensure global DLDP state is already enabled"
community.network.ce_dldp:
enable: enable
work_mode: normal
provider: "{{ cli }}"
- name: "Configure advertisement message time interval in seconds and ensure global DLDP state is already enabled"
community.network.ce_dldp:
enable: enable
time_interval: 6
provider: "{{ cli }}"
- name: "Configure a DLDP authentication mode and ensure global DLDP state is already enabled"
community.network.ce_dldp:
enable: enable
auth_mode: md5
auth_pwd: abc
provider: "{{ cli }}"
- name: "Reset DLDP state of disabled interfaces and ensure global DLDP state is already enabled"
community.network.ce_dldp:
enable: enable
reset: enable
provider: "{{ cli }}"
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
---|---|
check to see if a change was made on the device Returned: always Sample: true |
|
k/v pairs of global DLDP configuration after module execution Returned: always Sample: {“enable”: “enable”, “reset”: “enable”, “time_internal”: “12”, “work_mode”: “normal”} |
|
k/v pairs of existing global DLDP configuration Returned: always Sample: {“enable”: “disable”, “reset”: “disable”, “time_internal”: “5”, “work_mode”: “enhance”} |
|
k/v pairs of parameters passed into module Returned: always Sample: {“enable”: “enable”, “reset”: “enable”, “time_internal”: “12”, “work_mode”: “normal”} |
|
command sent to the device Returned: always Sample: [“dldp enable”, “dldp work-mode normal”, “dldp interval 12”, “dldp reset”] |
Authors
Zhijin Zhou (@QijunPan)