Spec-Zone.ru › Ansible

cisco.ios.ios_ospf_interfaces module – Модуль ресурсов для настройки интерфейсов OSPF.

Примечание

Этот модуль входит в коллекцию cisco.ios (версия 11.4.1).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните команду ansible-galaxy collection list.

Чтобы установить её, используйте: ansible-galaxy collection install cisco.ios.

Чтобы использовать её в плейбуке, укажите: cisco.ios.ios_ospf_interfaces.

Добавлено в cisco.ios 1.0.0

  • Обзор
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Обзор

  • Этот модуль настраивает и управляет протоколом Open Shortest Path First (OSPF) версии 2 на платформах IOS.

Примечание

Этому модулю соответствует плагин действий.

Параметры

Параметр

Комментарии

config

list / elements=dictionary

Словарь параметров интерфейсов OSPF.

address_family

list / elements=dictionary

Параметры интерфейсов OSPF для интерфейсов в контексте семейства адресов.

adjacency

boolean

Пошаговое установление смежности

Варианты:

  • false
  • true

afi

string / обязательный

Идентификатор семейства адресов (AFI) для параметров интерфейсов OSPF.

Варианты:

  • "ipv4"
  • "ipv6"

authentication

dictionary

Включить аутентификацию

key_chain

string

Использовать цепочку ключей для ключей криптографической аутентификации

message_digest

boolean

Использовать аутентификацию с дайджестом сообщения

Варианты:

  • false
  • true

null

boolean

Не использовать аутентификацию

Варианты:

  • false
  • true

bfd

boolean

Команды настройки BFD

Включить/отключить BFD на этом интерфейсе

Варианты:

  • false
  • true

cost

dictionary

Стоимость интерфейса

dynamic_cost

dictionary

Задать параметры динамической стоимости

Допустимо только для конфигурации OSPF IPv6

default

integer

Задать значение метрики канала по умолчанию

hysteresis

dictionary

Задать значение гистерезиса для подавления LSA

percent

integer

Задать процент изменения гистерезиса. Допустимые значения см. в документации производителя.

threshold

integer

Задать пороговое значение гистерезиса. Допустимые значения см. в документации производителя.

weight

dictionary

Задать вес для отдельных метрик

l2_factor

integer

Задать вес метрики коэффициента L2

Процентный вес метрики коэффициента L2. Допустимые значения см. в документации производителя.

latency

integer

Задать вес метрики задержки.

Процентный вес метрики задержки. Допустимые значения см. в документации производителя.

oc

boolean

Задать вес для cdr/mdr в oc

Назначить текущей скорости передачи данных вес 100 процентов (0 для maxdatarate)

Варианты:

  • false
  • true

resources

integer

Задать вес метрики ресурсов

Процентный вес метрики ресурсов. Допустимые значения см. в документации производителя.

throughput

integer

Задать вес метрики пропускной способности

Процентный вес метрики пропускной способности. Допустимые значения см. в документации производителя.

interface_cost

integer

Стоимость интерфейса или маршрута через этот интерфейс

database_filter

boolean

Фильтровать LSA OSPF во время синхронизации и рассылки

Варианты:

  • false
  • true

dead_interval

dictionary

Интервал, по истечении которого сосед объявляется недоступным

minimal

integer

Установить интервал в 1 секунду и задать множитель для пакетов Hello

Количество пакетов Hello, отправляемых в течение 1 секунды. Допустимые значения см. в документации производителя.

Допустимо только для конфигурации IP OSPF

time

integer

время в секундах

demand_circuit

dictionary

Канал OSPF по требованию: включить или отключить его

disable

boolean

Отключить канал по требованию на этом интерфейсе

Допустимо только для конфигурации OSPF IPv6

Варианты:

  • false
  • true

enable

boolean

Включить канал по требованию

Варианты:

  • false
  • true

ignore

boolean

Игнорировать запросы автоматического согласования канала по требованию

Варианты:

  • false
  • true

flood_reduction

boolean

Сокращение рассылки OSPF

Варианты:

  • false
  • true

hello_interval

integer

Интервал между пакетами HELLO

Допустимые значения см. в документации производителя.

lls

boolean

Поддержка Link-local Signaling (LLS)

Допустимо только для конфигурации IP OSPF

Варианты:

  • false
  • true

manet

dictionary

Параметры мобильной одноранговой сети

