Spec-Zone.ru › Ansible 2.11

cisco.nxos.nxos_ospfv2 – Модуль ресурсов OSPFv2

Примечание

Этот плагин входит в коллекцию cisco.nxos (версия 1.4.0).

Для его установки используйте: ansible-galaxy collection install cisco.nxos.

Для использования в книге задач укажите: cisco.nxos.nxos_ospfv2.

Новый в версии 1.0.0: модуля cisco.nxos

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

Обзор

  • Этот модуль управляет конфигурацией OSPFv2 на устройствах, работающих под управлением Cisco NX-OS.

Примечание

У этого модуля есть соответствующий плагин действий.

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
config
словарь
Список конфигураций процесса OSPF.
processes
список / элементы=словарь
Список конфигураций экземпляров OSPF.
areas
список / элементы=словарь
Настройка свойств областей OSPF.
area_id
строка / обязательно
Идентификатор области в виде целого числа или IP-адреса.
authentication
словарь
Настройки аутентификации для области.
message_digest
логическое значение
    Варианты:
  • нет
  • да
Использовать аутентификацию с использованием message-digest.
set
логическое значение
    Варианты:
  • нет
  • да
Установить аутентификацию для области.
default_cost
целое число
Указать значение по умолчанию для LSA обобщённого маршрута.
filter_list
список / элементы=словарь
Фильтровать префиксы между областями OSPF.
direction
строка / обязательно
    Варианты:
  • входящий
  • исходящий
Направление применения карты маршрутизации.
route_map
строка / обязательно
Имя карты маршрутизации.
nssa
словарь
Настройки NSSA для области.
default_information_originate
логическое значение
    Варианты:
  • нет
  • да
Генерировать LSA типа 7 по умолчанию в область NSSA.
no_redistribution
логическое значение
    Варианты:
  • нет
  • да
Не отправлять перераспределённые LSA в область NSSA.
no_summary
логическое значение
    Варианты:
  • нет
  • да
Не отправлять обобщённые LSA в область NSSA.
set
логическое значение
    Варианты:
  • нет
  • да
Настроить область как NSSA.
translate
словарь
Преобразовать LSA.
type7
словарь
Преобразовать из типа 7 в тип 5.
always
логическое значение
    Варианты:
  • нет
  • да
Всегда преобразовывать LSA
never
логическое значение
    Варианты:
  • нет
  • да
Никогда не преобразовывать LSA
supress_fa
логическое значение
    Варианты:
  • нет
  • да
Запретить передачу адреса пересылки в преобразованных LSA.
ranges
список / элементы=словарь
Настроить диапазон адресов для области.
cost
целое число
Стоимость для использования в диапазоне.
not_advertise
логическое значение
    Варианты:
  • нет
  • да
Запретить рекламу указанного диапазона.
prefix
строка / обязательно
IP в формате префикса (x.x.x.x/длина)
stub
словарь
Настройки для настройки области как стоп-зоны.
no_summary
логическое значение
    Варианты:
  • нет
  • да
Запретить ABR отправлять обобщённые LSA в область стоп-зоны.
set
логическое значение
    Варианты:
  • нет
  • да
Настроить область как стоп-зону.
auto_cost
словарь
Вычисление стоимости OSPF в зависимости от пропускной способности.
reference_bandwidth
целое число / обязательно
Базовая пропускная способность, используемая для присваивания стоимости OSPF.
unit
строка / обязательно
    Варианты:
  • Gbps
  • Mbps
Указать единицу измерения базовой пропускной способности.
bfd
логическое значение
    Варианты:
  • нет
  • да
Включить BFD на всех интерфейсах OSPF.
default_information
словарь
Управление распространением маршрутов по умолчанию.
originate
словарь
Распространить маршрут по умолчанию.
always
логическое значение
    Варианты:
  • нет
  • да
Всегда рекламировать маршрут по умолчанию.
route_map
строка
Политика управления распространением маршрутов по умолчанию
set
логическое значение
    Варианты:
  • нет
  • да
Включить распространение маршрута по умолчанию.
default_metric
целое число
Указать метрику по умолчанию для перераспределённых маршрутов.
distance
integer
Настройте административную дистанцию OSPF.
flush_routes
boolean
    Варианты:
  • no
  • yes
Очистить маршруты при неуправляемом перезапуске.
graceful_restart
dictionary
Настроить плавный перезапуск.
grace_period
integer
Настройка максимального интервала для плавного перезапуска.
helper_disable
boolean
    Варианты:
  • no
  • yes
Включить/выключить режим помощника.
set
boolean
    Варианты:
  • no
  • yes
Включить плавный перезапуск.
isolate
boolean
    Варианты:
  • no
  • yes
Изолировать этот маршрутизатор с точки зрения OSPF.
log_adjacency_changes
dictionary
Вести журнал изменений состояния смежности.
detail
boolean
    Варианты:
  • no
  • yes
Уведомлять обо всех изменениях состояния.
log
boolean
    Варианты:
  • no
  • yes
Включить/выключить протоколирование изменений состояния смежности.
max_lsa
dictionary
Функция ограничения количества LSAs, не являющихся самогенерируемыми.
ignore_count
integer
Установить счетчик, сколько раз смежности могут быть подавлены.
ignore_time
integer
Установить время, в течение которого все смежности подавляются.
max_non_self_generated_lsa
integer / required
Установить максимальное количество LSAs, не являющихся самогенерируемыми.
reset_time
integer
Установить количество минут, по истечении которых ignore-count сбрасывается до нуля.
threshold
integer
Пороговое значение (%) при достижении которого генерируется сообщение об ошибке.
warning_only
boolean
    Варианты:
  • no
  • yes
Записывать сообщение об ошибке, когда предел превышен.
max_metric
dictionary
Максимизировать метрику стоимости.
router_lsa
dictionary
Настройка Router LSA.
external_lsa
dictionary
Настройка External LSA.
max_metric_value
integer
Установить максимальное значение метрики для внешних LSAs.
set
boolean
    Варианты:
  • no
  • yes
