community.network.ce_vrf_af – Manages VPN instance address family on HUAWEI CloudEngine switches.
Note
This plugin is part of the community.network collection (version 1.3.0).
To install it use: ansible-galaxy collection install community.network.
To use it in a playbook, specify: community.network.ce_vrf_af.
Synopsis
- Manages VPN instance address family of HUAWEI CloudEngine switches.
 
Parameters
| Parameter | Choices/Defaults | Comments | 
|---|---|---|
|   evpn    boolean    |   
  |    Is extend vpn or normal vpn.   |  
|   route_distinguisher    string    |    VPN instance route distinguisher,the RD used to distinguish same route prefix from different vpn. The RD must be setted before setting vpn_target_value.   |  |
|   state    string    |   
  |    Manage the state of the af.   |  
|   vpn_target_state    string    |   
  |    Manage the state of the vpn target.   |  
|   vpn_target_type    string    |   
  |    VPN instance vpn target type.   |  
|   vpn_target_value    string    |    VPN instance target value. Such as X.X.X.X:number<0-65535> or number<0-65535>:number<0-4294967295> or number<0-65535>.number<0-65535>:number<0-65535> or number<65536-4294967295>:number<0-65535> but not support 0:0 and 0.0:0.   |  |
|   vrf    string / required    |    VPN instance.   |  |
|   vrf_aftype    string    |   
  |    VPN instance address family.   |  
Notes
Note
- If state=absent, the vrf will be removed, regardless of the non-required parameters.
 - This module requires the netconf system service be enabled on the remote device being managed.
 - Recommended connection is 
netconf. - This module also works with 
localconnections for legacy playbooks. 
Examples
- name: Vrf af 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: Config vpna, set address family is ipv4
    community.network.ce_vrf_af:
      vrf: vpna
      vrf_aftype: v4
      state: present
      provider: "{{ cli }}"
  - name: Config vpna, delete address family is ipv4
    community.network.ce_vrf_af:
      vrf: vpna
      vrf_aftype: v4
      state: absent
      provider: "{{ cli }}"
  - name: Config vpna, set address family is ipv4,rd=1:1,set vpn_target_type=export_extcommunity,vpn_target_value=2:2
    community.network.ce_vrf_af:
      vrf: vpna
      vrf_aftype: v4
      route_distinguisher: 1:1
      vpn_target_type: export_extcommunity
      vpn_target_value: 2:2
      vpn_target_state: present
      state: present
      provider: "{{ cli }}"
  - name: Config vpna, set address family is ipv4,rd=1:1,delete vpn_target_type=export_extcommunity,vpn_target_value=2:2
    community.network.ce_vrf_af:
      vrf: vpna
      vrf_aftype: v4
      route_distinguisher: 1:1
      vpn_target_type: export_extcommunity
      vpn_target_value: 2:2
      vpn_target_state: absent
      state: present
      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 switchport after module execution  Sample:  {'route_distinguisher': ['1:1', '2:2'], 'vpn_target_type': ['import_extcommunity', '3:3'], 'vpn_target_value': [], 'vrf': 'vpna', 'vrf_aftype': ['ipv4uni', 'ipv6uni']}   |  
|   existing    dictionary    |  always |   k/v pairs of existing switchport  Sample:  {'route_distinguisher': ['1:1', '2:2'], 'vpn_target_type': [], 'vpn_target_value': [], 'vrf': 'vpna', 'vrf_aftype': ['ipv4uni', 'ipv6uni']}   |  
|   proposed    dictionary    |  always |   k/v pairs of parameters passed into module  Sample:  {'evpn': 'none', 'state': 'present', 'vpn_targe_state': 'absent', 'vpn_target_type': 'none', 'vpn_target_value': 'none', 'vrf': 'vpna', 'vrf_aftype': 'v4'}   |  
|   updates    list / elements=string    |  always |   command list sent to the device  Sample:  ['ip vpn-instance vpna', 'vpn-target 3:3 import_extcommunity']   |  
Authors
- Yang yang (@QijunPan)
 
    © 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
    https://docs.ansible.com/ansible/2.10/collections/community/network/ce_vrf_af_module.html