Параметры пирингового соединения MANET

Допустимо только для конфигурации OSPF IPv6

cost

dictionary

Требуемое для подключения к узлу-пиру улучшение стоимости резервного пути

percent

integer

Относительная добавочная стоимость пути. Допустимые значения см. в документации производителя.

threshold

integer

Абсолютная добавочная стоимость пути. Допустимые значения см. в документации производителя.

link_metrics

dictionary

Требуемое для подключения к узлу-пиру улучшение стоимости резервного пути

cost_threshold

integer

Минимальный порог стоимости канала. Допустимые значения см. в документации производителя.

set

boolean

Включить метрики канала

Варианты:

  • false
  • true

mtu_ignore

boolean

Игнорировать MTU в пакетах DBD

Варианты:

  • false
  • true

multi_area

dictionary

Задать идентификатор мультиобласти OSPF

Допустимо только для конфигурации IP OSPF

cost

integer

Стоимость интерфейса

id

integer

Идентификатор мультиобласти OSPF в виде десятичного числа. Допустимые значения см. в документации производителя.

Идентификатор мультиобласти OSPF в формате IP-адреса (например, A.B.C.D)

neighbor

dictionary

Локальный для канала IPv6-адрес соседа OSPF (X:X:X:X::X)

Допустимо только для конфигурации OSPF IPv6

address

string

Локальный для канала IPv6-адрес соседа

cost

integer

Стоимость OSPF для соседа в сети «точка — несколько точек»

database_filter

boolean

Фильтровать LSA OSPF во время синхронизации и рассылки для соседа в сети «точка — несколько точек»

Варианты:

  • false
  • true

poll_interval

integer

Интервал опроса недоступного маршрутизатора OSPF

priority

integer

Приоритет соседа OSPF в сети без широковещания

network

dictionary

Тип сети

broadcast

boolean

Указать многоузловую широковещательную сеть OSPF

Варианты:

  • false
  • true

manet

boolean

Указать тип интерфейса MANET OSPF

Допустимо только для конфигурации OSPF IPv6

Варианты:

  • false
  • true

non_broadcast

boolean

Указать сеть NBMA OSPF

Варианты:

  • false
  • true

point_to_multipoint

boolean

Указать сеть OSPF типа «точка — несколько точек»

Варианты:

  • false
  • true

point_to_point

boolean

Указать сеть OSPF типа «точка — точка»

Варианты:

  • false
  • true

prefix_suppression

boolean

Включить/отключить подавление префиксов OSPF

Варианты:

  • false
  • true

priority

integer

Приоритет маршрутизатора. Допустимые значения см. в документации производителя.

process

dictionary

Параметры процесса интерфейсов OSPF

area_id

string

Идентификатор области интерфейсов OSPF в виде десятичного числа. Допустимые значения см. в документации производителя.

Идентификатор области интерфейсов OSPF в формате IP-адреса (например, A.B.C.D)

id

integer

Идентификатор семейства адресов (AFI) для параметров интерфейсов OSPF. Допустимые значения см. в документации производителя.

instance_id

integer

Задать экземпляр OSPF на основе идентификатора

Применимо только для конфигурации IPv6 OSPF

secondaries

boolean

Включить или исключить вторичные IP-адреса.

Применимо только для конфигурации IPv4

Варианты:

  • false
  • true

resync_timeout

integer

Интервал, по истечении которого смежность сбрасывается, если синхронизация oob-resync не запущена. Допустимые значения см. в документации производителя.

retransmit_interval

integer

Время между повторными передачами объявлений о состоянии потерянных каналов. Допустимые значения см. в документации производителя.

shutdown

boolean

Отключить протокол OSPF на текущем интерфейсе

Варианты:

  • false
  • true

transmit_delay

integer

Задержка передачи состояния канала. Допустимые значения см. в документации производителя.

ttl_security

dictionary

Проверка безопасности TTL

Применимо только для конфигурации IPV4 OSPF

hops

integer

Максимальное допустимое количество переходов IP

Допустимые значения см. в документации производителя.

set

boolean

Включить безопасность TTL на всех интерфейсах

Варианты:

  • false
  • true

name

string / обязательный

Полное имя интерфейса без номера логического устройства, например GigabitEthernet0/1.

running_config

string

Этот параметр используется только с состоянием parsed.

Значением этого параметра должны быть данные, полученные с устройства IOS при выполнении команды sh running-config | section ^interface.