Установить атрибут external-lsa.
include_stub
boolean
    Варианты:
  • no
  • yes
Рекламировать максимальную метрику и для Stub-связей.
on_startup
dictionary
Эффективно только при запуске.
set
boolean
    Варианты:
  • no
  • yes
Установить атрибут on-startup.
wait_for_bgp_asn
integer
ASN BGP, ожидание которого.
wait_period
integer
Период ожидания в секундах после запуска.
set
boolean
    Варианты:
  • no
  • yes
Установить атрибут router-lsa.
summary_lsa
dictionary
Настройка Summary LSAs.
max_metric_value
integer
Максимальное значение метрики для Summary LSAs.
set
boolean
    Варианты:
  • no
  • yes
Установить атрибут summary-lsa.
maximum_paths
integer
Максимальное количество путей на одну цель.
mpls
dictionary
Настройки OSPF MPLS.
traffic_eng
dictionary
Команды OSPF MPLS Traffic Engineering.
areas
list / elements=dictionary
Список идентификаторов областей.
area_id
string
Идентификатор области как целое число или IP-адрес.
multicast_intact
boolean
    Варианты:
  • no
  • yes
Поддержка MPLS TE multicast.
router_id
string
Идентификатор маршрутизатора, связанный с TE.
name_lookup
boolean
    Варианты:
  • no
  • yes
Отображать идентификаторы маршрутизаторов OSPF в виде имён DNS.
passive_interface
dictionary
Подавить обновления маршрутизации на интерфейсе.
default
boolean
    Варианты:
  • no
  • yes
По умолчанию интерфейсы пассивные.
process_id
string / required
Тег процесса OSPF.
redistribute
list / elements=dictionary
Перераспределение информации от другого протокола маршрутизации.
id
string
Идентификатор указанного протокола.
protocol
string / required
    Варианты:
  • bgp
  • direct
  • eigrp
  • isis
  • lisp
  • ospf
  • rip
  • static
Название протокола.
route_map
string / required
Политика карты маршрутов для ограничения перераспределения.
rfc1583compatibility
boolean
    Варианты:
  • no
  • yes
Настройка совместимости с 1583 для внешних предпочтений путей.
router_id
string
Установить идентификатор маршрутизатора процесса OSPF.
shutdown
boolean
    Варианты:
  • no
  • yes
Отключить экземпляр протокола OSPF.
summary_address
list / elements=dictionary
Настройка сворачивания маршрутов для перераспределения.
not_advertise
boolean
    Варианты:
  • no
  • yes
Прекратить рекламирование указанного сворачивания.
prefix
string / required
Префикс IP-адреса в формате x.x.x.x/ml.
tag
integer
Значение тега из 32-битного целого числа.
table_map
dictionary
Политика фильтрации/модификации маршрутов OSPF перед отправкой в RIB.
filter
boolean
    Варианты:
  • no
  • yes
Заблокировать отправку маршрутов OSPF в RIB.
name
string / required
Имя карты маршрутов.
timers
dictionary
Настройка таймеров, связанных с таймерами.
lsa_arrival
integer
Минимальный интервал между прибытием LSA.
lsa_group_pacing
integer
Интервал обновления/максимального срока действия группы LSA.
throttle
dictionary
Настройка констант, связанных с дросселированием.
lsa
dictionary
Установить ограничение скорости для генерации LSA.
hold_interval
integer
Интервал удержания.
max_interval
integer
Максимальный интервал.
start_interval
integer
Начальный интервал.
spf
dictionary
Установить таймеры SPF OSPF.
initial_spf_delay
integer
Задержка начального расписания SPF в миллисекундах.
max_wait_time
integer
Максимальное время ожидания между расчетами SPF.
min_hold_time
integer
Минимальное время удержания между расчетами SPF.
vrfs
list / elements=dictionary
Настройка настроек OSPF для конкретных VRF.
areas
list / elements=dictionary
Настройка свойств областей OSPF.
area_id
string / required
Идентификатор области как целое число или IP-адрес.
authentication
dictionary
Настройки аутентификации для области.
message_digest
boolean
    Варианты:
  • no
  • yes
Использование аутентификации с помощью message-digest.
set
boolean
    Варианты:
  • no
  • yes
Установить аутентификацию для области.
default_cost
integer
Укажите стоимость по умолчанию для LSA по умолчанию.
filter_list
list / elements=dictionary
Фильтрация префиксов между областями OSPF.
direction
string / required
    Варианты:
  • in
  • out
Направление применения карты маршрутов.
route_map
string / required
Имя карты маршрутов.
nssa
dictionary
Настройки NSSA для области.
END_OF_DOCUMENT_MARKER
default_information_originate
boolean
    Choices:
  • no
  • yes
Указать тип LSA-7 по умолчанию в области NSSA.
no_redistribution
boolean
    Choices:
  • no
  • yes
Не отправлять перераспределённые LSA в область NSSA.
no_summary
boolean
    Choices:
  • no
  • yes
Не отправлять сводные LSA в область NSSA.
set
boolean
    Choices:
  • no
  • yes
Настроить область как NSSA.
translate
dictionary
Перевести LSA.
type7
dictionary
Перевести из типа 7 в тип 5.
always
boolean
    Choices:
  • no
  • yes
Всегда переводить LSA
never
boolean
    Choices:
  • no
  • yes
Никогда не переводить LSA
supress_fa
boolean
    Choices:
  • no
  • yes
Исключить адрес переадресации в переведённых LSA.
ranges
list / elements=dictionary
Настроить диапазон адресов для области.
cost
integer
Стоимость для использования в диапазоне.
not_advertise
boolean
    Choices:
  • no
  • yes
