On this page
eos_l3_interfaces – Manages L3 interface attributes of Arista EOS devices
New in version 2.9.
Synopsis
- This module provides declarative management of Layer 3 interfaces on Arista EOS devices.
Parameters
| Parameter | Choices/Defaults | Comments | ||
|---|---|---|---|---|
| config 
        list / elements=dictionary
        | 
        A dictionary of Layer 3 interface options
        | |||
| ipv4 
        list / elements=dictionary
        | 
        List of IPv4 addresses to be set for the Layer 3 interface mentioned in name option.
        | |||
| address 
        string
        | 
        IPv4 address to be set in the format <ipv4 address>/<mask> eg. 192.0.2.1/24, or  dhcpto query DHCP for an IP address. | |||
| secondary 
        boolean
        | 
 | 
        Whether or not this address is a secondary address.
        | ||
| ipv6 
        list / elements=dictionary
        | 
        List of IPv6 addresses to be set for the Layer 3 interface mentioned in name option.
        | |||
| address 
        string
        | 
        IPv6 address to be set in the address format is <ipv6 address>/<mask> eg. 2001:db8:2201:1::1/64 or  auto-configto use SLAAC to chose an address. | |||
| name 
        string / required
        | 
        Full name of the interface, i.e. Ethernet1.
        | |||
| state 
        string
        | 
 | 
        The state of the configuration after module completion
        | ||
Notes
Note
- Tested against Arista EOS 4.20.10M
- This module works with connection network_cli. See the EOS Platform Options.
Examples
---
# Using deleted
# Before state:
# -------------
#
# veos#show running-config | section interface
# interface Ethernet1
#    ip address 192.0.2.12/24
# !
# interface Ethernet2
#    ipv6 address 2001:db8::1/64
# !
# interface Management1
#    ip address dhcp
#    ipv6 address auto-config
- name: Delete L3 attributes of given interfaces.
  eos_l3_interfaces:
    config:
      - name: Ethernet1
      - name: Ethernet2
    state: deleted
# After state:
# ------------
#
# veos#show running-config | section interface
# interface Ethernet1
# !
# interface Ethernet2
# !
# interface Management1
#    ip address dhcp
#    ipv6 address auto-config
# Using merged
# Before state:
# -------------
#
# veos#show running-config | section interface
# interface Ethernet1
#    ip address 192.0.2.12/24
# !
# interface Ethernet2
#    ipv6 address 2001:db8::1/64
# !
# interface Management1
#    ip address dhcp
#    ipv6 address auto-config
- name: Merge provided configuration with device configuration.
  eos_l3_interfaces:
    config:
      - name: Ethernet1
        ipv4:
          address: 198.51.100.14/24
      - name: Ethernet2
    ipv4:
      address: 203.0.113.27/24
    state: merged
# After state:
# ------------
#
# veos#show running-config | section interface
# interface Ethernet1
#    ip address 198.51.100.14/24
# !
# interface Ethernet2
#    ip address 203.0.113.27/24
#    ipv6 address 2001:db8::1/64
# !
# interface Management1
#    ip address dhcp
#    ipv6 address auto-config
# Using overridden
# Before state:
# -------------
#
# veos#show running-config | section interface
# interface Ethernet1
#    ip address 192.0.2.12/24
# !
# interface Ethernet2
#    ipv6 address 2001:db8::1/64
# !
# interface Management1
#    ip address dhcp
#    ipv6 address auto-config
- name: Override device configuration of all L2 interfaces on device with provided configuration.
  eos_l3_interfaces:
    config:
      - name: Ethernet1
        ipv6:
          address: 2001:db8:feed::1/96
      - name: Management1
        ipv4:
          address: dhcp
    ipv6: auto-config
    state: overridden
# After state:
# ------------
#
# veos#show running-config | section interface
# interface Ethernet1
#    ipv6 address 2001:db8:feed::1/96
# !
# interface Ethernet2
# !
# interface Management1
#    ip address dhcp
#    ipv6 address auto-config
# Using replaced
# Before state:
# -------------
#
# veos#show running-config | section interface
# interface Ethernet1
#    ip address 192.0.2.12/24
# !
# interface Ethernet2
#    ipv6 address 2001:db8::1/64
# !
# interface Management1
#    ip address dhcp
#    ipv6 address auto-config
- name: Replace device configuration of specified L2 interfaces with provided configuration.
  eos_l3_interfaces:
    config:
      - name: Ethernet2
        ipv4:
          address: 203.0.113.27/24
    state: replaced
# After state:
# ------------
#
# veos#show running-config | section interface
# interface Ethernet1
#    ip address 192.0.2.12/24
# !
# interface Ethernet2
#    ip address 203.0.113.27/24
# !
# interface Management1
#    ip address dhcp
#    ipv6 address auto-config
Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description | 
|---|---|---|
| after 
        list
        | when changed | 
        The configuration as structured data after module completion.
        Sample:
        
        The configuration returned will always be in the same format of the parameters above.
        | 
| before 
        list
        | always | 
        The configuration as structured data prior to module invocation.
        Sample:
        
        The configuration returned will always be in the same format of the parameters above.
        | 
| commands 
        list
        | always | 
        The set of commands pushed to the remote device.
        Sample:
        
        ['interface Ethernet2', 'ip address 192.0.2.12/24']
        | 
Status
- This module is not guaranteed to have a backwards compatible interface. [preview]
- This module is maintained by the Ansible Network Team. [network]
Red Hat Support
More information about Red Hat’s support of this module is available from this Red Hat Knowledge Base article.
Authors
- Nathaniel Case (@qalthos)
Hint
If you notice any issues in this documentation, you can edit this document to improve it.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
 https://docs.ansible.com/ansible/2.9/modules/eos_l3_interfaces_module.html