Состояние parsed считывает конфигурацию из параметра running_config и преобразует её в структурированные данные Ansible согласно спецификации аргументов модуля ресурса; затем значение возвращается в ключе parsed результата.

state

string

Состояние, в котором должна остаться конфигурация

Состояния rendered, gathered и parsed не вносят изменений на устройстве.

Состояние rendered преобразует конфигурацию из параметра config в специфичные для платформы команды CLI, которые возвращаются в ключе rendered результата. Для состояния rendered активное подключение к удалённому узлу не требуется.

Состояние gathered получает текущую конфигурацию устройства и преобразует её в структурированные данные в формате, соответствующем спецификации аргументов модуля ресурса; значение возвращается в ключе gathered результата.

Состояние parsed считывает конфигурацию из параметра running_config и преобразует её в формат JSON в соответствии с параметрами модуля ресурса; значение возвращается в ключе parsed результата. Значение параметра running_config должно иметь тот же формат, что и вывод команды show running-config | section ^interface, выполненной на устройстве. Для состояния parsed активное подключение к удалённому узлу не требуется.

Варианты:

  • "merged" ← (по умолчанию)
  • "replaced"
  • "overridden"
  • "deleted"
  • "gathered"
  • "rendered"
  • "parsed"

Примечания

Примечание

  • Проверено на Cisco IOSXE версии 17.3 в CML.
  • Этот модуль работает с подключением network_cli. См. https://docs.ansible.com/ansible/latest/network/user_guide/platform_ios.html

Примеры

# Using deleted

# Before state:
# -------------
#
# router-ios#sh running-config | section ^interface
# interface GigabitEthernet0/0
# interface GigabitEthernet0/1
#  ipv6 ospf 55 area 105
#  ipv6 ospf priority 20
#  ipv6 ospf transmit-delay 30
#  ipv6 ospf adjacency stagger disable
# interface GigabitEthernet0/2
#  ip ospf priority 40
#  ip ospf adjacency stagger disable
#  ip ospf ttl-security hops 50
#  ip ospf 10 area 20
#  ip ospf cost 30

- name: Delete provided OSPF Interface config
  cisco.ios.ios_ospf_interfaces:
    config:
      - name: GigabitEthernet0/1
    state: deleted

# Task Output:
# ------------

# before:
#   - name: GigabitEthernet0/0
#   - address_family:
#     - adjacency: true
#       afi: ipv6
#       priority: 20
#       process:
#         area_id: '105'
#         id: 55
#       transmit_delay: 30
#     name: GigabitEthernet0/1
#   - address_family:
#     - adjacency: true
#       afi: ipv4
#       cost:
#         interface_cost: 30
#       priority: 40
#       process:
#         area_id: '20'
#         id: 10
#       ttl_security:
#         hops: 50
#         set: true
#     name: GigabitEthernet0/2
#
# commands:
# - interface GigabitEthernet0/1
# - no ipv6 ospf 55 area 105
# - no ipv6 ospf adjacency stagger disable
# - no ipv6 ospf priority 20
# - no ipv6 ospf transmit-delay 30
#
# after:
#   - name: GigabitEthernet0/0
#   - name: GigabitEthernet0/1
#   - address_family:
#     - adjacency: true
#       afi: ipv4
#       cost:
#         interface_cost: 30
#       priority: 40
#       process:
#         area_id: '20'
#         id: 10
#       ttl_security:
#         hops: 50
#         set: true
#     name: GigabitEthernet0/2
#
# After state:
# ------------
# router-ios#sh running-config | section ^interface
# interface GigabitEthernet0/0
# interface GigabitEthernet0/1
# interface GigabitEthernet0/2
#  ip ospf priority 40
#  ip ospf adjacency stagger disable
#  ip ospf ttl-security hops 50
#  ip ospf 10 area 20
#  ip ospf cost 30

# Using deleted without any config passed (NOTE: This will delete all OSPF Interfaces configuration from device)

# Before state:
# -------------
#
# router-ios#sh running-config | section ^interface
# interface GigabitEthernet0/0
# interface GigabitEthernet0/1
#  ipv6 ospf 55 area 105
#  ipv6 ospf priority 20
#  ipv6 ospf transmit-delay 30
#  ipv6 ospf adjacency stagger disable
# interface GigabitEthernet0/2
#  ip ospf priority 40
#  ip ospf adjacency stagger disable
#  ip ospf ttl-security hops 50
#  ip ospf 10 area 20
#  ip ospf cost 30