Запретить рекламу указанного диапазона.
prefix
string / required
IP в формате префикса (x.x.x.x/длина)
stub
dictionary
Настройки для настройки области как стоп-области.
no_summary
boolean
    Choices:
  • no
  • yes
Запретить ABR отправлять сводные LSA в стоп-области.
set
boolean
    Choices:
  • no
  • yes
Настроить область как стоп-облость.
auto_cost
dictionary
Вычисление стоимости OSPF в соответствии с пропускной способностью.
reference_bandwidth
integer / required
Базовая пропускная способность, используемая для назначения стоимости OSPF.
unit
string / required
    Choices:
  • Gbps
  • Mbps
Укажите единицы измерения базовой пропускной способности.
bfd
boolean
    Choices:
  • no
  • yes
Включить BFD на всех интерфейсах OSPF.
capability
dictionary
Настройки возможностей OSPF.
vrf_lite
dictionary
Включить настройки возможностей VRF-lite.
evpn
boolean
    Choices:
  • no
  • yes
Ethernet VPN.
set
boolean
    Choices:
  • no
  • yes
Включить поддержку VRF-lite.
default_information
dictionary
Управление распространением маршрутов по умолчанию.
originate
dictionary
Распространение маршрута по умолчанию.
always
boolean
    Choices:
  • no
  • yes
Всегда рекламировать маршрут по умолчанию.
route_map
string
Политика управления распространением маршрутов по умолчанию
set
boolean
    Choices:
  • no
  • yes
Включить распространение маршрута по умолчанию.
default_metric
integer
Указать метрику по умолчанию для перераспределённых маршрутов.
distance
integer
Настроить административную дистанцию OSPF.
down_bit_ignore
boolean
    Choices:
  • no
  • yes
Настроить маршрутизатор PE на игнорирование бита DN для сводных, внешних и NSSA внешних LSA.
graceful_restart
dictionary
Настроить поэтапный перезапуск.
grace_period
integer
Настроить максимальный интервал для поэтапного перезапуска.
helper_disable
boolean
    Варианты:
  • нет
  • да
Включить/выключить режим помощника.
set
boolean
    Варианты:
  • нет
  • да
Включить плавную перезагрузку.
log_adjacency_changes
dictionary
Регистрировать изменения в состоянии смежности.
detail
boolean
    Варианты:
  • нет
  • да
Уведомлять обо всех изменениях состояния.
log
boolean
    Варианты:
  • нет
  • да
Включить/выключить регистрирование изменений в состоянии смежности.
max_lsa
dictionary
Функция ограничения количества LSAs, не являющихся собственными.
ignore_count
integer
Установить количество раз, когда смежности могут быть подавлены.
ignore_time
integer
Установить время, в течение которого все смежности подавлены.
max_non_self_generated_lsa
integer / обязательно
Установить максимальное количество LSAs, не сгенерированных самим маршрутизатором.
reset_time
integer
Установить количество минут, после которых значение ignore-count сбрасывается до нуля.
threshold
integer
Пороговое значение (%) при превышении которого генерируется сообщение об ошибке.
warning_only
boolean
    Варианты:
  • нет
  • да
Записывать сообщение об ошибке, когда предел превышен.
max_metric
dictionary
Максимизировать метрику стоимости.
router_lsa
dictionary
Настройка LSA маршрутизатора.
external_lsa
dictionary
Настройка внешней LSA.
max_metric_value
integer
Установить максимальное значение метрики для внешних LSA.
set
boolean
    Варианты:
  • нет
  • да
Установить атрибут внешней LSA.
include_stub
boolean
    Варианты:
  • нет
  • да
Рекламировать максимальную метрику также для Stub-соединений.
on_startup
dictionary
Действует только при запуске.
set
boolean
    Варианты:
  • нет
  • да
Установить атрибут on-startup.
wait_for_bgp_asn
integer
ASN BGP, который нужно ожидать.
wait_period
integer
Период ожидания в секундах после запуска.
set
boolean
    Варианты:
  • нет
  • да
Установить атрибут router-lsa.
summary_lsa
dictionary
Настройка LSA-резюме.
max_metric_value
integer
Максимальное значение метрики для LSA-резюме.
set
boolean
    Варианты:
  • нет
  • да
Установить атрибут summary-lsa.
maximum_paths
integer
Максимальное количество путей на пункт назначения.
name_lookup
boolean
    Варианты:
  • нет
  • да
Отображать идентификаторы маршрутизаторов OSPF как имена DNS.
passive_interface
dictionary
Подавить обновления маршрутизации на интерфейсе.
default
boolean
    Варианты:
  • нет
  • да
Интерфейсы пассивны по умолчанию.
redistribute
list / elements=dictionary
Перераспределять информацию из другого протокола маршрутизации.
id
string
Идентификатор указанного протокола.
protocol
string / обязательно
    Варианты:
  • bgp
  • direct
  • eigrp
  • isis
  • lisp
  • ospf
  • rip
  • static
Название протокола.
route_map
string / обязательно
Политика карты маршрутов для ограничения перераспределения.
rfc1583compatibility
boolean
    Варианты:
  • нет
  • да
Настройка совместимости с RFC 1583 для внешних предпочтений путей.
router_id
string
Установить идентификатор маршрутизатора процесса OSPF.
shutdown
boolean
    Choices:
  • no
  • yes
Выключить экземпляр протокола OSPF.
summary_address
list / elements=dictionary
Настроить обобщение маршрутов для перераспределения.
not_advertise
boolean
    Choices:
  • no
  • yes
Запретить рекламирование указанного обобщения.
prefix
string / required
IP префикс в формате x.x.x.x/ml.
tag
integer
Значение тега из 32 бит.
table_map
dictionary
Политика фильтрации/модификации маршрутов OSPF перед отправкой в RIB.
filter
boolean
    Choices:
  • no
  • yes
