OSPF Interfaces Resource Module.
Version added: 1.1.0
- This module manages OSPF configuration of interfaces on devices running Arista EOS.
# Using merged
# Before state:
# -------------
# veos(config)#show running-config | section interface | ospf
# veos(config)#
- name: Merge provided configuration with device configuration
arista.eos.eos_ospf_interfaces:
config:
- name: "Vlan1"
address_family:
- afi: "ipv4"
area:
area_id: "0.0.0.50"
cost: 500
mtu_ignore: true
- afi: "ipv6"
dead_interval: 44
ip_params:
- afi: "ipv6"
mtu_ignore: true
network: "point-to-point"
state: merged
# Task output:
# ------------
# before: []
#
# commands:
# - interface Vlan1
# - ip ospf area 0.0.0.50
# - ip ospf cost 500
# - ip ospf mtu-ignore
# - ospfv3 dead-interval 44
# - ospfv3 ipv6 mtu-ignore
# - ospfv3 ipv6 network point-to-point
#
# after:
# - address_family:
# - afi: ipv4
# area:
# area_id: 0.0.0.50
# cost: 500
# mtu_ignore: true
# - afi: ipv6
# dead_interval: 44
# ip_params:
# - afi: ipv6
# mtu_ignore: true
# network: point-to-point
# name: Vlan1
# After state:
# ------------
# veos(config)#show running-config | section interface | ospf
# interface Vlan1
# ip ospf cost 500
# ip ospf mtu-ignore
# ip ospf area 0.0.0.50
# ospfv3 dead-interval 44
# ospfv3 ipv6 network point-to-point
# ospfv3 ipv6 mtu-ignore
# Using replaced
# Before state:
# -------------
# veos(config)#show running-config | section interface | ospf
# interface Vlan1
# ip ospf cost 500
# ip ospf dead-interval 29
# ip ospf hello-interval 66
# ip ospf mtu-ignore
# ip ospf area 0.0.0.50
# ospfv3 cost 106
# ospfv3 hello-interval 77
# ospfv3 dead-interval 44
# ospfv3 transmit-delay 100
# ospfv3 ipv4 priority 45
# ospfv3 ipv4 area 0.0.0.5
# ospfv3 ipv6 passive-interface
# ospfv3 ipv6 retransmit-interval 115
# ospfv3 ipv6 network point-to-point
# ospfv3 ipv6 mtu-ignore
# !
# interface Vlan2
# ospfv3 ipv4 hello-interval 45
# ospfv3 ipv4 retransmit-interval 100
# ospfv3 ipv4 area 0.0.0.6
- name: Replace device configuration with provided configuration
arista.eos.eos_ospf_interfaces:
config:
- name: "Vlan1"
address_family:
- afi: "ipv6"
cost: 44
bfd: true
ip_params:
- afi: "ipv6"
mtu_ignore: true
network: "point-to-point"
dead_interval: 56
state: replaced
# Task output:
# ------------
# before:
# - address_family:
# - afi: ipv4
# area:
# area_id: 0.0.0.50
# cost: 500
# dead_interval: 29
# hello_interval: 66
# mtu_ignore: true
# - afi: ipv6
# cost: 106
# dead_interval: 44
# hello_interval: 77
# ip_params:
# - afi: ipv4
# area:
# area_id: 0.0.0.5
# priority: 45
# - afi: ipv6
# mtu_ignore: true
# network: point-to-point
# passive_interface: true
# retransmit_interval: 115
# transmit_delay: 100
# name: Vlan1
# - address_family:
# - afi: ipv6
# ip_params:
# - afi: ipv4
# area:
# area_id: 0.0.0.6
# hello_interval: 45
# retransmit_interval: 100
# name: Vlan2
#
# commands:
# - interface Vlan1
# - no ip ospf cost 500
# - no ip ospf dead-interval 29
# - no ip ospf hello-interval 66
# - no ip ospf mtu-ignore
# - no ip ospf area 0.0.0.50
# - ospfv3 cost 44
# - ospfv3 bfd
# - ospfv3 authentication ipsec spi 30 md5 passphrase 7 7hl8FV3lZ6H1mAKpjL47hQ==
# - no ospfv3 ipv4 priority 45
# - no ospfv3 ipv4 area 0.0.0.5
# - ospfv3 ipv6 dead-interval 56
# - no ospfv3 ipv6 passive-interface
# - no ospfv3 ipv6 retransmit-interval 115
# - no ospfv3 hello-interval 77
# - no ospfv3 dead-interval 44
# - no ospfv3 transmit-delay 100
#
# after:
# - address_family:
# - afi: ipv6
# bfd: true
# cost: 44
# ip_params:
# - afi: ipv6
# mtu_ignore: true
# network: point-to-point
# name: Vlan1
# - address_family:
# - afi: ipv6
# ip_params:
# - afi: ipv4
# area:
# area_id: 0.0.0.6
# hello_interval: 45
# retransmit_interval: 100
# name: Vlan2
# After state:
# ------------
# veos(config)#show running-config | section interface | ospf
# interface Vlan1
# ospfv3 bfd
# ospfv3 cost 44
# no ospfv3 ipv6 passive-interface
# ospfv3 ipv6 network point-to-point
# ospfv3 ipv6 mtu-ignore
# !
# interface Vlan2
# ospfv3 ipv4 hello-interval 45
# ospfv3 ipv4 retransmit-interval 100
# ospfv3 ipv4 area 0.0.0.6
# Using overidden
# Before state:
# -------------
# veos(config)#show running-config | section interface | ospf
# interface Vlan1
# ip ospf dead-interval 29
# ip ospf hello-interval 66
# ip ospf mtu-ignore
# ospfv3 bfd
# ospfv3 cost 106
# ospfv3 hello-interval 77
# ospfv3 transmit-delay 100
# ospfv3 ipv4 priority 45
# ospfv3 ipv4 area 0.0.0.5
# ospfv3 ipv6 passive-interface
# ospfv3 ipv6 dead-interval 56
# ospfv3 ipv6 retransmit-interval 115
# ospfv3 ipv6 network point-to-point
# ospfv3 ipv6 mtu-ignore
# !
# interface Vlan2
# ospfv3 ipv4 hello-interval 45
# ospfv3 ipv4 retransmit-interval 100
# ospfv3 ipv4 area 0.0.0.6
- name: Override device configuration with provided configuration
arista.eos.eos_ospf_interfaces:
config:
- name: "Vlan1"
address_family:
- afi: "ipv6"
cost: 44
bfd: true
ip_params:
- afi: "ipv6"
mtu_ignore: true
network: "point-to-point"
dead_interval: 56
state: overridden
# Task output:
# ------------
# before:
# - address_family:
# - afi: ipv4
# dead_interval: 29
# hello_interval: 66
# mtu_ignore: true
# - afi: ipv6
# bfd: true
# cost: 106
# hello_interval: 77
# ip_params:
# - afi: ipv4
# area:
# area_id: 0.0.0.5
# priority: 45
# - afi: ipv6
# dead_interval: 56
# mtu_ignore: true
# network: point-to-point
# passive_interface: true
# retransmit_interval: 115
# transmit_delay: 100
# name: Vlan1
# - address_family:
# - afi: ipv6
# ip_params:
# - afi: ipv4
# area:
# area_id: 0.0.0.6
# hello_interval: 45
# retransmit_interval: 100
# name: Vlan2
#
# commands:
# - interface Vlan2
# - no ospfv3 ipv4 hello-interval 45
# - no ospfv3 ipv4 retransmit-interval 100
# - no ospfv3 ipv4 area 0.0.0.6
# - interface Vlan1
# - no ip ospf dead-interval 29
# - no ip ospf hello-interval 66
# - no ip ospf mtu-ignore
# - ospfv3 cost 44
# - ospfv3 authentication ipsec spi 30 md5 passphrase 7 7hl8FV3lZ6H1mAKpjL47hQ==
# - no ospfv3 ipv4 priority 45
# - no ospfv3 ipv4 area 0.0.0.5
# - no ospfv3 ipv6 passive-interface
# - no ospfv3 ipv6 retransmit-interval 115
# - no ospfv3 hello-interval 77
# - no ospfv3 transmit-delay 100
#
# after:
# - address_family:
# - afi: ipv6
# bfd: true
# cost: 44
# ip_params:
# - afi: ipv6
# dead_interval: 56
# mtu_ignore: true
# network: point-to-point
# name: Vlan1
# After state:
# ------------
# veos(config)#show running-config | section interface | ospf
# interface Vlan1
# ospfv3 bfd
# ospfv3 cost 44
# no ospfv3 ipv6 passive-interface
# ospfv3 ipv6 dead-interval 56
# ospfv3 ipv6 network point-to-point
# ospfv3 ipv6 mtu-ignore
# Using deleted
# Before state:
# -------------
# veos(config)#show running-config | section interface | ospf
# interface Vlan1
# ip ospf dead-interval 29
# ip ospf hello-interval 66
# ip ospf mtu-ignore
# ospfv3 bfd
# ospfv3 cost 106
# ospfv3 hello-interval 77
# ospfv3 transmit-delay 100
# ospfv3 ipv4 priority 45
# ospfv3 ipv4 area 0.0.0.5
# ospfv3 ipv6 passive-interface
# ospfv3 ipv6 dead-interval 56
# ospfv3 ipv6 retransmit-interval 115
# ospfv3 ipv6 network point-to-point
# ospfv3 ipv6 mtu-ignore
# !
# interface Vlan2
# ospfv3 ipv4 hello-interval 45
# ospfv3 ipv4 retransmit-interval 100
# ospfv3 ipv4 area 0.0.0.6
- name: Delete provided ospf interface config
arista.eos.eos_ospf_interfaces:
config:
- name: "Vlan1"
state: deleted
# Task output:
# ------------
# before:
# - address_family:
# - afi: ipv4
# dead_interval: 29
# hello_interval: 66
# mtu_ignore: true
# - afi: ipv6
# bfd: true
# cost: 106
# hello_interval: 77
# ip_params:
# - afi: ipv4
# area:
# area_id: 0.0.0.5
# priority: 45
# - afi: ipv6
# dead_interval: 56
# mtu_ignore: true
# network: point-to-point
# passive_interface: true
# retransmit_interval: 115
# transmit_delay: 100
# name: Vlan1
# - address_family:
# - afi: ipv6
# ip_params:
# - afi: ipv4
# area:
# area_id: 0.0.0.6
# hello_interval: 45
# retransmit_interval: 100
# name: Vlan2
# commands:
# - interface Vlan1
# - no ip ospf dead-interval 29
# - no ip ospf hello-interval 66
# - no ip ospf mtu-ignore
# - no ospfv3 bfd
# - no ospfv3 cost 106
# - no ospfv3 hello-interval 77
# - no ospfv3 transmit-delay 100
# - no ospfv3 ipv4 priority 45
# - no ospfv3 ipv4 area 0.0.0.5
# - no ospfv3 ipv6 passive-interface
# - no ospfv3 ipv6 dead-interval 56
# - no ospfv3 ipv6 retransmit-interval 115
# - no ospfv3 ipv6 network point-to-point
# - no ospfv3 ipv6 mtu-ignore
#
# after:
# - address_family:
# - afi: ipv6
# ip_params:
# - afi: ipv4
# area:
# area_id: 0.0.0.6
# hello_interval: 45
# retransmit_interval: 100
# name: Vlan2
# After state:
# ------------
# veos#show running-config | section interface | ospf
# interface Vlan2
# ospfv3 ipv4 hello-interval 45
# ospfv3 ipv4 retransmit-interval 100
# ospfv3 ipv4 area 0.0.0.6
# Using parsed
# parsed.cfg
# ----------
# interface Vlan1
# ip ospf dead-interval 29
# ip ospf hello-interval 66
# ip ospf mtu-ignore
# ip ospf cost 500
# ospfv3 bfd
# ospfv3 cost 106
# ospfv3 hello-interval 77
# ospfv3 transmit-delay 100
# ospfv3 ipv4 priority 45
# ospfv3 ipv4 area 0.0.0.5
# ospfv3 ipv6 passive-interface
# ospfv3 ipv6 dead-interval 56
# ospfv3 ipv6 retransmit-interval 115
# ospfv3 ipv6 network point-to-point
# ospfv3 ipv6 mtu-ignore
# !
# interface Vlan2
# ospfv3 ipv4 hello-interval 45
# ospfv3 ipv4 retransmit-interval 100
# ospfv3 ipv4 area 0.0.0.6
#
- name: parse provided config into structured facts
arista.eos.eos_ospf_interfaces:
running_config: "{{ lookup('file', './parsed.cfg') }}"
state: parsed
# Task output:
# ------------
# parsed:
# - address_family:
# - afi: ipv4
# cost: 500
# dead_interval: 29
# hello_interval: 66
# mtu_ignore: true
# - afi: ipv6
# bfd: true
# cost: 106
# hello_interval: 77
# ip_params:
# - afi: ipv4
# area:
# area_id: 0.0.0.5
# priority: 45
# - afi: ipv6
# dead_interval: 56
# mtu_ignore: true
# network: point-to-point
# passive_interface: true
# retransmit_interval: 115
# transmit_delay: 100
# name: Vlan1
# - address_family:
# - afi: ipv6
# ip_params:
# - afi: ipv4
# area:
# area_id: 0.0.0.6
# hello_interval: 45
# retransmit_interval: 100
# name: Vlan2
# Using gathered:
# Device config:
# veos#show running-config | section interface | ospf
# interface Vlan1
# ip ospf cost 500
# ip ospf dead-interval 29
# ip ospf hello-interval 66
# ip ospf mtu-ignore
# ip ospf area 0.0.0.50
# ospfv3 cost 106
# ospfv3 hello-interval 77
# ospfv3 transmit-delay 100
# ospfv3 ipv4 priority 45
# ospfv3 ipv4 area 0.0.0.5
# ospfv3 ipv6 passive-interface
# ospfv3 ipv6 dead-interval 56
# ospfv3 ipv6 retransmit-interval 115
# ospfv3 ipv6 network point-to-point
# ospfv3 ipv6 mtu-ignore
# !
# interface Vlan2
# ospfv3 ipv4 hello-interval 45
# ospfv3 ipv4 retransmit-interval 100
# ospfv3 ipv4 area 0.0.0.6
- name: gather runnig config
arista.eos.eos_ospf_interfaces:
state: gathered
# Task output:
# ------------
# gathered:
# - address_family:
# - afi: ipv4
# area:
# area_id: 0.0.0.50
# cost: 500
# dead_interval: 29
# hello_interval: 66
# mtu_ignore: true
# - afi: ipv6
# cost: 106
# hello_interval: 77
# ip_params:
# - afi: ipv4
# area:
# area_id: 0.0.0.5
# priority: 45
# - afi: ipv6
# dead_interval: 56
# mtu_ignore: true
# network: point-to-point
# passive_interface: true
# retransmit_interval: 115
# transmit_delay: 100
# name: Vlan1
# - address_family:
# - afi: ipv6
# ip_params:
# - afi: ipv4
# area:
# area_id: 0.0.0.6
# hello_interval: 45
# retransmit_interval: 100
# name: Vlan2
# Using rendered
- name: Render provided configuration
arista.eos.eos_ospf_interfaces:
config:
- name: "Vlan1"
address_family:
- afi: "ipv4"
dead_interval: 29
mtu_ignore: true
hello_interval: 66
- afi: "ipv6"
hello_interval: 77
cost: 106
transmit_delay: 100
ip_params:
- afi: "ipv6"
retransmit_interval: 115
dead_interval: 56
passive_interface: true
- afi: "ipv4"
area:
area_id: "0.0.0.5"
priority: 45
- name: "Vlan2"
address_family:
- afi: "ipv6"
ip_params:
- afi: "ipv4"
area:
area_id: "0.0.0.6"
hello_interval: 45
retransmit_interval: 100
- afi: "ipv4"
message_digest_key:
key_id: 200
encryption: 7
key: "hkdfhtu=="
state: rendered
# Task output:
# ------------
# rendered:
# - interface Vlan1
# - ip ospf dead-interval 29
# - ip ospf mtu-ignore
# - ip ospf hello-interval 66
# - ospfv3 hello-interval 77
# - ospfv3 cost 106
# - ospfv3 transmit-delay 100
# - ospfv3 ipv4 area 0.0.0.5
# - ospfv3 ipv4 priority 45
# - ospfv3 ipv6 retransmit-interval 115
# - ospfv3 ipv6 dead-interval 56
# - ospfv3 ipv6 passive-interface
# - interface Vlan2
# - ip ospf message-digest-key 200 md5 7 hkdfhtu==
# - ospfv3 ipv4 area 0.0.0.6
# - ospfv3 ipv4 hello-interval 45
# - ospfv3 ipv4 retransmit-interval 100
Common return values are documented here, the following are the fields unique to this module:
- Gomathi Selvi Srinivasan (@GomathiselviS)