- name: Delete all OSPF config from interfaces
  cisco.ios.ios_ospf_interfaces:
    state: deleted

# Task Output:
# ------------

# before:
#   - name: GigabitEthernet0/0
#   - address_family:
#     - adjacency: true
#       afi: ipv6
#       priority: 20
#       process:
#         area_id: '105'
#         id: 55
#       transmit_delay: 30
#     name: GigabitEthernet0/1
#   - address_family:
#     - adjacency: true
#       afi: ipv4
#       cost:
#         interface_cost: 30
#       priority: 40
#       process:
#         area_id: '20'
#         id: 10
#       ttl_security:
#         hops: 50
#         set: true
#     name: GigabitEthernet0/2
#
# commands:
# - interface GigabitEthernet0/2
# - no ip ospf 10 area 20
# - no ip ospf adjacency stagger disable
# - no ip ospf cost 30
# - no ip ospf priority 40
# - no ip ospf ttl-security hops 50
# - interface GigabitEthernet0/1
# - no ipv6 ospf 55 area 105
# - no ipv6 ospf adjacency stagger disable
# - no ipv6 ospf priority 20
# - no ipv6 ospf transmit-delay 30
#
# after:
#   - name: GigabitEthernet0/0
#   - name: GigabitEthernet0/1
#   - name: GigabitEthernet0/2

# After state:
# -------------
# router-ios#sh running-config | section ^interface
# interface GigabitEthernet0/0
# interface GigabitEthernet0/1
# interface GigabitEthernet0/2

# Using merged

# Before state:
# -------------
#
# router-ios#sh running-config | section ^interface
# router-ios#

- name: Merge provided OSPF Interfaces configuration
  cisco.ios.ios_ospf_interfaces:
    config:
      - name: GigabitEthernet0/1
        address_family:
          - afi: ipv4
            process:
              id: 10
              area_id: 30
            adjacency: true
            bfd: true
            cost:
              interface_cost: 5
            dead_interval:
              time: 5
            demand_circuit:
              ignore: true
            network:
              broadcast: true
            priority: 25
            resync_timeout: 10
            shutdown: true
            ttl_security:
              hops: 50
          - afi: ipv6
            process:
              id: 35
              area_id: 45
            adjacency: true
            database_filter: true
            manet:
              link_metrics:
                cost_threshold: 10
            priority: 55
            transmit_delay: 45
    state: merged

# Task Output:
# ------------
# before: []
#
# commands:
# - interface GigabitEthernet0/1
# - ip ospf 10 area 30
# - ip ospf adjacency stagger disable
# - ip ospf bfd
# - ip ospf cost 5
# - ip ospf dead-interval 5
# - ip ospf demand-circuit ignore
# - ip ospf network broadcast
# - ip ospf priority 25
# - ip ospf resync-timeout 10
# - ip ospf shutdown
# - ip ospf ttl-security hops 50
# - ipv6 ospf 35 area 45
# - ipv6 ospf adjacency stagger disable
# - ipv6 ospf database-filter all out
# - ipv6 ospf manet peering link-metrics 10
# - ipv6 ospf priority 55
# - ipv6 ospf transmit-delay 45
#
# after:
#   - name: GigabitEthernet0/0
#   - address_family:
#     - adjacency: true
#       afi: ipv4
#       bfd: true
#       cost:
#         interface_cost: 5
#       dead_interval:
#         time: 5
#       demand_circuit:
#         enable: true
#         ignore: true
#       network:
#         broadcast: true
#       priority: 25
#       process:
#         area_id: '30'
#         id: 10
#       resync_timeout: 10
#       shutdown: true
#       ttl_security:
#         hops: 50
#         set: true
#     - adjacency: true
#       afi: ipv6
#       database_filter: true
#       manet:
#         link_metrics:
#           cost_threshold: 10
#       priority: 55
#       process:
#         area_id: '45'
#         id: 35
#       transmit_delay: 45
#     name: GigabitEthernet0/1
#   - name: GigabitEthernet0/2