Заблокировать отправку маршрутов OSPF в RIB.
name
string / required
Имя карты маршрутов.
timers
dictionary
Настройка констант, связанных с таймерами.
lsa_arrival
integer
Минимальный интервал между прибытием LSA.
lsa_group_pacing
integer
Интервал обновления/максимальной жизни группы LSA.
throttle
dictionary
Настройка констант, связанных с регулировкой потока.
lsa
dictionary
Установить ограничения скорости для генерации LSA.
hold_interval
integer
Интервал удержания.
max_interval
integer
Максимальный интервал.
start_interval
integer
Начальный интервал.
spf
dictionary
Установить таймеры OSPF SPF.
initial_spf_delay
integer
Задержка начального расписания SPF в миллисекундах.
max_wait_time
integer
Максимальное время ожидания между расчётами SPF.
min_hold_time
integer
Минимальное время удержания между расчётами SPF.
vrf
string / required
Имя/идентификатор VRF.
running_config
string
Этот параметр используется только в состоянии parsed.
Значение этого параметра должно быть выводом, полученным с устройства NX-OS выполнением команды show running-config | section "^router ospf .*".
Состояние parsed считывает конфигурацию из параметра running_config и преобразует её в структурированные данные Ansible в соответствии с argspec модуля ресурса, а затем возвращает значение в ключе parsed в результате.
state
string
    Choices:
  • merged ←
  • replaced
  • overridden
  • deleted
  • gathered
  • parsed
  • rendered
Состояние, в котором должна быть оставлена конфигурация.

Примечания

Примечание

  • Проверено на NX-OS 7.0(3)I5(1).
  • Этот модуль работает с соединениями network_cli и httpapi.

Примеры

# Using merged

# Before state:
# -------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# nxos-9k-rdo#

- name: Merge the provided configuration with the exisiting running configuration
  cisco.nxos.nxos_ospfv2:
    config:
      processes:
      - process_id: 100
        router_id: 203.0.113.20
      - process_id: 102
        router_id: 198.51.100.1
        areas:
        - area_id: 0.0.0.100
          filter_list:
          - route_map: rmap_1
            direction: in
          - route_map: rmap_2
            direction: out
          ranges:
          - prefix: 198.51.100.64/27
            not_advertise: true
          - prefix: 198.51.100.96/27
            cost: 120
        - area_id: 0.0.0.101
          authentication:
            message_digest: true
        redistribute:
        - protocol: eigrp
          id: 120
          route_map: rmap_1
        - protocol: direct
          route_map: ospf102-direct-connect
        vrfs:
        - vrf: zone1
          router_id: 198.51.100.129
          redistribute:
          - protocol: static
            route_map: zone1-static-connect
          summary_address:
          - prefix: 198.51.100.128/27
            tag: 121
          - prefix: 198.51.100.160/27
          areas:
          - area_id: 0.0.0.102
            nssa:
              default_information_originate: true
              no_summary: true
          - area_id: 0.0.0.103
            nssa:
              no_summary: true
              translate:
                type7:
                  always: true
        - vrf: zone2
          auto_cost:
            reference_bandwidth: 45
            unit: Gbps
    state: merged

# Task output
# -------------
# before: {}
#
# commands:
#  - router ospf 102
#  - router-id 198.51.100.1
#  - redistribute eigrp 120 route-map rmap_1
#  - redistribute direct route-map ospf102-direct-connect
#  - area 0.0.0.100 filter-list route-map rmap_1 in
#  - area 0.0.0.100 filter-list route-map rmap_2 out
#  - area 0.0.0.100 range 198.51.100.64/27 not-advertise
#  - area 0.0.0.100 range 198.51.100.96/27 cost 120
#  - area 0.0.0.101 authentication message-digest
#  - vrf zone1
#  - router-id 198.51.100.129
#  - summary-address 198.51.100.128/27 tag 121
#  - summary-address 198.51.100.160/27
#  - redistribute static route-map zone1-static-connect
#  - area 0.0.0.102 nssa no-summary default-information-originate
#  - area 0.0.0.103 nssa no-summary
#  - area 0.0.0.103 nssa translate type7 always
#  - vrf zone2
#  - auto-cost reference-bandwidth 45 Gbps
#  - router ospf 100
#  - router-id 203.0.113.20
#
# after:
#    processes:
#    - process_id: "100"
#      router_id: 203.0.113.20
#    - areas:
#      - area_id: 0.0.0.100
#        filter_list:
#        - direction: out
#          route_map: rmap_2
#        - direction: in
#          route_map: rmap_1
#        ranges:
#        - not_advertise: true
#          prefix: 198.51.100.64/27
#        - cost: 120
#          prefix: 198.51.100.96/27
#      - area_id: 0.0.0.101
#        authentication:
#          message_digest: true
#      process_id: "102"
#      redistribute:
#      - protocol: direct
#        route_map: ospf102-direct-connect
#      - id: "120"
#        protocol: eigrp
#        route_map: rmap_1
#      router_id: 198.51.100.1
#      vrfs:
#      - areas:
#        - area_id: 0.0.0.102
#          nssa:
#            default_information_originate: true
#            no_summary: true
#        - area_id: 0.0.0.103
#          nssa:
#            no_summary: true
#            translate:
#              type7:
#                always: true
#        redistribute:
#        - protocol: static
#          route_map: zone1-static-connect
#        router_id: 198.51.100.129
#        vrf: zone1
#      - auto_cost:
#          reference_bandwidth: 45
#          unit: Gbps
#        vrf: zone2
#

