Spec-Zone.ru › Ansible

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

Примечание

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

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

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

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

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

  • Краткое описание
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Краткое описание

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

Примечание

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

Псевдонимы: ospfv2

Параметры

Параметр

Комментарии

config

dictionary

Список конфигураций процессов OSPF.

processes

list / elements=dictionary

Список конфигураций экземпляров OSPF.

areas

list / elements=dictionary

Настройка свойств областей OSPF.

area_id

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

Идентификатор области в формате IP-адреса.

authentication

dictionary

Параметры аутентификации для области.

message_digest

boolean

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

Варианты:

  • false
  • true

set

boolean

Включить аутентификацию для области.

Варианты:

  • false
  • true

default_cost

integer

Указать стоимость по умолчанию для суммарного LSA по умолчанию.

filter_list

list / elements=dictionary

Фильтрация префиксов между областями OSPF.

direction

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

Направление применения карты маршрутизации.

Варианты:

  • "in"
  • "out"

route_map

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

Имя карты маршрутизации.

nssa

dictionary

Параметры NSSA для области.

default_information_originate

boolean

Создавать LSA типа 7 по умолчанию в области NSSA.

Варианты:

  • false
  • true

no_redistribution

boolean

Не отправлять перераспределяемые LSA в область NSSA.

Варианты:

  • false
  • true

no_summary

boolean

Не отправлять суммарные LSA в область NSSA.

Варианты:

  • false
  • true

set

boolean

Настроить область как NSSA.

Варианты:

  • false
  • true

translate

dictionary

Преобразование LSA.

type7

dictionary

Преобразование из типа 7 в тип 5.

always

boolean

Всегда преобразовывать LSA

Варианты:

  • false
  • true

never

boolean

Никогда не преобразовывать LSA

Варианты:

  • false
  • true

supress_fa

boolean

Подавлять адрес пересылки в преобразованных LSA.

Варианты:

  • false
  • true

ranges

list / elements=dictionary

Настроить диапазон адресов для области.

cost

integer

Стоимость, используемая для диапазона.

not_advertise

boolean

Запретить анонсирование указанного диапазона.

Варианты:

  • false
  • true

prefix

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

IP-адрес в формате префикса (x.x.x.x/len)

stub

dictionary

Параметры настройки области как тупиковой.

no_summary

boolean

Запретить ABR отправлять суммарные LSA в тупиковую область.

Варианты:

  • false
  • true

set

boolean

Настроить область как тупиковую.

Варианты:

  • false
  • true

auto_cost

dictionary

Вычислять стоимость OSPF в соответствии с пропускной способностью.

reference_bandwidth

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

Эталонная пропускная способность, используемая для назначения стоимости OSPF.

unit

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

Указать единицу измерения эталонной пропускной способности.

Варианты:

  • "Gbps"
  • "Mbps"

bfd

boolean

Включить BFD на всех интерфейсах OSPF.

Варианты:

  • false
  • true

default_information

dictionary

Управление распространением маршрутов по умолчанию.

originate

dictionary

Распространять маршрут по умолчанию.

always

boolean

Всегда анонсировать маршрут по умолчанию.

Варианты:

  • false
  • true

route_map

string

Политика управления распространением маршрутов по умолчанию

set

boolean

Включить распространение маршрута по умолчанию.

Варианты:

  • false
  • true

default_metric

integer

Указать метрику по умолчанию для перераспределяемых маршрутов.

distance

integer

Настроить административное расстояние OSPF.

flush_routes

boolean

Удалять маршруты при контролируемом перезапуске без сохранения состояния.

Варианты:

  • false
  • true

graceful_restart

dictionary

Настроить корректный перезапуск.

grace_period

integer

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

helper_disable

boolean

Включить/отключить вспомогательный режим.

Варианты:

  • false
  • true

set

boolean

Включить корректный перезапуск.

Варианты:

  • false
  • true

isolate

boolean

Изолировать этот маршрутизатор с точки зрения OSPF.

Варианты:

  • false
  • true

log_adjacency_changes

dictionary

Вести журнал изменений состояния смежности.

detail

boolean

Уведомлять обо всех изменениях состояния.

Варианты:

  • false
  • true

log

boolean