# After state:
# -------------
#
# router-ios#sh running-config | section ^interface
# interface GigabitEthernet0/0
# interface GigabitEthernet0/1
#  ip ospf network broadcast
#  ip ospf resync-timeout 10
#  ip ospf dead-interval 5
#  ip ospf priority 25
#  ip ospf demand-circuit ignore
#  ip ospf bfd
#  ip ospf adjacency stagger disable
#  ip ospf ttl-security hops 50
#  ip ospf shutdown
#  ip ospf 10 area 30
#  ip ospf cost 5
#  ipv6 ospf 35 area 45
#  ipv6 ospf priority 55
#  ipv6 ospf transmit-delay 45
#  ipv6 ospf database-filter all out
#  ipv6 ospf adjacency stagger disable
#  ipv6 ospf manet peering link-metrics 10
# interface GigabitEthernet0/2

# Using overridden

# Before state:
# -------------
#
# router-ios#sh running-config | section ^interface
# interface GigabitEthernet0/0
# interface GigabitEthernet0/1
#  ip ospf network broadcast
#  ip ospf resync-timeout 10
#  ip ospf dead-interval 5
#  ip ospf priority 25
#  ip ospf demand-circuit ignore
#  ip ospf bfd
#  ip ospf adjacency stagger disable
#  ip ospf ttl-security hops 50
#  ip ospf shutdown
#  ip ospf 10 area 30
#  ip ospf cost 5
#  ipv6 ospf 35 area 45
#  ipv6 ospf priority 55
#  ipv6 ospf transmit-delay 45
#  ipv6 ospf database-filter all out
#  ipv6 ospf adjacency stagger disable
#  ipv6 ospf manet peering link-metrics 10
# interface GigabitEthernet0/2

- name: Override running config with provided OSPF Interfaces configuration
  cisco.ios.ios_ospf_interfaces:
    config:
      - name: GigabitEthernet0/1
        address_family:
          - afi: ipv6
            process:
              id: 55
              area_id: 105
            adjacency: true
            priority: 20
            transmit_delay: 30
      - name: GigabitEthernet0/2
        address_family:
          - afi: ipv4
            process:
              id: 10
              area_id: 20
            adjacency: true
            cost:
              interface_cost: 30
            priority: 40
            ttl_security:
              hops: 50
    state: overridden

# Task Output:
# ------------
#
# before:
#   - name: GigabitEthernet0/0
#   - address_family:
#     - adjacency: true
#       afi: ipv4
#       bfd: true
#       cost:
#         interface_cost: 5
#       dead_interval:
#         time: 5
#       demand_circuit:
#         enable: true
#         ignore: true
#       network:
#         broadcast: true
#       priority: 25
#       process:
#         area_id: '30'
#         id: 10
#       resync_timeout: 10
#       shutdown: true
#       ttl_security:
#         hops: 50
#         set: true
#     - adjacency: true
#       afi: ipv6
#       database_filter: true
#       manet:
#         link_metrics:
#           cost_threshold: 10
#       priority: 55
#       process:
#         area_id: '45'
#         id: 35
#       transmit_delay: 45
#     name: GigabitEthernet0/1
#   - name: GigabitEthernet0/2
#
# commands:
# - interface GigabitEthernet0/2
# - ip ospf 10 area 20
# - ip ospf adjacency stagger disable
# - ip ospf cost 30
# - ip ospf priority 40
# - ip ospf ttl-security hops 50
# - interface GigabitEthernet0/1
# - ipv6 ospf 55 area 105
# - no ipv6 ospf database-filter all out
# - no ipv6 ospf manet peering link-metrics 10
# - ipv6 ospf priority 20
# - ipv6 ospf transmit-delay 30
# - no ip ospf 10 area 30
# - no ip ospf adjacency stagger disable
# - no ip ospf bfd
# - no ip ospf cost 5
# - no ip ospf dead-interval 5
# - no ip ospf demand-circuit ignore
# - no ip ospf network broadcast
# - no ip ospf priority 25
# - no ip ospf resync-timeout 10
# - no ip ospf shutdown
# - no ip ospf ttl-security hops 50
#
# parsed:
#   - name: GigabitEthernet0/0
#   - address_family:
#     - adjacency: true
#       afi: ipv6
#       priority: 20
#       process:
#         area_id: '105'
#         id: 55
#       transmit_delay: 30
#     name: GigabitEthernet0/1
#   - address_family:
#     - adjacency: true
#       afi: ipv4
#       cost:
#         interface_cost: 30
#       priority: 40
#       process:
#         area_id: '20'
#         id: 10
#       ttl_security:
#         hops: 50
#         set: true
#     name: GigabitEthernet0/2
#
# After state:
# -------------
#
# router-ios#sh running-config | section ^interface
# interface GigabitEthernet0/0
# interface GigabitEthernet0/1
#  ipv6 ospf 55 area 105
#  ipv6 ospf priority 20
#  ipv6 ospf transmit-delay 30
#  ipv6 ospf adjacency stagger disable
# interface GigabitEthernet0/2
#  ip ospf priority 40
#  ip ospf adjacency stagger disable
#  ip ospf ttl-security hops 50
#  ip ospf 10 area 20
#  ip ospf cost 30