# After state:
# ------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# router ospf 100
#   router-id 203.0.113.20
# router ospf 102
#   router-id 198.51.100.1
#   redistribute direct route-map ospf102-direct-connect
#   redistribute eigrp 120 route-map rmap_1
#   area 0.0.0.100 filter-list route-map rmap_2 out
#   area 0.0.0.100 filter-list route-map rmap_1 in
#   area 0.0.0.100 range 198.51.100.64/27 not-advertise
#   area 0.0.0.100 range 198.51.100.96/27 cost 120
#   area 0.0.0.101 authentication message-digest
#   vrf zone1
#     router-id 198.51.100.129
#     area 0.0.0.102 nssa no-summary default-information-originate
#     area 0.0.0.103 nssa no-summary
#     area 0.0.0.103 nssa translate type7 always
#     redistribute static route-map zone1-static-connect
#     summary-address 198.51.100.128/27 tag 121
#     summary-address 198.51.100.160/27
#   vrf zone2
#     auto-cost reference-bandwidth 45 Gbps

# Using replaced

# Before state:
# ------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# router ospf 100
#   router-id 203.0.113.20
# router ospf 102
#   router-id 198.51.100.1
#   redistribute direct route-map ospf102-direct-connect
#   redistribute eigrp 120 route-map rmap_1
#   area 0.0.0.100 filter-list route-map rmap_2 out
#   area 0.0.0.100 filter-list route-map rmap_1 in
#   area 0.0.0.100 range 198.51.100.64/27 not-advertise
#   area 0.0.0.100 range 198.51.100.96/27 cost 120
#   area 0.0.0.101 authentication message-digest
#   vrf zone1
#     router-id 198.51.100.129
#     area 0.0.0.102 nssa no-summary default-information-originate
#     area 0.0.0.103 nssa no-summary
#     area 0.0.0.103 nssa translate type7 always
#     redistribute static route-map zone1-static-connect
#     summary-address 198.51.100.128/27 tag 121
#     summary-address 198.51.100.160/27
#   vrf zone2
#     auto-cost reference-bandwidth 45 Gbps

- name: Replace device configurations of listed OSPF processes with provided configurations
  cisco.nxos.nxos_ospfv2:
    config:
      processes:
      - process_id: 102
        router_id: 198.51.100.1
        areas:
        - area_id: 0.0.0.100
          filter_list:
          - route_map: rmap_8
            direction: in
          ranges:
          - prefix: 198.51.100.64/27
            not_advertise: true
        - area_id: 0.0.0.101
          stub:
            no_summary: true
        redistribute:
        - protocol: eigrp
          id: 130
          route_map: rmap_1
        - protocol: direct
          route_map: ospf102-direct-connect
        vrfs:
        - vrf: zone1
          router_id: 198.51.100.129
          redistribute:
          - protocol: bgp
            id: 65563
            route_map: zone1-bgp-connect
          areas:
          - area_id: 0.0.0.102
            nssa:
              default_information_originate: true
              no_summary: true
    state: replaced

# Task output
# -------------
# before:
#    processes:
#    - process_id: "100"
#      router_id: 203.0.113.20
#    - areas:
#      - area_id: 0.0.0.100
#        filter_list:
#        - direction: out
#          route_map: rmap_2
#        - direction: in
#          route_map: rmap_1
#        ranges:
#        - not_advertise: true
#          prefix: 198.51.100.64/27
#        - cost: 120
#          prefix: 198.51.100.96/27
#      - area_id: 0.0.0.101
#        authentication:
#          message_digest: true
#      process_id: "102"
#      redistribute:
#      - protocol: direct
#        route_map: ospf102-direct-connect
#      - id: "120"
#        protocol: eigrp
#        route_map: rmap_1
#      router_id: 198.51.100.1
#      vrfs:
#      - areas:
#        - area_id: 0.0.0.102
#          nssa:
#            default_information_originate: true
#            no_summary: true
#        - area_id: 0.0.0.103
#          nssa:
#            no_summary: true
#            translate:
#              type7:
#                always: true
#        redistribute:
#        - protocol: static
#          route_map: zone1-static-connect
#        router_id: 198.51.100.129
#        vrf: zone1
#      - auto_cost:
#          reference_bandwidth: 45
#          unit: Gbps
#        vrf: zone2
#
#  commands:
#  - router ospf 102
#  - redistribute eigrp 130 route-map rmap_1
#  - no redistribute eigrp 120 route-map rmap_1
#  - area 0.0.0.100 filter-list route-map rmap_8 in
#  - no area 0.0.0.100 filter-list route-map rmap_2 out
#  - no area 0.0.0.100 range 198.51.100.96/27
#  - no area 0.0.0.101 authentication
#  - area 0.0.0.101 stub no-summary
#  - vrf zone1
#  - no summary-address 198.51.100.128/27 tag 121
#  - no summary-address 198.51.100.160/27
#  - redistribute bgp 65563 route-map zone1-bgp-connect
#  - no redistribute static route-map zone1-static-connect
#  - no area 0.0.0.103 nssa
#  - no area 0.0.0.103 nssa translate type7 always
#  - no vrf zone2
#
# after:
#    processes:
#    - process_id: "100"
#      router_id: 203.0.113.20
#    - areas:
#      - area_id: 0.0.0.101
#        stub:
#          no_summary: true
#      - area_id: 0.0.0.100
#        filter_list:
#        - direction: in
#          route_map: rmap_8
#        ranges:
#        - not_advertise: true
#          prefix: 198.51.100.64/27
#      process_id: "102"
#      redistribute:
#      - protocol: direct
#        route_map: ospf102-direct-connect
#      - id: "130"
#        protocol: eigrp
#        route_map: rmap_1
#      router_id: 198.51.100.1
#      vrfs:
#      - areas:
#        - area_id: 0.0.0.102
#          nssa:
#            default_information_originate: true
#            no_summary: true
#        redistribute:
#        - id: "65563"
#          protocol: bgp
#          route_map: zone1-bgp-connect
#        router_id: 198.51.100.129
#        vrf: zone1