Включить/отключить ведение журнала изменений состояния смежности.

Варианты:

  • false
  • true

max_lsa

dictionary

Функция ограничения количества LSA, созданных не самим устройством.

ignore_count

integer

Задать количество раз, когда смежности могут быть подавлены.

ignore_time

integer

Задать время, в течение которого подавляются все смежности.

max_non_self_generated_lsa

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

Задать максимальное количество LSA, созданных не самим устройством.

reset_time

integer

Задать количество минут, по истечении которых ignore-count сбрасывается до нуля.

threshold

integer

Пороговое значение (%) для генерации предупреждения.

warning_only

boolean

Записывать предупреждение в журнал при превышении ограничения.

Варианты:

  • false
  • true

max_metric

dictionary

Максимизировать метрику стоимости.

router_lsa

dictionary

Конфигурация LSA маршрутизатора.

external_lsa

dictionary

Конфигурация внешнего LSA.

max_metric_value

integer

Задать максимальное значение метрики для внешних LSA.

set

boolean

Установить атрибут external-lsa.

Варианты:

  • false
  • true

include_stub

boolean

Также анонсировать максимальную метрику для тупиковых каналов.

Варианты:

  • false
  • true

on_startup

dictionary

Действует только при запуске.

set

boolean

Установить атрибут on-startup.

Варианты:

  • false
  • true

wait_for_bgp_asn

integer

ASN BGP, которого нужно дождаться.

wait_period

integer

Период ожидания в секундах после запуска.

set

boolean

Установить атрибут router-lsa.

Варианты:

  • false
  • true

summary_lsa

dictionary

Настройки сводных LSA.

max_metric_value

integer

Максимальное значение метрики для сводных LSA.

set

boolean

Установить атрибут summary-lsa.

Варианты:

  • false
  • true

maximum_paths

integer

Максимальное количество маршрутов к каждому месту назначения.

mpls

dictionary

Параметры конфигурации MPLS для OSPF.

traffic_eng

dictionary

Команды Traffic Engineering для MPLS в OSPF.

areas

list / elements=dictionary

Список идентификаторов областей.

area_id

string

Идентификатор области в формате IP-адреса.

multicast_intact

boolean

Поддержка многоадресной рассылки MPLS TE.

Варианты:

  • false
  • true

router_id

string

Идентификатор маршрутизатора, связанный с TE.

name_lookup

boolean

Отображать идентификаторы маршрутизаторов OSPF как DNS-имена.

Варианты:

  • false
  • true

passive_interface

dictionary

Отключить обновления маршрутизации на интерфейсе.

default

boolean

Интерфейсы пассивны по умолчанию.

Варианты:

  • false
  • true

process_id

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

Тег процесса OSPF.

redistribute

list / elements=dictionary

Перераспределение информации из другого протокола маршрутизации.

id

string

Идентификатор указанного протокола.

protocol

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

Название протокола.

Варианты:

  • "bgp"
  • "direct"
  • "eigrp"
  • "isis"
  • "lisp"
  • "ospf"
  • "rip"
  • "static"

route_map

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

Политика route map для ограничения перераспределения.

rfc1583compatibility

boolean

Настроить совместимость с RFC 1583 для предпочтений внешних маршрутов.

Варианты:

  • false
  • true

router_id

string

Задать router-id процесса OSPF.

shutdown

boolean

Отключить экземпляр протокола OSPF.

Варианты:

  • false
  • true

summary_address

list / elements=dictionary

Настроить суммирование маршрутов для перераспределения.

not_advertise

boolean

Не объявлять указанную сводку.

Варианты:

  • false
  • true

prefix

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

Префикс IP в формате x.x.x.x/ml.

tag

integer

32-разрядное значение тега.

table_map

dictionary

Политика фильтрации/изменения маршрутов OSPF перед их отправкой в RIB.

filter

boolean

Блокировать отправку маршрутов OSPF в RIB.

Варианты:

  • false
  • true

name

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

Название Route Map.

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 / обязательный

Идентификатор области в формате IP-адреса.

authentication

dictionary

Параметры аутентификации области.

message_digest

boolean

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

Варианты:

  • false
  • true

set

boolean

Настроить аутентификацию для области.

Варианты:

  • false
  • true

