Note
This plugin is part of the community.network collection.
To install it use: ansible-galaxy collection install community.network.
To use it in a playbook, specify: community.network.ce_ip_interface.
| Parameter | Choices/Defaults | Comments |
|---|---|---|
| addr string | IPv4 or IPv6 Address. | |
| interface string / required | Full name of interface, i.e. 40GE1/0/22, vlanif10. | |
| ipv4_type string |
| Specifies an address type. The value is an enumerated type. main, primary IP address. sub, secondary IP address. |
| mask string | Subnet mask for IPv4 or IPv6 Address in decimal format. | |
| state string |
| Specify desired state of the resource. |
| version string |
| IP address version. |
Note
mask must be inserted in decimal format (i.e. 24) for both IPv6 and IPv4.netconf.local connections for legacy playbooks.- name: Ip_interface 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: Ensure ipv4 address is configured on 10GE1/0/22
community.network.ce_ip_interface:
interface: 10GE1/0/22
version: v4
state: present
addr: 20.20.20.20
mask: 24
provider: '{{ cli }}'
- name: Ensure ipv4 secondary address is configured on 10GE1/0/22
community.network.ce_ip_interface:
interface: 10GE1/0/22
version: v4
state: present
addr: 30.30.30.30
mask: 24
ipv4_type: sub
provider: '{{ cli }}'
- name: Ensure ipv6 is enabled on 10GE1/0/22
community.network.ce_ip_interface:
interface: 10GE1/0/22
version: v6
state: present
provider: '{{ cli }}'
- name: Ensure ipv6 address is configured on 10GE1/0/22
community.network.ce_ip_interface:
interface: 10GE1/0/22
version: v6
state: present
addr: 2001::db8:800:200c:cccb
mask: 64
provider: '{{ cli }}'
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 IP attributes after module execution Sample: {'interface': '10GE1/0/22', 'ipv4': [{'addrType': 'main', 'ifIpAddr': '20.20.20.20', 'subnetMask': '255.255.255.0'}]} |
| existing dictionary | always | k/v pairs of existing IP attributes on the interface Sample: {'interface': '10GE1/0/22', 'ipv4': [{'addrType': 'main', 'ifIpAddr': '11.11.11.11', 'subnetMask': '255.255.0.0'}]} |
| proposed dictionary | always | k/v pairs of parameters passed into module Sample: {'addr': '20.20.20.20', 'interface': '10GE1/0/22', 'mask': '24'} |
| updates list / elements=string | always | commands sent to the device Sample: ['interface 10GE1/0/22', 'ip address 20.20.20.20 24'] |
© 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_ip_interface_module.html