# After state:
# ------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# router ospf 100
#   router-id 203.0.113.20
# router ospf 102
#   router-id 198.51.100.1
#   area 0.0.0.101 stub no-summary
#   redistribute direct route-map ospf102-direct-connect
#   redistribute eigrp 130 route-map rmap_1
#   area 0.0.0.100 filter-list route-map rmap_8 in
#   area 0.0.0.100 range 198.51.100.64/27 not-advertise
#   vrf zone1
#     router-id 198.51.100.129
#     area 0.0.0.102 nssa no-summary default-information-originate
#     redistribute bgp 65563 route-map zone1-bgp-connect

# Using overridden

# Before state:
# ------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# router ospf 100
#   router-id 203.0.113.20
# router ospf 102
#   router-id 198.51.100.1
#   redistribute direct route-map ospf102-direct-connect
#   redistribute eigrp 120 route-map rmap_1
#   area 0.0.0.100 filter-list route-map rmap_2 out
#   area 0.0.0.100 filter-list route-map rmap_1 in
#   area 0.0.0.100 range 198.51.100.64/27 not-advertise
#   area 0.0.0.100 range 198.51.100.96/27 cost 120
#   area 0.0.0.101 authentication message-digest
#   vrf zone1
#     router-id 198.51.100.129
#     area 0.0.0.102 nssa no-summary default-information-originate
#     area 0.0.0.103 nssa no-summary
#     area 0.0.0.103 nssa translate type7 always
#     redistribute static route-map zone1-static-connect
#     summary-address 198.51.100.128/27 tag 121
#     summary-address 198.51.100.160/27
#   vrf zone2
#     auto-cost reference-bandwidth 45 Gbps

- name: Overridde all OSPF configuration with provided configuration
  cisco.nxos.nxos_ospfv2:
    config:
      processes:
      - process_id: 104
        router_id: 203.0.113.20
      - process_id: 102
        router_id: 198.51.100.1
        shutdown: true
    state: overridden

# Task output
# -------------
# before:
#    processes:
#    - process_id: "100"
#      router_id: 203.0.113.20
#    - areas:
#      - area_id: 0.0.0.100
#        filter_list:
#        - direction: out
#          route_map: rmap_2
#        - direction: in
#          route_map: rmap_1
#        ranges:
#        - not_advertise: true
#          prefix: 198.51.100.64/27
#        - cost: 120
#          prefix: 198.51.100.96/27
#      - area_id: 0.0.0.101
#        authentication:
#          message_digest: true
#      process_id: "102"
#      redistribute:
#      - protocol: direct
#        route_map: ospf102-direct-connect
#      - id: "120"
#        protocol: eigrp
#        route_map: rmap_1
#      router_id: 198.51.100.1
#      vrfs:
#      - areas:
#        - area_id: 0.0.0.102
#          nssa:
#            default_information_originate: true
#            no_summary: true
#        - area_id: 0.0.0.103
#          nssa:
#            no_summary: true
#            translate:
#              type7:
#                always: true
#        redistribute:
#        - protocol: static
#          route_map: zone1-static-connect
#        router_id: 198.51.100.129
#        vrf: zone1
#      - auto_cost:
#          reference_bandwidth: 45
#          unit: Gbps
#        vrf: zone2
#
# commands:
#  - no router ospf 100
#  - router ospf 104
#  - router-id 203.0.113.20
#  - router ospf 102
#  - shutdown
#  - no redistribute direct route-map ospf102-direct-connect
#  - no redistribute eigrp 120 route-map rmap_1
#  - no area 0.0.0.100 filter-list route-map rmap_2 out
#  - no area 0.0.0.100 filter-list route-map rmap_1 in
#  - no area 0.0.0.100 range 198.51.100.64/27
#  - no area 0.0.0.100 range 198.51.100.96/27
#  - no area 0.0.0.101 authentication
#  - no vrf zone1
#  - no vrf zone2
#
# after:
#    processes:
#    - process_id: "102"
#      router_id: 198.51.100.1
#      shutdown: true
#    - process_id: "104"
#      router_id: 203.0.113.20

# After state:
# ------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# router ospf 102
#   router-id 198.51.100.1
#   shutdown
# router ospf 104
#   router-id 203.0.113.20

# Using deleted to delete a single OSPF process

# Before state:
# ------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# router ospf 100
#   router-id 203.0.113.20
# router ospf 102
#   router-id 198.51.100.1
#   redistribute direct route-map ospf102-direct-connect
#   redistribute eigrp 120 route-map rmap_1
#   area 0.0.0.100 filter-list route-map rmap_2 out
#   area 0.0.0.100 filter-list route-map rmap_1 in
#   area 0.0.0.100 range 198.51.100.64/27 not-advertise
#   area 0.0.0.100 range 198.51.100.96/27 cost 120
#   area 0.0.0.101 authentication message-digest
#   vrf zone1
#     router-id 198.51.100.129
#     area 0.0.0.102 nssa no-summary default-information-originate
#     area 0.0.0.103 nssa no-summary
#     area 0.0.0.103 nssa translate type7 always
#     redistribute static route-map zone1-static-connect
#     summary-address 198.51.100.128/27 tag 121
#     summary-address 198.51.100.160/27
#   vrf zone2
#     auto-cost reference-bandwidth 45 Gbps

- name: Delete a single OSPF process
  cisco.nxos.nxos_ospfv2:
    config:
      processes:
      - process_id: 102
    state: deleted