default_cost

integer

Указать стоимость по умолчанию для сводной LSA маршрута по умолчанию.

filter_list

list / elements=dictionary

Фильтровать префиксы между областями OSPF.

direction

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

Направление применения route map.

Варианты:

  • "in"
  • "out"

route_map

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

Название Route Map.

nssa

dictionary

Параметры NSSA для области.

default_information_originate

boolean

Создавать маршрут по умолчанию Type 7 LSA в области NSSA.

Варианты:

  • false
  • true

no_redistribution

boolean

Не отправлять перераспределённые LSA в область NSSA.

Варианты:

  • false
  • true

no_summary

boolean

Не отправлять сводные LSA в область NSSA.

Варианты:

  • false
  • true

set

boolean

Настроить область как NSSA.

Варианты:

  • false
  • true

translate

dictionary

Преобразовать LSA.

type7

dictionary

Преобразовать Type 7 в Type 5.

always

boolean

Всегда преобразовывать LSA.

Варианты:

  • false
  • true

never

boolean

Никогда не преобразовывать LSA.

Варианты:

  • false
  • true

supress_fa

boolean

Исключить адрес пересылки из преобразованных LSA.

Варианты:

  • false
  • true

ranges

list / elements=dictionary

Настройка диапазона адресов для области.

cost

integer

Стоимость, используемая для диапазона.

not_advertise

boolean

Запретить анонсирование указанного диапазона.

Варианты:

  • false
  • true

prefix

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

IP-адрес в формате префикса (x.x.x.x/len)

stub

dictionary

Параметры настройки области как тупиковой.

no_summary

boolean

Запретить ABR отправлять сводные LSA в тупиковую область.

Варианты:

  • false
  • true

set

boolean

Настроить область как тупиковую.

Варианты:

  • false
  • true

auto_cost

dictionary

Вычислять стоимость OSPF в соответствии с пропускной способностью.

reference_bandwidth

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

Эталонная пропускная способность, используемая для назначения стоимости OSPF.

unit

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

Указать единицу измерения эталонной пропускной способности.

Варианты:

  • "Gbps"
  • "Mbps"

bfd

boolean

Включить BFD на всех интерфейсах OSPF.

Варианты:

  • false
  • true

capability

dictionary

Параметры возможностей OSPF.

vrf_lite

dictionary

Включить параметры поддержки VRF-lite.

evpn

boolean

Ethernet VPN.

Варианты:

  • false
  • true

set

boolean

Включить поддержку VRF-lite.

Варианты:

  • false
  • true

default_information

dictionary

Управление распространением маршрутов по умолчанию.

originate

dictionary

Распространять маршрут по умолчанию.

always

boolean

Всегда анонсировать маршрут по умолчанию.

Варианты:

  • false
  • true

route_map

string

Политика управления распространением маршрутов по умолчанию

set

boolean

Включить распространение маршрута по умолчанию.

Варианты:

  • false
  • true

default_metric

integer

Указать метрику по умолчанию для перераспределяемых маршрутов.

distance

integer

Настроить административное расстояние OSPF.

down_bit_ignore

boolean

Настроить маршрутизатор PE так, чтобы он игнорировал бит DN в сетевых сводных, внешних и внешних NSSA LSA.

Варианты:

  • false
  • true

graceful_restart

dictionary

Настроить плавный перезапуск.

grace_period

integer

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

helper_disable

boolean

Включить/отключить режим помощника.

Варианты:

  • false
  • true

set

boolean

Включить плавный перезапуск.

Варианты:

  • false
  • true

log_adjacency_changes

dictionary

Записывать изменения состояния смежности в журнал.

detail

boolean

Уведомлять обо всех изменениях состояния.

Варианты:

  • false
  • true

log

boolean

Включить/отключить запись изменений состояния смежности в журнал.

Варианты:

  • false
  • true

max_lsa

dictionary

Функция ограничения количества LSA, созданных не этим маршрутизатором.

ignore_count

integer

Задать количество подавлений смежности.

ignore_time

integer

Задать период подавления всех смежностей.

max_non_self_generated_lsa

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

Задать максимальное количество LSA, созданных не этим маршрутизатором.

reset_time

integer