# Using replaced

# Before state:
# -------------
#
# router-ios#sh running-config | section ^interface
# interface GigabitEthernet0/0
# interface GigabitEthernet0/1
#  ip ospf network broadcast
#  ip ospf resync-timeout 10
#  ip ospf dead-interval 5
#  ip ospf priority 25
#  ip ospf demand-circuit ignore
#  ip ospf bfd
#  ip ospf adjacency stagger disable
#  ip ospf ttl-security hops 50
#  ip ospf shutdown
#  ip ospf 10 area 30
#  ip ospf cost 5
#  ipv6 ospf 35 area 45
#  ipv6 ospf priority 55
#  ipv6 ospf transmit-delay 45
#  ipv6 ospf database-filter all out
#  ipv6 ospf adjacency stagger disable
#  ipv6 ospf manet peering link-metrics 10
# interface GigabitEthernet0/2

- name: Replaced provided OSPF Interfaces configuration
  cisco.ios.ios_ospf_interfaces:
    config:
      - name: GigabitEthernet0/2
        address_family:
          - afi: ipv6
            process:
              id: 55
              area_id: 105
            adjacency: true
            priority: 20
            transmit_delay: 30
    state: replaced

# Task Output:
# ------------
#
# before:
#   - name: GigabitEthernet0/0
#   - address_family:
#     - adjacency: true
#       afi: ipv4
#       bfd: true
#       cost:
#         interface_cost: 5
#       dead_interval:
#         time: 5
#       demand_circuit:
#         enable: true
#         ignore: true
#       network:
#         broadcast: true
#       priority: 25
#       process:
#         area_id: '30'
#         id: 10
#       resync_timeout: 10
#       shutdown: true
#       ttl_security:
#         hops: 50
#         set: true
#     - adjacency: true
#       afi: ipv6
#       database_filter: true
#       manet:
#         link_metrics:
#           cost_threshold: 10
#       priority: 55
#       process:
#         area_id: '45'
#         id: 35
#       transmit_delay: 45
#     name: GigabitEthernet0/1
#   - name: GigabitEthernet0/2
#
# commands:
# - interface GigabitEthernet0/2
# - ipv6 ospf 55 area 105
# - ipv6 ospf adjacency stagger disable
# - ipv6 ospf priority 20
# - ipv6 ospf transmit-delay 30
#
# after:
#   - name: GigabitEthernet0/0
#   - address_family:
#     - adjacency: true
#       afi: ipv4
#       bfd: true
#       cost:
#         interface_cost: 5
#       dead_interval:
#         time: 5
#       demand_circuit:
#         enable: true
#         ignore: true
#       network:
#         broadcast: true
#       priority: 25
#       process:
#         area_id: '30'
#         id: 10
#       resync_timeout: 10
#       shutdown: true
#       ttl_security:
#         hops: 50
#         set: true
#     - adjacency: true
#       afi: ipv6
#       database_filter: true
#       manet:
#         link_metrics:
#           cost_threshold: 10
#       priority: 55
#       process:
#         area_id: '45'
#         id: 35
#       transmit_delay: 45
#     name: GigabitEthernet0/1
#   - address_family:
#     - adjacency: true
#       afi: ipv6
#       priority: 20
#       process:
#         area_id: '105'
#         id: 55
#       transmit_delay: 30
#     name: GigabitEthernet0/2