# Task output
# -------------
# before:
#    processes:
#    - process_id: "100"
#      router_id: 203.0.113.20
#    - areas:
#      - area_id: 0.0.0.100
#        filter_list:
#        - direction: out
#          route_map: rmap_2
#        - direction: in
#          route_map: rmap_1
#        ranges:
#        - not_advertise: true
#          prefix: 198.51.100.64/27
#        - cost: 120
#          prefix: 198.51.100.96/27
#      - area_id: 0.0.0.101
#        authentication:
#          message_digest: true
#      process_id: "102"
#      redistribute:
#      - protocol: direct
#        route_map: ospf102-direct-connect
#      - id: "120"
#        protocol: eigrp
#        route_map: rmap_1
#      router_id: 198.51.100.1
#      vrfs:
#      - areas:
#        - area_id: 0.0.0.102
#          nssa:
#            default_information_originate: true
#            no_summary: true
#        - area_id: 0.0.0.103
#          nssa:
#            no_summary: true
#            translate:
#              type7:
#                always: true
#        redistribute:
#        - protocol: static
#          route_map: zone1-static-connect
#        router_id: 198.51.100.129
#        vrf: zone1
#      - auto_cost:
#          reference_bandwidth: 45
#          unit: Gbps
#        vrf: zone2
#
# commands:
#  - no router ospf 102
#
# after:
#   processes:
#   - process_id: "100"
#     router_id: 203.0.113.20

# After state:
# ------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# router ospf 100
#   router-id 203.0.113.20

# Using deleted all OSPF processes from the device

# Before state:
# ------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# router ospf 100
#   router-id 203.0.113.20
# router ospf 102
#   router-id 198.51.100.1
#   redistribute direct route-map ospf102-direct-connect
#   redistribute eigrp 120 route-map rmap_1
#   area 0.0.0.100 filter-list route-map rmap_2 out
#   area 0.0.0.100 filter-list route-map rmap_1 in
#   area 0.0.0.100 range 198.51.100.64/27 not-advertise
#   area 0.0.0.100 range 198.51.100.96/27 cost 120
#   area 0.0.0.101 authentication message-digest
#   vrf zone1
#     router-id 198.51.100.129
#     area 0.0.0.102 nssa no-summary default-information-originate
#     area 0.0.0.103 nssa no-summary
#     area 0.0.0.103 nssa translate type7 always
#     redistribute static route-map zone1-static-connect
#     summary-address 198.51.100.128/27 tag 121
#     summary-address 198.51.100.160/27
#   vrf zone2
#     auto-cost reference-bandwidth 45 Gbps

- name: Delete all OSPF processes from the device
  cisco.nxos.nxos_ospfv2:
    state: deleted

# Task output
# -------------
# before:
#    processes:
#    - process_id: "100"
#      router_id: 203.0.113.20
#    - areas:
#      - area_id: 0.0.0.100
#        filter_list:
#        - direction: out
#          route_map: rmap_2
#        - direction: in
#          route_map: rmap_1
#        ranges:
#        - not_advertise: true
#          prefix: 198.51.100.64/27
#        - cost: 120
#          prefix: 198.51.100.96/27
#      - area_id: 0.0.0.101
#        authentication:
#          message_digest: true
#      process_id: "102"
#      redistribute:
#      - protocol: direct
#        route_map: ospf102-direct-connect
#      - id: "120"
#        protocol: eigrp
#        route_map: rmap_1
#      router_id: 198.51.100.1
#      vrfs:
#      - areas:
#        - area_id: 0.0.0.102
#          nssa:
#            default_information_originate: true
#            no_summary: true
#        - area_id: 0.0.0.103
#          nssa:
#            no_summary: true
#            translate:
#              type7:
#                always: true
#        redistribute:
#        - protocol: static
#          route_map: zone1-static-connect
#        router_id: 198.51.100.129
#        vrf: zone1
#      - auto_cost:
#          reference_bandwidth: 45
#          unit: Gbps
#        vrf: zone2
#
# commands:
#  - no router ospf 100
#  - no router ospf 102
#
#  after: {}

# After state:
# ------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# nxos-9k-rdo#

# Using rendered

- name: Render platform specific configuration lines (without connecting to the device)
  cisco.nxos.nxos_ospfv2:
    config:
      processes:
      - process_id: 100
        router_id: 203.0.113.20
      - process_id: 102
        router_id: 198.51.100.1
        areas:
        - area_id: 0.0.0.100
          filter_list:
          - route_map: rmap_1
            direction: in
          - route_map: rmap_2
            direction: out
          ranges:
          - prefix: 198.51.100.64/27
            not_advertise: true
          - prefix: 198.51.100.96/27
            cost: 120
        - area_id: 0.0.0.101
          authentication:
            message_digest: true
        redistribute:
        - protocol: eigrp
          id: 120
          route_map: rmap_1
        - protocol: direct
          route_map: ospf102-direct-connect
        vrfs:
        - vrf: zone1
          router_id: 198.51.100.129
          redistribute:
          - protocol: static
            route_map: zone1-static-connect
          summary_address:
          - prefix: 198.51.100.128/27
            tag: 121
          - prefix: 198.51.100.160/27
          areas:
          - area_id: 0.0.0.102
            nssa:
              default_information_originate: true
              no_summary: true
          - area_id: 0.0.0.103
            nssa:
              no_summary: true
              translate:
                type7:
                  always: true
        - vrf: zone2
          auto_cost:
            reference_bandwidth: 45
            unit: Gbps
    state: rendered

# Task Output (redacted)
# -----------------------
# rendered:
#  - router ospf 100
#  - router-id 203.0.113.20
#  - router ospf 102
#  - router-id 198.51.100.1
#  - redistribute eigrp 120 route-map rmap_1
#  - redistribute direct route-map ospf102-direct-connect
#  - area 0.0.0.100 filter-list route-map rmap_1 in
#  - area 0.0.0.100 filter-list route-map rmap_2 out
#  - area 0.0.0.100 range 198.51.100.64/27 not-advertise
#  - area 0.0.0.100 range 198.51.100.96/27 cost 120
#  - area 0.0.0.101 authentication message-digest
#  - vrf zone1
#  - router-id 198.51.100.129
#  - summary-address 198.51.100.128/27 tag 121
#  - summary-address 198.51.100.160/27
#  - redistribute static route-map zone1-static-connect
#  - area 0.0.0.102 nssa no-summary default-information-originate
#  - area 0.0.0.103 nssa no-summary
#  - area 0.0.0.103 nssa translate type7 always
#  - vrf zone2
#  - auto-cost reference-bandwidth 45 Gbps

