L3 interfaces resource module
Version added: 1.0.0
- This module manages Layer-3 interfaces attributes of NX-OS Interfaces.
Note
- Tested against NXOS 7.3.(0)D1(1) on VIRL
- Unsupported for Cisco MDS
# Using merged
# Before state:
# -------------
#
# router# show running-config | section interface
# interface Ethernet1/6
# description Configured by Ansible Network
# no switchport
# no shutdown
# interface Ethernet1/7
# description Configured by Ansible
# no switchport
# no shutdown
# interface mgmt0
# description mgmt interface
# ip address dhcp
# vrf member management
- name: Merge provided configuration with device configuration.
cisco.nxos.nxos_l3_interfaces:
config:
- name: Ethernet1/6
ipv4:
- address: 192.168.1.1/24
tag: 5
- address: 10.1.1.1/24
secondary: true
tag: 10
ipv6:
- address: fd5d:12c9:2201:2::1/64
tag: 6
- name: Ethernet1/7.42
redirects: false
unreachables: false
state: merged
# Task Output
# -----------
#
# before:
# - name: Ethernet1/6
# - name: Ethernet1/7
# - ipv4:
# - address: dhcp
# name: mgmt0
# commands:
# - interface Ethernet1/6
# - ip address 192.168.1.1/24 tag 5
# - ip address 10.1.1.1/24 secondary tag 10
# - ipv6 address fd5d:12c9:2201:2::1/64 tag 6
# - interface Ethernet1/7
# - no ip redirects
# after:
# - ipv4:
# - address: 192.168.1.1/24
# tag: 5
# - address: 10.1.1.1/24
# secondary: true
# tag: 10
# ipv6:
# - address: fd5d:12c9:2201:2::1/64
# tag: 6
# name: Ethernet1/6
# redirects: false
# - name: Ethernet1/7
# redirects: false
# - ipv4:
# - address: dhcp
# name: mgmt0
# After state:
# ------------
#
# router# show running-config | section interface
# interface Ethernet1/6
# description Configured by Ansible Network
# no switchport
# no ip redirects
# ip address 192.168.1.1/24 tag 5
# ip address 10.1.1.1/24 secondary tag 10
# ipv6 address fd5d:12c9:2201:2::1/64 tag 6
# no shutdown
# interface Ethernet1/7
# description Configured by Ansible
# no switchport
# no ip redirects
# no shutdown
# interface mgmt0
# description mgmt interface
# ip address dhcp
# vrf member management
# Using replaced
# Before state:
# -------------
#
# router# show running-config | section interface
# interface Ethernet1/6
# description Configured by Ansible Network
# no switchport
# no ip redirects
# ip address 192.168.1.1/24 tag 5
# ip address 10.1.1.1/24 secondary tag 10
# ipv6 address fd5d:12c9:2201:2::1/64 tag 6
# no shutdown
# interface Ethernet1/7
# description Configured by Ansible
# no switchport
# no ip redirects
# no shutdown
# interface mgmt0
# description mgmt interface
# ip address dhcp
# vrf member management
- name: Replace device configuration of specified L3 interfaces with provided configuration.
cisco.nxos.nxos_l3_interfaces:
config:
- name: Ethernet1/6
ipv4:
- address: 192.168.22.3/24
state: replaced
# Task Output
# -----------
#
# before:
# - ipv4:
# - address: 192.168.1.1/24
# tag: 5
# - address: 10.1.1.1/24
# secondary: true
# tag: 10
# ipv6:
# - address: fd5d:12c9:2201:2::1/64
# tag: 6
# name: Ethernet1/6
# redirects: false
# - name: Ethernet1/7
# redirects: false
# - ipv4:
# - address: dhcp
# name: mgmt0
# commands:
# - interface Ethernet1/6
# - ip address 192.168.22.3/24
# - no ipv6 address fd5d:12c9:2201:2::1/64
# - ip redirects
# after:
# - ipv4:
# - address: 192.168.22.3/24
# - address: 10.1.1.1/24
# secondary: true
# tag: 10
# name: Ethernet1/6
# redirects: false
# - name: Ethernet1/7
# redirects: false
# - ipv4:
# - address: dhcp
# name: mgmt0
# After state:
# ------------
#
# router# show running-config | section interface
# interface Ethernet1/6
# description Configured by Ansible Network
# no switchport
# no ip redirects
# ip address 192.168.22.3/24
# ip address 10.1.1.1/24 secondary tag 10
# no shutdown
# interface Ethernet1/7
# description Configured by Ansible
# no switchport
# no ip redirects
# no shutdown
# interface mgmt0
# description mgmt interface
# ip address dhcp
# vrf member management
# Using overridden
# Before state:
# -------------
#
# router# show running-config | section interface
# interface Ethernet1/6
# description Configured by Ansible Network
# no switchport
# no ip redirects
# ip address 192.168.1.1/24 tag 5
# ip address 10.1.1.1/24 secondary tag 10
# ipv6 address fd5d:12c9:2201:2::1/64 tag 6
# no shutdown
# interface Ethernet1/7
# description Configured by Ansible
# no switchport
# no ip redirects
# no shutdown
# interface Ethernet1/7.42
# no ip redirects
# interface mgmt0
# description mgmt interface
# ip address dhcp
# vrf member management
- name: Override device configuration with provided configuration.
cisco.nxos.nxos_l3_interfaces:
config:
- ipv4:
- address: dhcp
name: mgmt0
- name: Ethernet1/6
ipv4:
- address: 192.168.22.3/24
state: overridden
# Task Output
# -----------
#
# before:
# - ipv4:
# - address: 192.168.1.1/24
# tag: 5
# - address: 10.1.1.1/24
# secondary: true
# tag: 10
# ipv6:
# - address: fd5d:12c9:2201:2::1/64
# tag: 6
# name: Ethernet1/6
# redirects: false
# - name: Ethernet1/7
# redirects: false
# - name: Ethernet1/7.42
# redirects: false
# - ipv4:
# - address: dhcp
# name: mgmt0
# commands:
# - interface Ethernet1/6
# - no ipv6 address fd5d:12c9:2201:2::1/64
# - no ip address 10.1.1.1/24 secondary
# - ip address 192.168.22.3/24
# - ip redirects
# - interface Ethernet1/7
# - ip redirects
# - interface Ethernet1/7.42
# - ip redirects
# after:
# - ipv4:
# - address: 192.168.22.3/24
# name: Ethernet1/6
# - name: Ethernet1/7
# - name: Ethernet1/7.42
# - ipv4:
# - address: dhcp
# name: mgmt0
# After state:
# ------------
#
# router# show running-config | section interface
# interface Ethernet1/6
# description Configured by Ansible Network
# no switchport
# ip address 192.168.22.3/24
# no shutdown
# interface Ethernet1/7
# description Configured by Ansible
# no switchport
# no shutdown
# interface Ethernet1/7.42
# interface mgmt0
# description mgmt interface
# ip address dhcp
# vrf member management
# Using deleted
# Before state:
# -------------
#
# router# show running-config | section interface
# interface Ethernet1/6
# description Configured by Ansible Network
# no switchport
# ip address 192.168.22.3/24
# no shutdown
# interface Ethernet1/7
# description Configured by Ansible
# no switchport
# no shutdown
# interface Ethernet1/7.42
# interface mgmt0
# description mgmt interface
# ip address dhcp
# vrf member management
- name: Delete L3 attributes of given interfaces (This won't delete the interface
itself).
cisco.nxos.nxos_l3_interfaces:
config:
- name: Ethernet1/6
- name: Ethernet1/2
state: deleted
# Task Output
# -----------
#
# before:
# - name: Ethernet1/2
# - ipv4:
# - address: 192.168.22.3/24
# name: Ethernet1/6
# - name: Ethernet1/7
# - name: Ethernet1/7.42
# - ipv4:
# - address: dhcp
# name: mgmt0
# commands:
# - interface Ethernet1/6
# - no ip address
# after:
# - name: Ethernet1/2
# - name: Ethernet1/7
# - name: Ethernet1/7.42
# - ipv4:
# - address: dhcp
# name: mgmt0
# After state:
# ------------
#
# router# show running-config | section interface
# interface Ethernet1/6
# description Configured by Ansible Network
# no switchport
# no shutdown
# interface Ethernet1/7
# description Configured by Ansible
# no switchport
# no shutdown
# interface Ethernet1/7.42
# interface mgmt0
# description mgmt interface
# ip address dhcp
# vrf member management
# Using rendered
- name: Use rendered state to convert task input to device specific commands
cisco.nxos.nxos_l3_interfaces:
config:
- name: Ethernet1/800
ipv4:
- address: 192.168.1.100/24
tag: 5
- address: 10.1.1.1/24
secondary: true
tag: 10
- name: Ethernet1/800
ipv6:
- address: fd5d:12c9:2201:2::1/64
tag: 6
state: rendered
# Task Output
# -----------
#
# rendered:
# - interface Ethernet1/800
# - ip address 192.168.1.100/24 tag 5
# - ip address 10.1.1.1/24 secondary tag 10
# - interface Ethernet1/800
# - ipv6 address fd5d:12c9:2201:2::1/64 tag 6
# Using parsed
# parsed.cfg
# ----------
#
# interface Ethernet1/800
# ip address 192.168.1.100/24 tag 5
# ip address 10.1.1.1/24 secondary tag 10
# no ip redirects
# interface Ethernet1/801
# ipv6 address fd5d:12c9:2201:2::1/64 tag 6
# ip unreachables
# interface mgmt0
# ip address dhcp
# vrf member management
- name: Use parsed state to convert externally supplied config to structured format
cisco.nxos.nxos_l3_interfaces:
running_config: "{{ lookup('file', 'parsed.cfg') }}"
state: parsed
# Task output
# -----------
#
# parsed:
# - name: Ethernet1/800
# ipv4:
# - address: 192.168.1.100/24
# tag: 5
# - address: 10.1.1.1/24
# secondary: True
# tag: 10
# redirects: False
# - name: Ethernet1/801
# ipv6:
# - address: fd5d:12c9:2201:2::1/64
# tag: 6
# unreachables: True
# Using gathered
# Before state:
# -------------
#
# interface Ethernet1/1
# ip address 192.0.2.100/24
# interface Ethernet1/2
# no ip redirects
# ip address 203.0.113.10/24
# ip unreachables
# ipv6 address 2001:db8::1/32
- name: Gather l3_interfaces facts from the device using nxos_l3_interfaces
cisco.nxos.nxos_l3_interfaces:
state: gathered
# Task output
# -----------
#
# gathered:
# - name: Ethernet1/1
# ipv4:
# - address: 192.0.2.100/24
# - name: Ethernet1/2
# ipv4:
# - address: 203.0.113.10/24
# ipv6:
# - address: 2001:db8::1/32
# redirects: False
# unreachables: True
Common return values are documented here, the following are the fields unique to this module:
- Trishna Guha (@trishnaguha)