# After state:
# ------------
# router-ios#sh running-config | section ^interface
# interface GigabitEthernet0/0
# interface GigabitEthernet0/1
#  ip ospf network broadcast
#  ip ospf resync-timeout 10
#  ip ospf dead-interval 5
#  ip ospf priority 25
#  ip ospf demand-circuit ignore
#  ip ospf bfd
#  ip ospf adjacency stagger disable
#  ip ospf ttl-security hops 50
#  ip ospf shutdown
#  ip ospf 10 area 30
#  ip ospf cost 5
#  ipv6 ospf 35 area 45
#  ipv6 ospf priority 55
#  ipv6 ospf transmit-delay 45
#  ipv6 ospf database-filter all out
#  ipv6 ospf adjacency stagger disable
#  ipv6 ospf manet peering link-metrics 10
# interface GigabitEthernet0/2
#  ipv6 ospf 55 area 105
#  ipv6 ospf priority 20
#  ipv6 ospf transmit-delay 30
#  ipv6 ospf adjacency stagger disable

# Using Gathered

# Before state:
# -------------
#
# router-ios#sh running-config | section ^interface
# interface GigabitEthernet0/0
# interface GigabitEthernet0/1
#  ip ospf network broadcast
#  ip ospf resync-timeout 10
#  ip ospf dead-interval 5
#  ip ospf priority 25
#  ip ospf demand-circuit ignore
#  ip ospf bfd
#  ip ospf adjacency stagger disable
#  ip ospf ttl-security hops 50
#  ip ospf shutdown
#  ip ospf 10 area 30
#  ip ospf cost 5
#  ipv6 ospf 35 area 45
#  ipv6 ospf priority 55
#  ipv6 ospf transmit-delay 45
#  ipv6 ospf database-filter all out
#  ipv6 ospf adjacency stagger disable
#  ipv6 ospf manet peering link-metrics 10
# interface GigabitEthernet0/2

- name: Gather OSPF Interfaces provided configurations
  cisco.ios.ios_ospf_interfaces:
    config:
    state: gathered

# Task Output:
# ------------
#
# gathered:
#   - name: GigabitEthernet0/0
#   - address_family:
#     - adjacency: true
#       afi: ipv4
#       bfd: true
#       cost:
#         interface_cost: 5
#       dead_interval:
#         time: 5
#       demand_circuit:
#         enable: true
#         ignore: true
#       network:
#         broadcast: true
#       priority: 25
#       process:
#         area_id: '30'
#         id: 10
#       resync_timeout: 10
#       shutdown: true
#       ttl_security:
#         hops: 50
#         set: true
#     - adjacency: true
#       afi: ipv6
#       database_filter: true
#       manet:
#         link_metrics:
#           cost_threshold: 10
#       priority: 55
#       process:
#         area_id: '45'
#         id: 35
#       transmit_delay: 45
#     name: GigabitEthernet0/1
#   - name: GigabitEthernet0/2

# After state:
# ------------
#
# router-ios#sh running-config | section ^interface
# interface GigabitEthernet0/0
# interface GigabitEthernet0/1
#  ip ospf network broadcast
#  ip ospf resync-timeout 10
#  ip ospf dead-interval 5
#  ip ospf priority 25
#  ip ospf demand-circuit ignore
#  ip ospf bfd
#  ip ospf adjacency stagger disable
#  ip ospf ttl-security hops 50
#  ip ospf shutdown
#  ip ospf 10 area 30
#  ip ospf cost 5
#  ipv6 ospf 35 area 45
#  ipv6 ospf priority 55
#  ipv6 ospf transmit-delay 45
#  ipv6 ospf database-filter all out
#  ipv6 ospf adjacency stagger disable
#  ipv6 ospf manet peering link-metrics 10
# interface GigabitEthernet0/2

# Using Rendered

- name: Render the commands for provided  configuration
  cisco.ios.ios_ospf_interfaces:
    config:
      - name: GigabitEthernet0/1
        address_family:
          - afi: ipv4
            process:
              id: 10
              area_id: 30
            adjacency: true
            bfd: true
            cost:
              interface_cost: 5
            dead_interval:
              time: 5
            demand_circuit:
              ignore: true
            network:
              broadcast: true
            priority: 25
            resync_timeout: 10
            shutdown: true
            ttl_security:
              hops: 50
          - afi: ipv6
            process:
              id: 35
              area_id: 45
            adjacency: true
            database_filter: true
            manet:
              link_metrics:
                cost_threshold: 10
            priority: 55
            transmit_delay: 45
    state: rendered