Задать количество минут, по истечении которых счетчик игнорирования сбрасывается до нуля.

threshold

integer

Пороговое значение (%), при достижении которого формируется предупреждение.

warning_only

boolean

Записывать предупреждение в журнал при превышении ограничения.

Варианты:

  • false
  • true

max_metric

dictionary

Установить максимальное значение метрики стоимости.

router_lsa

dictionary

Настройка LSA маршрутизатора.

external_lsa

dictionary

Настройка внешних LSA.

max_metric_value

integer

Задать максимальное значение метрики для внешних LSA.

set

boolean

Установить атрибут external-lsa.

Варианты:

  • false
  • true

include_stub

boolean

Также анонсировать максимальную метрику для тупиковых каналов.

Варианты:

  • false
  • true

on_startup

dictionary

Действует только при запуске.

set

boolean

Установить атрибут on-startup.

Варианты:

  • false
  • true

wait_for_bgp_asn

integer

ASN BGP, которого необходимо дождаться.

wait_period

integer

Время ожидания в секундах после запуска.

set

boolean

Установить атрибут router-lsa.

Варианты:

  • false
  • true

summary_lsa

dictionary

Настройка сводных LSA.

max_metric_value

integer

Максимальное значение метрики для сводных LSA.

set

boolean

Установить атрибут summary-lsa.

Варианты:

  • false
  • true

maximum_paths

integer

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

name_lookup

boolean

Отображать идентификаторы маршрутизаторов OSPF в виде DNS-имен.

Варианты:

  • false
  • true

passive_interface

dictionary

Подавлять обновления маршрутизации на интерфейсе.

default

boolean

По умолчанию интерфейсы являются пассивными.

Варианты:

  • false
  • true

redistribute

list / elements=dictionary

Перераспределять информацию из другого протокола маршрутизации.

id

string

Идентификатор указанного протокола.

protocol

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

Название протокола.

Варианты:

  • "bgp"
  • "direct"
  • "eigrp"
  • "isis"
  • "lisp"
  • "ospf"
  • "rip"
  • "static"

route_map

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

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

rfc1583compatibility

boolean

Настроить совместимость с RFC 1583 для выбора внешних путей.

Варианты:

  • false
  • true

router_id

string

Задать идентификатор маршрутизатора для процесса OSPF.

shutdown

boolean

Отключить экземпляр протокола OSPF.

Варианты:

  • false
  • true

summary_address

list / elements=dictionary

Настроить суммирование маршрутов для перераспределения.

not_advertise

boolean

Не анонсировать указанную сводную сеть.

Варианты:

  • false
  • true

prefix

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

IP-префикс в формате x.x.x.x/ml.

tag

integer

32-разрядное значение тега.

table_map

dictionary

Политика фильтрации/изменения маршрутов OSPF перед отправкой в RIB.

filter

boolean

Запретить отправку маршрутов OSPF в RIB.

Варианты:

  • false
  • true

name

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

Имя карты маршрутов.

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.

vrf

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

Имя/идентификатор VRF.

running_config

string

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

Значением этого параметра должен быть вывод, полученный с устройства NX-OS при выполнении команды show running-config | section “^router ospf .*”.

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

state

string

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

Варианты:

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

Примечания

Примечание

  • Проверено на NX-OS 7.0(3)I5(1).
  • Не поддерживается на Cisco MDS
  • Этот модуль работает с подключениями 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 existing 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: Override 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:
# ------------
# 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:
# ------------
# 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:
# ------------
#  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

Результирующая конфигурационная модель после выполнения.

Возвращается: при изменении

Пример: "The configuration returned will always be in the same format\n of the parameters above.\n"

before

dictionary

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

Возвращается: всегда

Пример: "The configuration returned will always be in the same format\n of the parameters above.\n"

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"]

gathered

dictionary

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

Возвращается: если state равно gathered

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

parsed

dictionary

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

Возвращается: если state равно parsed

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

rendered

list / elements=string

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

Возвращается: если state равно rendered

Пример: ["router ospf 102", "router-id 198.54.100.1", "router ospf 100"]

Авторы

  • Nilashish Chakraborty (@NilashishC)

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

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

© 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/nxos/nxos_ospfv2_module.html

Spec-Zone.ru

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