community.network.ce_vxlan_gateway – Manages gateway for the VXLAN network 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_vxlan_gateway
.
Synopsis
Configuring Centralized All-Active Gateways or Distributed Gateway for the VXLAN Network on HUAWEI CloudEngine devices.
Parameters
Parameter |
Comments |
---|---|
Enable VLINK direct route on VBDIF interface. Choices:
|
|
Enable the distributed gateway function on VBDIF interface. Choices:
|
|
Creates all-active gateways. Choices:
|
|
Specifies the ID of a DFS group. The value must be 1. |
|
Configure the IP address of an all-active gateway peer. The value is in dotted decimal notation. |
|
Specifies the name of the VPN instance that is associated with all-active gateway peer. 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 |
|
Specifies the IPv4 address bound to a DFS group. The value is in dotted decimal notation. |
|
Specifies the name of a VPN instance bound to a DFS group. The value is a string of 1 to 31 case-sensitive characters without spaces. If the character string is quoted by double quotation marks, the character string can contain spaces. The value |
|
Specifies the UDP port number of the DFS group. The value is an integer that ranges from 1025 to 65535. |
|
Determines whether the config should be present or not on the device. Choices:
|
|
Specifies the name of the VPN instance that is associated with the interface. 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 |
|
Specifies a MAC address for a VBDIF interface. The value is in the format of H-H-H. Each H is a 4-digit hexadecimal number, such as |
|
Full name of VBDIF interface, i.e. Vbdif100. |
|
Specifies the name of a VPN instance. 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 |
|
Specifies a VNI ID. Binds a VXLAN network identifier (VNI) to a virtual private network (VPN) instance. The value is an integer ranging from 1 to 16000000. |
Notes
Note
Ensure All-Active Gateways or Distributed Gateway for the VXLAN Network can not configure at the same time.
Recommended connection is
network_cli
.This module also works with
local
connections for legacy playbooks.
Examples
- name: Vxlan gateway module test
hosts: ce128
connection: local
gather_facts: no
vars:
cli:
host: "{{ inventory_hostname }}"
port: "{{ ansible_ssh_port }}"
username: "{{ username }}"
password: "{{ password }}"
transport: cli
tasks:
- name: Configuring Centralized All-Active Gateways for the VXLAN Network
community.network.ce_vxlan_gateway:
dfs_id: 1
dfs_source_ip: 6.6.6.6
dfs_all_active: enable
dfs_peer_ip: 7.7.7.7
provider: "{{ cli }}"
- name: Bind the VPN instance to a Layer 3 gateway, enable distributed gateway, and configure host route advertisement.
community.network.ce_vxlan_gateway:
vbdif_name: Vbdif100
vbdif_bind_vpn: vpn1
arp_distribute_gateway: enable
arp_direct_route: enable
provider: "{{ cli }}"
- name: Assign a VNI to a VPN instance.
community.network.ce_vxlan_gateway:
vpn_instance: vpn1
vpn_vni: 100
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 configuration after module execution Returned: verbose mode Sample: {“dfs_all_active”: “enable”, “dfs_id”: “1”, “evn_peers”: [{“ip”: “7.7.7.7”, “vpn”: “”}], “evn_source_ip”: “6.6.6.6”, “evn_source_vpn”: null} |
|
k/v pairs of existing configuration Returned: verbose mode Sample: {“dfs_all_active”: “disable”, “dfs_id”: “1”, “dfs_source_ip”: null, “evn_peer_ip”: []} |
|
k/v pairs of parameters passed into module Returned: verbose mode Sample: {“dfs_all_active”: “enable”, “dfs_id”: “1”, “dfs_peer_ip”: “7.7.7.7”, “dfs_source_ip”: “6.6.6.6”} |
|
commands sent to the device Returned: always Sample: [“dfs-group 1”, “source ip 6.6.6.6”, “active-active-gateway”, “peer 7.7.7.7”] |
Authors
QijunPan (@QijunPan)