# Using parsed

# parsed.cfg
# ------------
# router ospf 100
#   router-id 192.0.100.1
#   area 0.0.0.101 nssa no-summary no-redistribution
#   area 0.0.0.102 stub no-summary
#   redistribute direct route-map ospf-direct-connect
#   redistribute eigrp 120 route-map rmap_1
#   area 0.0.0.100 filter-list route-map rmap_2 out
#   area 0.0.0.100 filter-list route-map rmap_1 in
#   area 0.0.0.100 range 192.0.2.0/24 not-advertise
#   area 0.0.0.100 range 192.0.3.0/24 cost 120
#   area 0.0.0.100 authentication message-digest
#   vrf zone1
#     router-id 192.0.100.2
#     area 0.0.100.1 nssa no-summary no-redistribution
#     redistribute static route-map zone1-direct-connect
#     summary-address 10.0.0.0/24 tag 120
#     summary-address 11.0.0.0/24 not-advertise
#   vrf zone2
#     auto-cost reference-bandwidth 45 Gbps
#     down-bit-ignore
#     capability vrf-lite evpn
#     shutdown
# router ospf 102
#   router-id 198.54.100.1
#   shutdown
#   vrf zone2
#     summary-address 192.0.8.0/24 tag 120
#   vrf zone4
#     shutdown

- name: Parse externally provided OSPFv2 config
  cisco.nxos.nxos_ospfv2:
    running_config: "{{ lookup('file', 'ospfv2.cfg') }}"
    state: parsed

# Task output (redacted)
# -----------------------
# parsed:
#   processes:
#   - process_id: "100"
#     areas:
#       - area_id: 0.0.0.101
#         nssa:
#           no_redistribution: true
#           no_summary: true
#       - area_id: 0.0.0.102
#         stub:
#           no_summary: true
#       - area_id: 0.0.0.100
#         authentication:
#           message_digest: true
#         filter_list:
#           - direction: out
#             route_map: rmap_2
#           - direction: in
#             route_map: rmap_1
#         ranges:
#           - not_advertise: true
#             prefix: 192.0.2.0/24
#           - cost: 120
#             prefix: 192.0.3.0/24
#     redistribute:
#       - protocol: direct
#         route_map: ospf-direct-connect
#       - id: "120"
#         protocol: eigrp
#         route_map: rmap_1
#     router_id: 192.0.100.1
#     vrfs:
#       - vrf: zone1
#         areas:
#           - area_id: 0.0.100.1
#             nssa:
#               no_redistribution: true
#               no_summary: true
#         redistribute:
#           - protocol: static
#             route_map: zone1-direct-connect
#         router_id: 192.0.100.2
#         summary_address:
#           - prefix: 10.0.0.0/24
#             tag: 120
#           - not_advertise: true
#             prefix: 11.0.0.0/24
#       - vrf: zone2
#         auto_cost:
#           reference_bandwidth: 45
#           unit: Gbps
#         capability:
#           vrf_lite:
#             evpn: true
#         down_bit_ignore: true
#         shutdown: true
#   - process_id: "102"
#     router_id: 198.54.100.1
#     shutdown: true
#     vrfs:
#       - vrf: zone2
#         summary_address:
#           - prefix: 192.0.8.0/24
#             tag: 120
#       - vrf: zone4
#         shutdown: true

# Using gathered

- name: Gather OSPFv2 facts using gathered
  cisco.nxos.nxos_ospfv2:
    state: gathered

# Task output (redacted)
# -----------------------
#  gathered:
#    processes:
#      - process_id: "102"
#        areas:
#          - area_id: 0.0.0.101
#            stub:
#              no_summary: true
#          - area_id: 0.0.0.100
#            filter_list:
#              - direction: in
#                route_map: rmap_8
#            ranges:
#              - not_advertise: true
#                prefix: 198.51.100.64/27
#        redistribute:
#          - protocol: direct
#            route_map: ospf102-direct-connect
#          - id: "130"
#            protocol: eigrp
#            route_map: rmap_1
#        router_id: 198.51.100.1
#        vrfs:
#          - vrf: zone1
#            areas:
#              - area_id: 0.0.0.102
#                nssa:
#                  default_information_originate: true
#                  no_summary: true
#            redistribute:
#             - id: "65563"
#               protocol: bgp
#               route_map: zone1-bgp-connect
#            router_id: 198.51.100.129
#

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

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

Ключ Возвращаемое Описание
after
dictionary
при изменении
Результат вызова модели конфигурации.

Пример:
Возвращаемая конфигурация всегда будет в том же формате, что и параметры выше.
before
dictionary
всегда
Конфигурация до вызова модели.

Пример:
Возвращаемая конфигурация всегда будет в том же формате, что и параметры выше.
commands
list / elements=string
всегда
Набор команд, отправленных на удалённое устройство.

Пример:
['router ospf 102', 'router-id 198.54.100.1', 'router ospf 100', 'router-id 192.0.100.1', 'redistribute eigrp 120 route-map rmap_1', 'redistribute direct route-map ospf-direct-connect', 'area 0.0.0.100 filter-list route-map rmap_1 in', 'area 0.0.0.100 filter-list route-map rmap_2 out', 'area 0.0.0.100 range 192.0.2.0/24 not-advertise', 'area 0.0.0.100 range 192.0.3.0/24 cost 120', 'vrf zone1', 'router-id 192.0.100.2', 'summary-address 10.0.0.0/24 tag 121', 'summary-address 11.0.0.0/24', 'redistribute static route-map zone1-direct-connect', 'vrf zone2', 'auto-cost reference-bandwidth 45 Gbps', 'capability vrf-lite evpn']


Авторы

  • Nilashish Chakraborty (@NilashishC)

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/cisco/nxos/nxos_ospfv2_module.html

Spec-Zone.ru

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