# Task Output:
# ------------
#
# rendered:
# - interface GigabitEthernet0/1
# - ip ospf 10 area 30
# - ip ospf adjacency stagger disable
# - ip ospf bfd
# - ip ospf cost 5
# - ip ospf dead-interval 5
# - ip ospf demand-circuit ignore
# - ip ospf network broadcast
# - ip ospf priority 25
# - ip ospf resync-timeout 10
# - ip ospf shutdown
# - ip ospf ttl-security hops 50
# - ipv6 ospf 35 area 45
# - ipv6 ospf adjacency stagger disable
# - ipv6 ospf database-filter all out
# - ipv6 ospf manet peering link-metrics 10
# - ipv6 ospf priority 55
# - ipv6 ospf transmit-delay 45
#

# Using Parsed

# File: parsed.cfg
# ----------------
#
# interface GigabitEthernet0/2
# interface GigabitEthernet0/1
#  ip ospf network broadcast
#  ip ospf resync-timeout 10
#  ip ospf dead-interval 5
#  ip ospf priority 25
#  ip ospf demand-circuit ignore
#  ip ospf bfd
#  ip ospf adjacency stagger disable
#  ip ospf ttl-security hops 50
#  ip ospf shutdown
#  ip ospf 10 area 30
#  ip ospf cost 5
#  ipv6 ospf 35 area 45
#  ipv6 ospf priority 55
#  ipv6 ospf transmit-delay 45
#  ipv6 ospf database-filter all out
#  ipv6 ospf adjacency stagger disable
#  ipv6 ospf manet peering link-metrics 10
# interface GigabitEthernet0/0

- name: Parse the provided configuration with the existing running configuration
  cisco.ios.ios_ospf_interfaces:
    running_config: "{{ lookup('file', 'parsed.cfg') }}"
    state: parsed

# Task Output:
# ------------
#
# parsed:
#   - name: GigabitEthernet0/2
#   - address_family:
#     - adjacency: true
#       afi: ipv4
#       bfd: true
#       cost:
#         interface_cost: 5
#       dead_interval:
#         time: 5
#       demand_circuit:
#         enable: true
#         ignore: true
#       network:
#         broadcast: true
#       priority: 25
#       process:
#         area_id: '30'
#         id: 10
#       resync_timeout: 10
#       shutdown: true
#       ttl_security:
#         hops: 50
#         set: true
#     - adjacency: true
#       afi: ipv6
#       database_filter: true
#       manet:
#         link_metrics:
#           cost_threshold: 10
#       priority: 55
#       process:
#         area_id: '45'
#         id: 35
#       transmit_delay: 45
#     name: GigabitEthernet0/1
#   - name: GigabitEthernet0/0

Возвращаемые значения

Общие возвращаемые значения описаны здесь; ниже приведены поля, уникальные для этого модуля:

Ключ

Описание

after

list / elements=string

Конфигурация после выполнения модуля.

Возвращается: если были изменения

Пример: ["This output will always be in the same format as the module argspec.\n"]

before

list / elements=string

Конфигурация до выполнения модуля.

Возвращается: когда state имеет значение merged, replaced, overridden, deleted или purged

Пример: ["This output will always be in the same format as the module argspec.\n"]

commands

list / elements=string

Набор команд, переданных на удалённое устройство.

Возвращается: когда state имеет значение merged, replaced, overridden, deleted или purged

Пример: ["interface GigabitEthernet2", "ip ospf priority 40", "ip ospf adjacency stagger disable"]

gathered

list / elements=string

Сведения о сетевом ресурсе, собранные с удалённого устройства в виде структурированных данных.

Возвращается: когда state имеет значение gathered

Пример: ["This output will always be in the same format as the module argspec.\n"]

parsed

list / elements=string

Исходная конфигурация устройства, заданная в параметре running_config и разобранная в структурированные данные согласно спецификации аргументов модуля.

Возвращается: когда state имеет значение parsed

Пример: ["This output will always be in the same format as the module argspec.\n"]

rendered

list / elements=string

Предоставленная в задаче конфигурация преобразована в собственный формат устройства (автономно).

Возвращается: когда state имеет значение rendered

Пример: ["interface GigabitEthernet2", "ip ospf priority 40", "ip ospf adjacency stagger disable"]

Авторы

  • Sagar Paul (@KB-perByte)
  • Sumit Jaiswal (@justjais)

Ссылки на коллекцию

  • Отслеживание проблем
  • Репозиторий (исходный код)

© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/cisco/ios/ios_ospf_interfaces_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API