Spec-Zone.ru › Ansible

cisco.ios.ios_bgp_address_family module – Модуль ресурсов для настройки семейства адресов BGP.

Примечание

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

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

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

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

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

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

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

  • Этот модуль настраивает атрибуты семейства адресов BGP на Cisco IOS и управляет ими.

Примечание

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

Параметры

Параметр

Описание

config

dictionary

Список конфигураций для семейства адресов BGP.

address_family

list / elements=dictionary

Список конфигураций для семейства адресов BGP.

advertise

dictionary

Настройка анонсирования/экспорта маршрутов в другое семейство адресов

afi

string

Семейство адресов для анонсирования/экспорта VRF

Допустимые значения:

  • "l2vpn"

safi

string

Анонсирование/экспорт префиксов в семейство адресов

Допустимые значения:

  • "evpn"

afi

string

Семейство адресов

Допустимые значения:

  • "ipv4"
  • "ipv6"
  • "l2vpn"
  • "nsap"
  • "rtfilter"
  • "vpnv4"
  • "vpnv6"

aggregate_addresses

псевдонимы: aggregate_address

list / elements=dictionary

Настройка агрегированных записей BGP

address

string

Агрегируемый адрес (A.B.C.D)

advertise_map

string

Задание условия для анонсирования атрибута

as_confed_set

boolean

Формирование информации о пути AS confed set

Допустимые значения:

  • false
  • true

as_set

boolean

Формирование информации о пути AS set

Допустимые значения:

  • false
  • true

attribute_map

string

Задание атрибутов агрегированного маршрута

netmask

string

Маска агрегируемого маршрута (A.B.C.D)

summary_only

boolean

Фильтрация более специфичных маршрутов из обновлений

Допустимые значения:

  • false
  • true

suppress_map

string

Условная фильтрация более специфичных маршрутов из обновлений

auto_summary

boolean

Включение автоматического суммирования сетевых адресов

Допустимые значения:

  • false
  • true

bgp

dictionary

Настройка агрегированных записей BGP

additional_paths

dictionary

Дополнительные пути в таблице BGP

install

boolean

Установка дополнительных путей в RIB

Допустимые значения:

  • false
  • true

receive

boolean

Получение дополнительных путей от соседей

Допустимые значения:

  • false
  • true

select

dictionary

Критерии выбора путей

all

boolean

Выбор всех доступных путей

Допустимые значения:

  • false
  • true

backup

boolean

Выбор резервного пути

Допустимые значения:

  • false
  • true

best

integer

Выбор N лучших путей (2–3).

best_external

boolean

Выбор лучшего внешнего пути

Допустимые значения:

  • false
  • true

group_best

boolean

Выбор лучшего пути группы

Допустимые значения:

  • false
  • true

send

boolean

Отправка дополнительных путей соседям

Допустимые значения:

  • false
  • true

aggregate_timer

integer

Настройка таймера агрегации

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

dampening

dictionary

Включение подавления флаппинга маршрутов

max_suppress

integer

Максимальная длительность подавления стабильного маршрута

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

penalty_half_time

integer

Период полураспада штрафа

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

reuse_route_val

integer

Значение, при котором маршрут можно начать использовать повторно

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

route_map

string

Route-map для задания критериев подавления флаппинга

suppress_route_val

integer

Значение, при котором начинается подавление маршрута

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

dmzlink_bw

boolean

Использование пропускной способности канала DMZ в качестве веса для многопутевых маршрутов BGP

Допустимые значения:

  • false
  • true

nexthop

dictionary

Команды отслеживания следующего перехода

route_map

string

Route-map для допустимых следующих переходов

trigger

dictionary

Запуск отслеживания следующего перехода

delay

integer

Задание задержки перед запуском отслеживания следующего перехода

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

enable

boolean

Включение отслеживания следующего перехода

Допустимые значения:

  • false
  • true

redistribute_internal

boolean

Разрешить перераспределение iBGP в IGP (опасно)

Допустимые значения:

  • false
  • true

route_map

boolean

Команды управления route-map

Установка команд route-map имеет приоритет над командами BGP, например next-hop unchanged

Допустимые значения:

  • false
  • true

scan_time

integer

Настройка интервала фонового сканирования

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

slow_peer

list / elements=dictionary

Запуск отслеживания следующего перехода

Этот параметр УСТАРЕЛ и заменён параметром slow_peer_options; данный атрибут будет удалён после 2025-01-01.

detection

dictionary

Обнаружение медленных соседей

enable

boolean

Включение обнаружения медленных соседей

Допустимые значения:

  • false
  • true

threshold

integer

Задание порога обнаружения медленных соседей

Значение порога (секунды)

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

split_update_group

dictionary

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

dynamic

boolean

Динамическое перемещение медленного соседа в группу медленных обновлений

Допустимые значения:

  • false
  • true

permanent

boolean

Постоянное сохранение медленного соседа в группе медленных обновлений

Допустимые значения:

  • false
  • true

slow_peer_options

dictionary

Запуск отслеживания следующего перехода

detection

dictionary

Обнаружение медленных соседей

enable

boolean

Включение обнаружения медленных соседей

Допустимые значения:

  • false
  • true

threshold

integer

Задание порога обнаружения медленных соседей

Значение порога (секунды)

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

split_update_group

dictionary

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

dynamic

boolean

Динамическое перемещение медленного соседа в группу медленных обновлений

Допустимые значения:

  • false
  • true

permanent

boolean

Постоянное сохранение медленного соседа в группе медленных обновлений

Допустимые значения:

  • false
  • true

soft_reconfig_backup

boolean

Использовать soft-reconfiguration для входящих маршрутов, только если route-refresh не согласован

Варианты:

  • false
  • true

update_group

boolean

Управлять узлами в группах обновления BGP

Разделять группы обновления на основе политики

Размещать узлы с as-override в разных группах обновления

Варианты:

  • false
  • true

default

boolean

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

Варианты:

  • false
  • true

default_information

boolean

Распространение информации о маршруте по умолчанию

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

Варианты:

  • false
  • true

default_metric

integer

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

distance

dictionary

Задать административное расстояние

external

integer

Расстояние для маршрутов, внешних по отношению к AS

internal

integer

Расстояние для маршрутов, внутренних по отношению к AS

local

integer

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

maximum_paths

dictionary

Пересылать пакеты по нескольким путям

eibgp

integer

Использовать пути eBGP и iBGP как многопутевые

ibgp

integer

Многопутевая маршрутизация iBGP

paths

integer

Количество путей

maximum_secondary_paths

dictionary

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

eibgp

integer

Использовать пути eBGP и iBGP как вторичные многопутевые

ibgp

integer

Вторичная многопутевая маршрутизация iBGP

paths

integer

Количество вторичных путей

neighbors

псевдонимы: neighbor

list / elements=dictionary

Указать соседний маршрутизатор

activate

boolean

Включить семейство адресов для этого соседа

Варианты:

  • false
  • true

additional_paths

dictionary

Согласовать с этим соседом поддержку дополнительных путей

disable

boolean

Отключить дополнительные пути для этого соседа

Варианты:

  • false
  • true

receive

boolean

Получать дополнительные пути от соседей

Варианты:

  • false
  • true

send

boolean

Отправлять дополнительные пути этому соседу

Варианты:

  • false
  • true

address

string

Адрес соседа (A.B.C.D)

Этот параметр УСТАРЕЛ и заменен параметром neighbor_address; данный атрибут будет удален после 2025-01-01.

advertise

dictionary

Анонсировать этому соседу

Анонсировать дополнительные пути

all

boolean

Выбрать все доступные пути

Варианты:

  • false
  • true

best

integer

Выбрать N лучших путей (2–3).

group_best

boolean

Выбрать лучший путь группы

Варианты:

  • false
  • true

advertise_map

dictionary

Указать карту маршрутов для условного анонсирования

exist_map

string

Анонсировать префикс, только если он присутствует в условии

Имя карты маршрутов условия

name

string

Имя карты маршрутов анонсирования

non_exist_map

string

Анонсировать префикс, только если он отсутствует в условии

Имя карты маршрутов условия

advertisement_interval

integer

Минимальный интервал между отправками обновлений маршрутизации BGP

advertises

dictionary

Анонсировать этому соседу

additional_paths

dictionary

Анонсировать дополнительные пути

all

boolean

Выбрать все доступные пути

Варианты:

  • false
  • true

best

integer

Выбрать N лучших путей (2–3).

group_best

boolean

Выбрать лучший путь группы

Варианты:

  • false
  • true

best_external

boolean

Анонсировать лучший внешний путь (на RR — лучший внутренний путь)

Варианты:

  • false
  • true

diverse_path

dictionary

Анонсировать дополнительные пути

backup

boolean

Разнообразный путь может быть резервным

Варианты:

  • false
  • true

mpath

boolean

Разнообразный путь может быть многопутевым

Варианты:

  • false
  • true

aigp

dictionary

Включить AIGP для соседа

enable

string

Включить AIGP для соседа

send

dictionary

Расширенное сообщество Cost или MED, содержащее значение AIGP

cost_community

dictionary

Расширенное сообщество Cost, содержащее значение AIGP

id

integer

Идентификатор сообщества

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

poi

dictionary

Точка вставки

igp_cost

boolean

Точка вставки после IGP

Варианты:

  • false
  • true

pre_bestpath

boolean

Точка вставки в начале

Варианты:

  • false
  • true

transitive

boolean

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

Варианты:

  • false
  • true

med

boolean

MED, содержащий значение AIGP

Варианты:

  • false
  • true

allow_policy

boolean

Включить поддержку политик для этого соседа IBGP

Варианты:

  • false
  • true

allowas_in

integer

Принимать AS-путь, содержащий мой AS

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

as_override

dictionary

Заменять совпадающий номер AS при отправке обновления

set

boolean

Включить переопределение AS

Варианты:

  • false
  • true

split_horizon

boolean

Сохранять split horizon при отправке обновления

Варианты:

  • false
  • true

bmp_activate

dictionary

Активировать мониторинг BMP для узла BGP

all

boolean

Активировать мониторинг BMP для всех серверов

Варианты:

  • false
  • true

server

integer

Активировать BMP для сервера

Номер сервера BMP

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

capability

dictionary

Объявить возможности узлу-соседу

Объявить возможность ORF узлу-соседу

Объявить возможность ORF для списка префиксов этому соседу

both

boolean

Возможность ОТПРАВЛЯТЬ ORF этому соседу и ПОЛУЧАТЬ ORF от него

Варианты:

  • false
  • true

receive

boolean

Возможность ПОЛУЧАТЬ ORF от этого соседа

Варианты:

  • false
  • true

send

boolean

Возможность ОТПРАВЛЯТЬ ORF этому соседу

Варианты:

  • false
  • true

cluster_id

string

Настроить идентификатор кластера Route-Reflector (пиры могут сбросить соединение)

Идентификатор кластера Route-Reflector в виде 32-битного значения или в формате IP-адреса (A.B.C.D)

default_originate

dictionary

Анонсировать маршрут по умолчанию этому соседу

route_map

string

Route-map для задания условий анонсирования маршрута по умолчанию

set

boolean

Установить маршрут по умолчанию для этого соседа

Варианты:

  • false
  • true

description

string

Описание соседа

disable_connected_check

boolean

Пир EBGP находится на расстоянии одного перехода и использует адрес loopback

Варианты:

  • false
  • true

distribute_list

dictionary

Фильтровать обновления, получаемые от этого соседа и отправляемые ему

acl

string

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

in

boolean

Фильтровать входящие обновления

Варианты:

  • false
  • true

out

boolean

Фильтровать исходящие обновления

Варианты:

  • false
  • true

dmzlink_bw

boolean

Распространять сведения о пропускной способности DMZ-канала

Варианты:

  • false
  • true

ebgp_multihop

dictionary

Разрешить соседей EBGP, находящихся вне непосредственно подключённых сетей

enable

boolean

Разрешить соседей EBGP, находящихся вне непосредственно подключённых сетей

Варианты:

  • false
  • true

hop_count

integer

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

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

fall_over

dictionary

Завершать сеанс при потере маршрута пира

bfd

dictionary

Использовать BFD для обнаружения отказа

multi_hop

boolean

Принудительно использовать многошаговый BFD для обнаружения отказа

Варианты:

  • false
  • true

set

boolean

Включить BFD

Варианты:

  • false
  • true

single_hop

boolean

Принудительно использовать одношаговый BFD для обнаружения отказа

Варианты:

  • false
  • true

route_map

string

Route-map для маршрута пира

filter_list

dictionary

Настроить фильтры BGP

as_path_acl

integer

Список контроля доступа к AS-пути

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

in

boolean

Фильтровать входящие обновления

Варианты:

  • false
  • true

out

boolean

Фильтровать исходящие обновления

Варианты:

  • false
  • true

ha_mode

dictionary

Режим высокой доступности

disable

boolean

Отключить graceful-restart

Варианты:

  • false
  • true

set

boolean

Включить ha-mode и graceful-restart для этого пира

Варианты:

  • false
  • true

inherit

string

Наследовать шаблон

Наследовать шаблон политики пира

internal_vpn_client

boolean

Добавить путь соседа iBGP-CE в ATTR_SET для обновления VPN

Варианты:

  • false
  • true

ipv6_address

псевдонимы: ipv6_adddress

string

IPv6-адрес соседа (X:X:X:X::X)

Этот параметр УСТАРЕЛ и заменён параметром neighbor_address; атрибут будет удалён после 2025-01-01.

local_as

dictionary

Указать номер локальной AS

dual_as

boolean

Принимать от пира EBGP как реальную AS, так и локальную AS

Варианты:

  • false
  • true

no_prepend

dictionary

Не добавлять локальную AS в начало обновлений от пиров EBGP

replace_as

boolean

Заменять реальную AS локальной AS в обновлениях EBGP

Варианты:

  • false
  • true

set

boolean

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

Варианты:

  • false
  • true

number

string

Номер AS, используемый в качестве локального AS

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

set

boolean

Установить номер local-as

Варианты:

  • false
  • true

log_neighbor_changes

dictionary

Записывать в журнал события подключения и отключения соседа, а также причину сброса соединения

disable

boolean

Отключить запись в журнал событий подключения и отключения соседа, а также сброса соединения

Варианты:

  • false
  • true

set

boolean

Включить запись в журнал событий подключения и отключения соседа, а также сброса соединения

Варианты:

  • false
  • true

maximum_prefix

dictionary

Настроить фильтры BGP

number

integer

Максимальное количество префиксов

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

restart

integer

Перезапустить соединение BGP после превышения лимита

threshold_value

integer

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

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

warning_only

boolean

Выводить только предупреждение при превышении лимита

Варианты:

  • false
  • true

neighbor_address

string

Адрес соседа (A.B.C.D)

Метка соседа

Адрес соседа IPv6 (X:X:X:X::X)

next_hop_unchanged

dictionary

Передавать атрибут next hop без изменений для маршрутов iBGP этому соседу

Передавать атрибут next hop без изменений для всех маршрутов (iBGP и eBGP) этому соседу

allpaths

boolean

Передавать атрибут next hop без изменений для всех маршрутов (iBGP и eBGP) этому соседу

Варианты:

  • false
  • true

set

boolean

Включить режим next-hop-unchanged

Варианты:

  • false
  • true

nexthop_self

dictionary

Отключить вычисление следующего перехода для этого соседа

all

boolean

Включить next-hop-self для полученных маршрутов eBGP и iBGP

Варианты:

  • false
  • true

set

boolean

Установить для следующего перехода значение self

Варианты:

  • false
  • true

password_options

dictionary

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

encryption

integer

Тип шифрования (0 — отключить шифрование, 7 — проприетарный тип)

pass_key

string

Пароль

path_attribute

dictionary

Фильтрация необязательных атрибутов BGP

discard

dictionary

Отбрасывать совпадающий атрибут пути для этого соседа

in

boolean

Выполнять фильтрацию входящих атрибутов пути

Варианты:

  • false
  • true

range

dictionary

Диапазон атрибутов пути

end

integer

Конечное значение диапазона атрибутов пути

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

start

integer

Начальное значение диапазона атрибутов пути

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

type

integer

Тип атрибута пути

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

treat_as_withdraw

dictionary

Рассматривать совпадающий атрибут пути для этого соседа как отзыв маршрута

in

boolean

Выполнять фильтрацию входящих атрибутов пути

Варианты:

  • false
  • true

range

dictionary

Диапазон атрибутов пути

end

integer

Конечное значение диапазона атрибутов пути

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

start

integer

Начальное значение диапазона атрибутов пути

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

type

integer

Тип атрибута пути

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

peer_group

boolean

Участник группы соседей

Варианты:

  • false
  • true

peer_group_name

string

Участник группы соседей

prefix_list

dictionary

Фильтровать обновления, отправляемые этому соседу и получаемые от него

Этот параметр УСТАРЕЛ и заменён параметром prefix_lists, который принимает список словарей в качестве входных данных

in

boolean

Фильтровать входящие обновления

Варианты:

  • false
  • true

name

string

Имя списка префиксов

out

boolean

Фильтровать исходящие обновления

Варианты:

  • false
  • true

prefix_lists

list / elements=dictionary

Фильтровать обновления, отправляемые этому соседу и получаемые от него

in

boolean

Фильтровать входящие обновления

Варианты:

  • false
  • true

name

string

Имя списка префиксов

out

boolean

Фильтровать исходящие обновления

Варианты:

  • false
  • true

remote_as

string

Указать соседа BGP

AS удалённого соседа

remove_private_as

dictionary

Удалить частный номер AS из исходящих обновлений

all

boolean

Удалить все частные номера AS

Варианты:

  • false
  • true

replace_as

boolean

Заменить все частные номера AS локальным AS

Варианты:

  • false
  • true

set

boolean

Удалить частный номер AS из исходящих обновлений

Варианты:

  • false
  • true

route_map

dictionary

Применить route map к соседу

Этот параметр УСТАРЕЛ и заменён параметром route_maps, который принимает список словарей в качестве входных данных

in

boolean

Применить карту к входящим маршрутам

Варианты:

  • false
  • true

name

string

Имя route map

out

boolean

Применить карту к исходящим маршрутам

Варианты:

  • false
  • true

route_maps

list / elements=dictionary

Применить route map к соседу

in

boolean

Применить карту к входящим маршрутам

Варианты:

  • false
  • true

name

string

Имя route map

out

boolean

Применить карту к исходящим маршрутам

Варианты:

  • false
  • true

route_reflector_client

boolean

Настроить соседа как клиента Route Reflector

Варианты:

  • false
  • true

route_server_client

boolean

Настроить соседа как клиента Route Server

Варианты:

  • false
  • true

send_community

dictionary

Отправлять атрибут Community этому соседу

both

boolean

Отправлять атрибуты Standard и Extended Community

Варианты:

  • false
  • true

extended

boolean

Отправлять атрибут Extended Community

Варианты:

  • false
  • true

set

boolean

Отправлять атрибут Standard Community.

Обеспечивает обратную совместимость с конфигурациями, в которых не указан тип send-community.

Варианты:

  • false
  • true

standard

boolean

Отправлять атрибут Standard Community

Варианты:

  • false
  • true

shutdown

dictionary

Административно отключить этого соседа

graceful

integer

Корректно отключить этого соседа

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

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

set

boolean

отключить

Варианты:

  • false
  • true

slow_peer

list / elements=dictionary

Настроить slow-peer

Этот параметр УСТАРЕЛ и заменён параметром slow_peer_options; данный атрибут будет удалён после 2025-01-01.

detection

dictionary

Настроить slow-peer

disable

boolean

Отключить обнаружение slow-peer

Варианты:

  • false
  • true

enable

boolean

Включить обнаружение slow-peer

Варианты:

  • false
  • true

threshold

integer

Задать порог обнаружения slow-peer

split_update_group

dictionary

Настроить slow-peer

dynamic

dictionary

Настроить slow-peer

disable

boolean

Настроить slow-peer

Варианты:

  • false
  • true

enable

boolean

Настроить slow-peer

Варианты:

  • false
  • true

permanent

boolean

Настроить slow-peer

Варианты:

  • false
  • true

static

boolean

Настроить slow-peer

Варианты:

  • false
  • true

slow_peer_options

dictionary

Настроить параметры slow-peer

detection

dictionary

Настроить slow-peer

disable

boolean

Отключить обнаружение slow-peer

Варианты:

  • false
  • true

enable

boolean

Включить обнаружение slow-peer

Варианты:

  • false
  • true

threshold

integer

Задать порог обнаружения slow-peer

split_update_group

dictionary

Настроить slow-peer

dynamic

dictionary

Настроить slow-peer

disable

boolean

Настроить slow-peer

Варианты:

  • false
  • true

enable

boolean

Настроить slow-peer

Варианты:

  • false
  • true

permanent

boolean

Настроить slow-peer

Варианты:

  • false
  • true

static

boolean

Настроить slow-peer

Варианты:

  • false
  • true

soft_reconfiguration

boolean

Мягкая перенастройка для каждого соседа

Разрешить мягкую перенастройку входящих маршрутов для этого соседа

Варианты:

  • false
  • true

soo

string

Расширенное сообщество Site-of-Origin

tag

string

Тег соседа

Этот параметр УСТАРЕЛ и заменён параметром neighbor_address; данный атрибут будет удалён после 2025-01-01.

timers

dictionary

Таймеры BGP для каждого соседа

holdtime

integer

Время удержания

interval

integer

Интервал keepalive

min_holdtime

integer

Минимальное время удержания, полученное от соседа

transport

dictionary

Параметры транспорта

connection_mode

dictionary

Указать пассивное или активное соединение

active

boolean

Активно устанавливать сеанс TCP

Варианты:

  • false
  • true

passive

boolean

Пассивно устанавливать сеанс TCP

Варианты:

  • false
  • true

multi_session

boolean

Использовать Multi-session для транспорта

Варианты:

  • false
  • true

path_mtu_discovery

dictionary

Использовать обнаружение MTU пути для транспорта

disable

boolean

отключить

Варианты:

  • false
  • true

set

boolean

Использовать обнаружение MTU пути

Варианты:

  • false
  • true

ttl_security

integer

Проверка безопасности TTL для BGP

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

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

unsuppress_map

string

Route-map для выборочного снятия подавления с подавленных маршрутов

version

integer

Задать версию BGP, соответствующую версии соседа

Версия BGP соседа

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

weight

integer

Задать вес по умолчанию для маршрутов от этого соседа

networks

aliases: network

list / elements=dictionary

Указать сеть для анонсирования через BGP

address

string

Номер сети (A.B.C.D)

backdoor

boolean

Указать резервный маршрут BGP

Варианты:

  • false
  • true

evpn

boolean

Анонсировать или экспортировать в семейство адресов EVPN

Варианты:

  • false
  • true

mask

string

Маска сети (A.B.C.D)

route_map

string

Route-map для изменения атрибутов

redistribute

list / elements=dictionary

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

application

dictionary

Приложение

metric

integer

Метрика перераспределяемых маршрутов

name

string

Имя приложения

route_map

string

Ссылка на route map

bgp

dictionary

Протокол граничного шлюза (BGP)

as_number

string

Номер автономной системы

metric

integer

Метрика перераспределяемых маршрутов

route_map

string

Ссылка на route map

connected

dictionary

Подключенные маршруты

metric

integer

Метрика перераспределяемых маршрутов

route_map

string

Ссылка на route map

set

boolean

Автоматически перераспределять установленные IP-маршруты подключенных сетей.

Этот параметр необходимо задавать только в том случае, если не используются metric или route_map.

Варианты:

  • false
  • true

eigrp

dictionary

Улучшенный протокол маршрутизации внутреннего шлюза (EIGRP)

as_number

string

Номер автономной системы

metric

integer

Метрика перераспределяемых маршрутов

route_map

string

Ссылка на route map

isis

dictionary

ISO IS-IS

area_tag

string

Идентификатор области маршрутизации ISO

clns

boolean

Перераспределение динамических маршрутов OSI

Варианты:

  • false
  • true

ip

boolean

Перераспределение динамических IP-маршрутов

Варианты:

  • false
  • true

metric

integer

Метрика перераспределяемых маршрутов

route_map

string

Ссылка на route map

iso_igrp

dictionary

IGRP для сетей OSI

area_tag

string

Идентификатор области маршрутизации ISO

route_map

string

Ссылка на route map

lisp

dictionary

Протокол разделения идентификатора локатора (LISP)

metric

integer

Метрика перераспределяемых маршрутов

route_map

string

Ссылка на route map

set

boolean

Задать атрибут верхнего уровня

Варианты:

  • false
  • true

mobile

dictionary

Мобильные маршруты

metric

integer

Метрика перераспределяемых маршрутов

route_map

string

Ссылка на route map

set

boolean

Задать атрибут верхнего уровня

Варианты:

  • false
  • true

odr

dictionary

Маршруты заглушки по запросу

metric

integer

Метрика перераспределяемых маршрутов

route_map

string

Ссылка на route map

set

boolean

Задать атрибут верхнего уровня

Варианты:

  • false
  • true

ospf

dictionary

Протокол OSPF (Open Shortest Path First)

include_connected

boolean

Включить подключенные маршруты. Применимо только для AFI IPv6

Варианты:

  • false
  • true

match

dictionary

Перераспределять маршруты, соответствующие условиям

external

boolean

Перераспределять внешние маршруты OSPF

Этот параметр УСТАРЕЛ и заменен параметром externals; данный атрибут будет удален после 2025-01-01.

Варианты:

  • false
  • true

externals

dictionary

Распространять внешние маршруты OSPF

type_1

boolean

Распространять внешние маршруты OSPF типа 1

Варианты:

  • false
  • true

type_2

boolean

Распространять внешние маршруты OSPF типа 1

Варианты:

  • false
  • true

internal

boolean

Распространять внутренние маршруты OSPF

Варианты:

  • false
  • true

nssa_external

boolean

Распространять внешние маршруты NSSA OSPF

Этот параметр УСТАРЕЛ и заменён параметром nssa_externals; данный атрибут будет удалён после 2025-01-01.

Варианты:

  • false
  • true

nssa_externals

dictionary

Распространять внешние маршруты NSSA OSPF

type_1

boolean

Распространять внешние маршруты NSSA типа 1

Варианты:

  • false
  • true

type_2

boolean

Распространять внешние маршруты NSSA типа 2

Варианты:

  • false
  • true

type_1

boolean

Распространять внешние маршруты NSSA типа 1

Этот параметр УСТАРЕЛ и заменён параметром nssa_externals.type_1; данный атрибут будет удалён после 2025-01-01.

Варианты:

  • false
  • true

type_2

boolean

Распространять внешние маршруты NSSA типа 2

Этот параметр УСТАРЕЛ и заменён параметром nssa_externals.type_2; данный атрибут будет удалён после 2025-01-01.

Варианты:

  • false
  • true

metric

integer

Метрика распространяемых маршрутов

process_id

integer

Идентификатор процесса

route_map

string

Ссылка на карту маршрутизации

vrf

string

Экземпляр маршрутизации/пересылки VPN

ospfv3

dictionary

OSPFv3

match

dictionary

Распространять соответствующие маршруты

external

boolean

Распространять внешние маршруты OSPF

Этот параметр УСТАРЕЛ и заменён параметром externals; данный атрибут будет удалён после 2025-01-01.

Варианты:

  • false
  • true

externals

dictionary

Распространять внешние маршруты OSPF

type_1

boolean

Распространять внешние маршруты OSPF типа 1

Варианты:

  • false
  • true

type_2

boolean

Распространять внешние маршруты OSPF типа 1

Варианты:

  • false
  • true

internal

boolean

Распространять внутренние маршруты OSPF

Варианты:

  • false
  • true

nssa_external

boolean

Распространять внутренние маршруты OSPF

Этот параметр УСТАРЕЛ и заменён параметром nssa_externals; данный атрибут будет удалён после 2025-01-01.

Варианты:

  • false
  • true

nssa_externals

dictionary

Распространять внешние маршруты NSSA OSPF

type_1

boolean

Распространять внешние маршруты NSSA типа 1

Варианты:

  • false
  • true

type_2

boolean

Распространять внешние маршруты NSSA типа 2

Варианты:

  • false
  • true

type_1

boolean

Распространять внешние маршруты NSSA типа 1

Этот параметр УСТАРЕЛ и заменён параметром nssa_externals.type_1; данный атрибут будет удалён после 2025-01-01.

Варианты:

  • false
  • true

type_2

boolean

Распространять внешние маршруты NSSA типа 2

Этот параметр УСТАРЕЛ и заменён параметром nssa_externals.type_2; данный атрибут будет удалён после 2025-01-01.

Варианты:

  • false
  • true

metric

integer

Метрика распространяемых маршрутов

process_id

integer

Идентификатор процесса

route_map

string

Ссылка на карту маршрутизации

rip

dictionary

Протокол маршрутной информации (RIP)

metric

integer

Метрика распространяемых маршрутов

route_map

string

Ссылка на карту маршрутизации

set

boolean

Установить атрибут верхнего уровня

Варианты:

  • false
  • true

static

dictionary

Статические маршруты

clns

boolean

Распространение статических маршрутов OSI

Варианты:

  • false
  • true

ip

boolean

Распространение статических IP-маршрутов

Варианты:

  • false
  • true

metric

integer

Метрика распространяемых маршрутов

route_map

string

Ссылка на карту маршрутизации

set

boolean

Установить атрибут верхнего уровня

Варианты:

  • false
  • true

vrf

dictionary

Указать исходную VRF

global

boolean

Глобальная VRF

Варианты:

  • false
  • true

name

string

Имя исходной VRF

safi

string

Модификатор семейства адресов

Варианты:

  • "flowspec"
  • "mdt"
  • "multicast"
  • "mvpn"
  • "evpn"
  • "unicast"

snmp

dictionary

Изменить параметры SNMP

context

dictionary

Настроить контекст SNMP

Имя контекста

community

dictionary

Настроить строку сообщества SNMP v2c и права доступа

acl

string

Стандартный список доступа IP, разрешающий доступ с этой строкой сообщества

Расширенный список доступа IP, разрешающий доступ с этой строкой сообщества

Имя списка доступа

ipv6

string

Указать именованный список доступа IPv6

Имя списка доступа IPv6

ro

boolean

Доступ только для чтения с этой строкой сообщества

Варианты:

  • false
  • true

rw

boolean

Доступ для чтения и записи с этой строкой сообщества

Варианты:

  • false
  • true

snmp_community

string

Строка сообщества SNMP

name

string

Имя контекста

user

dictionary

Настроить пользователя SNMP v3

access

dictionary

Указать список доступа, связанный с этой группой

acl

string

Строка сообщества SNMP

ipv6

string

Указать именованный список доступа IPv6

Имя списка доступа IPv6

auth

dictionary

Параметры аутентификации пользователя

md5

string

Использовать алгоритм HMAC MD5 для аутентификации

Пароль аутентификации пользователя

sha

string

Использовать алгоритм HMAC SHA для аутентификации

пароль аутентификации пользователя

credential

boolean

Если пароль пользователя уже настроен и сохранён

Варианты:

  • false
  • true

encrypted

boolean

указание паролей в виде дайджестов MD5 или SHA

Варианты:

  • false
  • true

name

string

строка сообщества SNMP

priv

dictionary

параметры шифрования для пользователя

aes128

string

Использовать алгоритм AES с ключом 128 бит для шифрования

aes192

string

Использовать алгоритм 3DES с ключом 192 бита для шифрования

aes256

string

Использовать алгоритм DES с ключом 256 бит для шифрования

des

string

Использовать алгоритм DES с ключом 56 бит для шифрования

des56

string

Использовать алгоритм DES с ключом 56 бит для шифрования

table_map

dictionary

Сопоставить атрибуты внешних записей с таблицей маршрутизации

filter

boolean

Выборочная загрузка маршрутов

Варианты:

  • false
  • true

name

string

имя route-map

vrf

string

Указать параметры экземпляра VPN Routing/Forwarding

as_number

string

Номер автономной системы.

running_config

string

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

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

Состояние 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 | include ip route|ipv6 route, выполненной на устройстве. Для состояния parsed активное подключение к удалённому узлу не требуется.

Варианты:

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

Примечания

Примечание

  • Проверено в CML с Cisco IOS-XE версии 17.3.
  • Этот модуль работает с подключением network_cli. См. https://docs.ansible.com/ansible/latest/network/user_guide/platform_ios.html
  • В примерах модуля используется плагин обратного вызова (stdout_callback = yaml) для вывода задач в формате YAML.

Примеры

# Using merged

# Before state:
# -------------
#
# vios#sh running-config | section ^router bgp
# router bgp 65000
#  bgp log-neighbor-changes
#  bgp nopeerup-delay cold-boot 20

- name: Merge provided configuration with device configuration
  cisco.ios.ios_bgp_address_family:
    config:
      as_number: 65000
      address_family:
        - afi: ipv4
          safi: multicast
          vrf: blue
          aggregate_address:
            - address: 192.0.2.1
              netmask: 255.255.255.255
              as_confed_set: true
          bgp:
            aggregate_timer: 10
            dampening:
              penalty_half_time: 1
              reuse_route_val: 1
              suppress_route_val: 1
              max_suppress: 1
            slow_peer:
              - detection:
                  threshold: 150
          neighbor:
            - address: 198.51.100.1
              aigp:
                send:
                  cost_community:
                    id: 100
                    poi:
                      igp_cost: true
                      transitive: true
              slow_peer:
                - detection:
                    threshold: 150
              remote_as: 10
              route_map:
                - name: test-route-out
                  out: true
                - name: test-route-in
                  in: true
              route_server_client: true
          network:
            - address: 198.51.110.10
              mask: 255.255.255.255
              backdoor: true
          snmp:
            context:
              name: snmp_con
              community:
                snmp_community: community
                ro: true
                acl: 10
        - afi: ipv4
          safi: mdt
          bgp:
            dmzlink_bw: true
            dampening:
              penalty_half_time: 1
              reuse_route_val: 10
              suppress_route_val: 100
              max_suppress: 5
            soft_reconfig_backup: true
        - afi: ipv4
          safi: multicast
          aggregate_address:
            - address: 192.0.3.1
              netmask: 255.255.255.255
              as_confed_set: true
          default_metric: 12
          distance:
            external: 10
            internal: 10
            local: 100
          network:
            - address: 198.51.111.11
              mask: 255.255.255.255
              route_map: test
          table_map:
            name: test_tableMap
            filter: true
    state: merged

# Task Output:
# ------------
#
# before: {}
# commands:
#   - router bgp 65000
#   - address-family ipv4 multicast vrf blue
#   - bgp aggregate-timer 10
#   - bgp dampening 1 1 1 1
#   - bgp slow-peer detection threshold 150
#   - snmp context snmp_con community community ro 10
#   - neighbor 198.51.100.1 remote-as 10
#   - neighbor 198.51.100.1 aigp send cost-community 100 poi igp-cost transitive
#   - neighbor 198.51.100.1 slow-peer detection threshold 150
#   - network 198.51.110.10 mask 255.255.255.255 backdoor
#   - aggregate-address 192.0.2.1 255.255.255.255 as-confed-set
#   - address-family ipv4 multicast
#   - default-metric 12
#   - distance bgp 10 10 100
#   - table-map test_tableMap filter
#   - network 198.51.111.11 mask 255.255.255.255 route-map test
#   - aggregate-address 192.0.3.1 255.255.255.255 as-confed-set
#   - address-family ipv4 mdt
#   - bgp dmzlink-bw
#   - bgp soft-reconfig-backup
#   - bgp dampening 1 10 100 5
# after:
#   address_family:
#   - afi: ipv4
#     aggregate_addresses:
#     - address: 192.0.2.1
#       as_confed_set: true
#       netmask: 255.255.255.255
#     bgp:
#       aggregate_timer: 10
#       dampening:
#         max_suppress: 1
#         penalty_half_time: 1
#         reuse_route_val: 1
#         suppress_route_val: 1
#       slow_peer_options:
#         detection:
#           threshold: 150
#     neighbors:
#     - activate: true
#       aigp:
#         send:
#           cost_community:
#             id: 100
#             poi:
#               igp_cost: true
#               transitive: true
#       neighbor_address: 198.51.100.1
#       slow_peer_options:
#         detection:
#           threshold: 150
#     networks:
#     - address: 198.51.110.10
#       backdoor: true
#       mask: 255.255.255.255
#     snmp:
#       context:
#         community:
#           acl: '10'
#           ro: true
#           snmp_community: community
#         name: snmp_con
#   - afi: ipv4
#     aggregate_addresses:
#     - address: 192.0.3.1
#       as_confed_set: true
#       netmask: 255.255.255.255
#     default_metric: 12
#     distance:
#       external: 10
#       internal: 10
#       local: 100
#     networks:
#     - address: 198.51.111.11
#       mask: 255.255.255.255
#       route_map: test
#     safi: multicast
#     table_map:
#       filter: true
#       name: test_tableMap
#   - afi: ipv4
#     bgp:
#       dampening:
#         max_suppress: 5
#         penalty_half_time: 1
#         reuse_route_val: 10
#         suppress_route_val: 100
#       dmzlink_bw: true
#       soft_reconfig_backup: true
#     safi: mdt
#   as_number: '65000'

# After state:
# ------------
#
# vios#sh running-config | section ^router bgp
# router bgp 65000
#  bgp log-neighbor-changes
#  bgp graceful-shutdown all neighbors 50 local-preference 100 community 100
#  snmp context snmp_con community community RO 10
#  neighbor 198.51.100.1 remote-as 10
#  !
#  address-family ipv4
#   snmp context snmp_con community community RO 10
#   bgp aggregate-timer 10
#   bgp slow-peer detection threshold 150
#   bgp dampening 1 1 1 1
#   network 198.51.110.10 mask 255.255.255.255 backdoor
#   aggregate-address 192.0.2.1 255.255.255.255 as-confed-set
#   neighbor 198.51.100.1 activate
#   neighbor 198.51.100.1 aigp send cost-community 100 poi igp-cost transitive
#   neighbor 198.51.100.1 slow-peer detection threshold 150
#  exit-address-family
#  !
#  address-family ipv4 multicast
#   table-map test_tableMap filter
#   network 198.51.111.11 mask 255.255.255.255 route-map test
#   aggregate-address 192.0.3.1 255.255.255.255 as-confed-set
#   default-metric 12
#   distance bgp 10 10 100
#  exit-address-family
#  !
#  address-family ipv4 mdt
#   bgp dampening 1 10 100 5
#   bgp dmzlink-bw
#   bgp soft-reconfig-backup
#  exit-address-family

# Using replaced

# Before state:
# -------------
#
# vios#sh running-config | section ^router bgp
# router bgp 65000
#  bgp log-neighbor-changes
#  bgp graceful-shutdown all neighbors 50 local-preference 100 community 100
#  snmp context snmp_con community community RO 10
#  neighbor 198.51.100.1 remote-as 10
#  !
#  address-family ipv4
#   snmp context snmp_con community community RO 10
#   bgp aggregate-timer 10
#   bgp slow-peer detection threshold 150
#   bgp dampening 1 1 1 1
#   network 198.51.110.10 mask 255.255.255.255 backdoor
#   aggregate-address 192.0.2.1 255.255.255.255 as-confed-set
#   neighbor 198.51.100.1 activate
#   neighbor 198.51.100.1 aigp send cost-community 100 poi igp-cost transitive
#   neighbor 198.51.100.1 slow-peer detection threshold 150
#  exit-address-family
#  !
#  address-family ipv4 multicast
#   table-map test_tableMap filter
#   network 198.51.111.11 mask 255.255.255.255 route-map test
#   aggregate-address 192.0.3.1 255.255.255.255 as-confed-set
#   default-metric 12
#   distance bgp 10 10 100
#  exit-address-family
#  !
#  address-family ipv4 mdt
#   bgp dampening 1 10 100 5
#   bgp dmzlink-bw
#   bgp soft-reconfig-backup
#  exit-address-family

- name: Replaces device configuration of listed AF BGP with provided configuration
  cisco.ios.ios_bgp_address_family:
    config:
      as_number: 65000
      address_family:
        - afi: ipv4
          safi: multicast
          vrf: blue
          aggregate_address:
            - address: 192.0.2.1
              netmask: 255.255.255.255
              as_confed_set: true
          bgp:
            aggregate_timer: 10
            dampening:
              penalty_half_time: 1
              reuse_route_val: 1
              suppress_route_val: 1
              max_suppress: 1
            slow_peer:
              - detection:
                  threshold: 150
          neighbor:
            - address: 198.51.110.1
              activate: true
              aigp:
                send:
                  cost_community:
                    id: 200
                    poi:
                      igp_cost: true
                      transitive: true
              slow_peer:
                - detection:
                    threshold: 150
              remote_as: 10
          network:
            - address: 198.51.110.10
              mask: 255.255.255.255
              backdoor: true
        - afi: ipv4
          safi: multicast
          bgp:
            aggregate_timer: 10
            dampening:
              penalty_half_time: 10
              reuse_route_val: 10
              suppress_route_val: 10
              max_suppress: 10
            slow_peer:
              - detection:
                  threshold: 200
          network:
            - address: 192.0.2.1
              mask: 255.255.255.255
              route_map: test
    state: replaced

# Task Output:
# ------------
# before:
#     address_family:
#     - afi: ipv4
#       aggregate_addresses:
#       - address: 192.0.2.1
#         as_confed_set: true
#         netmask: 255.255.255.255
#       bgp:
#         aggregate_timer: 10
#         dampening:
#           max_suppress: 1
#           penalty_half_time: 1
#           reuse_route_val: 1
#           suppress_route_val: 1
#         slow_peer_options:
#           detection:
#             threshold: 150
#       neighbors:
#       - activate: true
#         aigp:
#           send:
#             cost_community:
#               id: 100
#               poi:
#                 igp_cost: true
#                 transitive: true
#         neighbor_address: 198.51.100.1
#         slow_peer_options:
#           detection:
#             threshold: 150
#       networks:
#       - address: 198.51.110.10
#         backdoor: true
#         mask: 255.255.255.255
#       snmp:
#         context:
#           community:
#             acl: '10'
#             ro: true
#             snmp_community: community
#           name: snmp_con
#     - afi: ipv4
#       aggregate_addresses:
#       - address: 192.0.3.1
#         as_confed_set: true
#         netmask: 255.255.255.255
#       default_metric: 12
#       distance:
#         external: 10
#         internal: 10
#         local: 100
#       networks:
#       - address: 198.51.111.11
#         mask: 255.255.255.255
#         route_map: test
#       safi: multicast
#       table_map:
#         filter: true
#         name: test_tableMap
#     - afi: ipv4
#       bgp:
#         dampening:
#           max_suppress: 5
#           penalty_half_time: 1
#           reuse_route_val: 10
#           suppress_route_val: 100
#         dmzlink_bw: true
#         soft_reconfig_backup: true
#       safi: mdt
#     as_number: '65000'
# commands:
# - router bgp 65000
# - address-family ipv4 multicast vrf blue
# - bgp aggregate-timer 10
# - bgp dampening 1 1 1 1
# - bgp slow-peer detection threshold 150
# - neighbor 198.51.110.1 remote-as 10
# - neighbor 198.51.110.1 activate
# - neighbor 198.51.110.1 aigp send cost-community 200 poi igp-cost transitive
# - neighbor 198.51.110.1 slow-peer detection threshold 150
# - network 198.51.110.10 mask 255.255.255.255 backdoor
# - aggregate-address 192.0.2.1 255.255.255.255 as-confed-set
# - address-family ipv4 multicast
# - no default-metric 12
# - no distance bgp 10 10 100
# - no table-map test_tableMap filter
# - bgp aggregate-timer 10
# - bgp dampening 10 10 10 10
# - bgp slow-peer detection threshold 200
# - network 192.0.2.1 mask 255.255.255.255 route-map test
# - no network 198.51.111.11 mask 255.255.255.255 route-map test
# - no aggregate-address 192.0.3.1 255.255.255.255 as-confed-set
# after:
#   address_family:
#   - afi: ipv4
#     aggregate_addresses:
#     - address: 192.0.2.1
#       as_confed_set: true
#       netmask: 255.255.255.255
#     bgp:
#       aggregate_timer: 10
#       dampening:
#         max_suppress: 1
#         penalty_half_time: 1
#         reuse_route_val: 1
#         suppress_route_val: 1
#       slow_peer_options:
#         detection:
#           threshold: 150
#     neighbors:
#     - activate: true
#       aigp:
#         send:
#           cost_community:
#             id: 100
#             poi:
#               igp_cost: true
#               transitive: true
#       neighbor_address: 198.51.100.1
#       slow_peer_options:
#         detection:
#           threshold: 150
#     - activate: true
#       aigp:
#         send:
#           cost_community:
#             id: 200
#             poi:
#               igp_cost: true
#               transitive: true
#       neighbor_address: 198.51.110.1
#       slow_peer_options:
#         detection:
#           threshold: 150
#     networks:
#     - address: 198.51.110.10
#       backdoor: true
#       mask: 255.255.255.255
#     snmp:
#       context:
#         community:
#           acl: '10'
#           ro: true
#           snmp_community: community
#         name: snmp_con
#   - afi: ipv4
#     bgp:
#       aggregate_timer: 10
#       dampening:
#         max_suppress: 10
#         penalty_half_time: 10
#         reuse_route_val: 10
#         suppress_route_val: 10
#       slow_peer_options:
#         detection:
#           threshold: 200
#     networks:
#     - address: 192.0.2.1
#       mask: 255.255.255.255
#       route_map: test
#     safi: multicast
#   - afi: ipv4
#     bgp:
#       dampening:
#         max_suppress: 5
#         penalty_half_time: 1
#         reuse_route_val: 10
#         suppress_route_val: 100
#       dmzlink_bw: true
#       soft_reconfig_backup: true
#     safi: mdt
#   as_number: '65000'

# After state:
# -------------
#
# vios#sh running-config | section ^router bgp
# router bgp 65000
#  bgp log-neighbor-changes
#  bgp graceful-shutdown all neighbors 50 local-preference 100 community 100
#  snmp context snmp_con community community RO 10
#  neighbor 198.51.100.1 remote-as 10
#  neighbor 198.51.110.1 remote-as 10
#  !
#  address-family ipv4
#   snmp context snmp_con community community RO 10
#   bgp aggregate-timer 10
#   bgp slow-peer detection threshold 150
#   bgp dampening 1 1 1 1
#   network 198.51.110.10 mask 255.255.255.255 backdoor
#   aggregate-address 192.0.2.1 255.255.255.255 as-confed-set
#   neighbor 198.51.100.1 activate
#   neighbor 198.51.100.1 aigp send cost-community 100 poi igp-cost transitive
#   neighbor 198.51.100.1 slow-peer detection threshold 150
#   neighbor 198.51.110.1 activate
#   neighbor 198.51.110.1 aigp send cost-community 200 poi igp-cost transitive
#   neighbor 198.51.110.1 slow-peer detection threshold 150
#  exit-address-family
#  !
#  address-family ipv4 multicast
#   bgp aggregate-timer 10
#   bgp slow-peer detection threshold 200
#   bgp dampening 10 10 10 10
#   network 192.0.2.1 mask 255.255.255.255 route-map test
#  exit-address-family
#  !
#  address-family ipv4 mdt
#   bgp dampening 1 10 100 5
#   bgp dmzlink-bw
#   bgp soft-reconfig-backup
#  exit-address-family

# Using overridden

# Before state:
# -------------
#
# vios#sh running-config | section ^router bgp
# router bgp 65000
#  bgp log-neighbor-changes
#  bgp graceful-shutdown all neighbors 50 local-preference 100 community 100
#  snmp context snmp_con community community RO 10
#  neighbor 198.51.100.1 remote-as 10
#  neighbor 198.51.110.1 remote-as 10
#  !
#  address-family ipv4
#   snmp context snmp_con community community RO 10
#   bgp aggregate-timer 10
#   bgp slow-peer detection threshold 150
#   bgp dampening 1 1 1 1
#   network 198.51.110.10 mask 255.255.255.255 backdoor
#   aggregate-address 192.0.2.1 255.255.255.255 as-confed-set
#   neighbor 198.51.100.1 activate
#   neighbor 198.51.100.1 aigp send cost-community 100 poi igp-cost transitive
#   neighbor 198.51.100.1 slow-peer detection threshold 150
#   neighbor 198.51.110.1 activate
#   neighbor 198.51.110.1 aigp send cost-community 200 poi igp-cost transitive
#   neighbor 198.51.110.1 slow-peer detection threshold 150
#  exit-address-family
#  !
#  address-family ipv4 multicast
#   bgp aggregate-timer 10
#   bgp slow-peer detection threshold 200
#   bgp dampening 10 10 10 10
#   network 192.0.2.1 mask 255.255.255.255 route-map test
#  exit-address-family
#  !
#  address-family ipv4 mdt
#   bgp dampening 1 10 100 5
#   bgp dmzlink-bw
#   bgp soft-reconfig-backup
#  exit-address-family

- name: Override device configuration of all AF BGP with provided configuration
  cisco.ios.ios_bgp_address_family:
    config:
      as_number: 65000
      address_family:
        - afi: ipv4
          safi: multicast
          vrf: blue
          aggregate_address:
            - address: 192.0.2.1
              netmask: 255.255.255.255
              as_confed_set: true
          bgp:
            aggregate_timer: 10
            dampening:
              penalty_half_time: 10
              reuse_route_val: 10
              suppress_route_val: 100
              max_suppress: 50
            slow_peer:
              - detection:
                  threshold: 150
          neighbor:
            - address: 198.51.110.1
              activate: true
              log_neighbor_changes:
                disable: true
              maximum_prefix:
                number: 1
                threshold_value: 10
                restart: 100
              slow_peer:
                - detection:
                    threshold: 150
              remote_as: 100
              version: 4
          network:
            - address: 198.51.110.10
              mask: 255.255.255.255
              backdoor: true
        - afi: ipv6
          safi: multicast
          default_information: true
          bgp:
            aggregate_timer: 10
            dampening:
              penalty_half_time: 10
              reuse_route_val: 10
              suppress_route_val: 10
              max_suppress: 10
            slow_peer:
              - detection:
                  threshold: 200
          network:
            - address: 2001:DB8:0:3::/64
              route_map: test_ipv6
    state: overridden

# Task Output:
# ------------
#
# before:
#     address_family:
#     - afi: ipv4
#       aggregate_addresses:
#       - address: 192.0.2.1
#         as_confed_set: true
#         netmask: 255.255.255.255
#       bgp:
#         aggregate_timer: 10
#         dampening:
#           max_suppress: 10
#           penalty_half_time: 10
#           reuse_route_val: 10
#           suppress_route_val: 10
#         slow_peer_options:
#           detection:
#             threshold: 200
#       default_information: true
#       neighbors:
#       - activate: true
#         aigp:
#           send:
#             cost_community:
#               id: 100
#               poi:
#                 igp_cost: true
#                 transitive: true
#         neighbor_address: 198.51.100.1
#         slow_peer_options:
#           detection:
#             threshold: 150
#       - activate: true
#         aigp:
#           send:
#             cost_community:
#               id: 200
#               poi:
#                 igp_cost: true
#                 transitive: true
#         maximum_prefix:
#           number: 1
#           restart: 100
#           threshold_value: 10
#         neighbor_address: 198.51.110.1
#         slow_peer_options:
#           detection:
#             threshold: 150
#       networks:
#       - address: 198.51.110.10
#         backdoor: true
#         mask: 255.255.255.255
#     - afi: ipv4
#       safi: multicast
#     - afi: ipv4
#       safi: mdt
#     - afi: ipv6
#       safi: multicast
#     as_number: '65000'
# commands:
# - router bgp 65000
# - address-family ipv4
# - no default-information originate
# - no bgp aggregate-timer 10
# - no bgp dampening 10 10 10 10
# - no bgp slow-peer detection threshold 200
# - no neighbor 198.51.100.1
# - no neighbor 198.51.110.1
# - no network 198.51.110.10 mask 255.255.255.255 backdoor
# - no aggregate-address 192.0.2.1 255.255.255.255 as-confed-set
# - address-family ipv4 multicast vrf blue
# - bgp aggregate-timer 10
# - bgp dampening 10 10 100 50
# - bgp slow-peer detection threshold 150
# - neighbor 198.51.110.1 remote-as 100
# - neighbor 198.51.110.1 activate
# - neighbor 198.51.110.1 disable
# - neighbor 198.51.110.1 maximum-prefix 1 10 restart 100
# - neighbor 198.51.110.1 slow-peer detection threshold 150
# - neighbor 198.51.110.1 version 4
# - network 198.51.110.10 mask 255.255.255.255 backdoor
# - aggregate-address 192.0.2.1 255.255.255.255 as-confed-set
# - address-family ipv6 multicast
# - default-information originate
# - bgp aggregate-timer 10
# - bgp dampening 10 10 10 10
# - bgp slow-peer detection threshold 200
# after:
#   address_family:
#   - afi: ipv4
#     aggregate_addresses:
#     - address: 192.0.2.1
#       as_confed_set: true
#       netmask: 255.255.255.255
#     bgp:
#       aggregate_timer: 10
#       dampening:
#         max_suppress: 10
#         penalty_half_time: 10
#         reuse_route_val: 10
#         suppress_route_val: 10
#       slow_peer_options:
#         detection:
#           threshold: 200
#     default_information: true
#     neighbors:
#     - activate: true
#       aigp:
#         send:
#           cost_community:
#             id: 100
#             poi:
#               igp_cost: true
#               transitive: true
#       neighbor_address: 198.51.100.1
#       slow_peer_options:
#         detection:
#           threshold: 150
#     - activate: true
#       aigp:
#         send:
#           cost_community:
#             id: 200
#             poi:
#               igp_cost: true
#               transitive: true
#       maximum_prefix:
#         number: 1
#         restart: 100
#         threshold_value: 10
#       neighbor_address: 198.51.110.1
#       slow_peer_options:
#         detection:
#           threshold: 150
#     networks:
#     - address: 198.51.110.10
#       backdoor: true
#       mask: 255.255.255.255
#   - afi: ipv4
#     safi: multicast
#   - afi: ipv4
#     safi: mdt
#   - afi: ipv6
#     safi: multicast
#   as_number: '65000'

# After state:
# -------------
#
# vios#sh running-config | section ^router bgp
# router bgp 65000
#  bgp log-neighbor-changes
#  bgp graceful-shutdown all neighbors 50 local-preference 100 community 100
#  neighbor 198.51.100.1 remote-as 10
#  neighbor 198.51.110.1 remote-as 100
#  neighbor 198.51.110.1 disable-connected-check
#  neighbor 198.51.110.1 version 4
#  !
#  address-family ipv4
#   bgp aggregate-timer 10
#   bgp slow-peer detection threshold 200
#   bgp dampening 10 10 10 10
#   network 198.51.110.10 mask 255.255.255.255 backdoor
#   aggregate-address 192.0.2.1 255.255.255.255 as-confed-set
#   neighbor 198.51.100.1 activate
#   neighbor 198.51.100.1 aigp send cost-community 100 poi igp-cost transitive
#   neighbor 198.51.100.1 slow-peer detection threshold 150
#   neighbor 198.51.110.1 activate
#   neighbor 198.51.110.1 aigp send cost-community 200 poi igp-cost transitive
#   neighbor 198.51.110.1 slow-peer detection threshold 150
#   neighbor 198.51.110.1 maximum-prefix 1 10 restart 100
#   default-information originate
#  exit-address-family
#  !
#  address-family ipv4 multicast
#  exit-address-family
#  !
#  address-family ipv4 mdt
#  exit-address-family
#  !
#  address-family ipv6 multicast
#  exit-address-family

# Using deleted

# Before state:
# -------------
#
# vios#sh running-config | section ^router bgp
# router bgp 65000
#  bgp log-neighbor-changes
#  bgp graceful-shutdown all neighbors 50 local-preference 100 community 100
#  neighbor 198.51.100.1 remote-as 10
#  neighbor 198.51.110.1 remote-as 100
#  neighbor 198.51.110.1 disable-connected-check
#  neighbor 198.51.110.1 version 4
#  !
#  address-family ipv4
#   bgp aggregate-timer 10
#   bgp slow-peer detection threshold 200
#   bgp dampening 10 10 10 10
#   network 198.51.110.10 mask 255.255.255.255 backdoor
#   aggregate-address 192.0.2.1 255.255.255.255 as-confed-set
#   neighbor 198.51.100.1 activate
#   neighbor 198.51.100.1 aigp send cost-community 100 poi igp-cost transitive
#   neighbor 198.51.100.1 slow-peer detection threshold 150
#   neighbor 198.51.110.1 activate
#   neighbor 198.51.110.1 aigp send cost-community 200 poi igp-cost transitive
#   neighbor 198.51.110.1 slow-peer detection threshold 150
#   neighbor 198.51.110.1 maximum-prefix 1 10 restart 100
#   default-information originate
#  exit-address-family
#  !
#  address-family ipv4 multicast
#  exit-address-family
#  !
#  address-family ipv4 mdt
#  exit-address-family
#  !
#  address-family ipv6 multicast
#  exit-address-family

- name: "Delete AF BGP (Note: This won't delete the all configured AF BGP)"
  cisco.ios.ios_bgp_address_family:
    config:
      as_number: 65000
      address_family:
        - afi: ipv4
          safi: multicast
        - afi: ipv4
          safi: mdt
    state: deleted

# Task Output:
# ------------
#
# before:
#     address_family:
#     - afi: ipv4
#       aggregate_addresses:
#       - address: 192.0.2.1
#         as_confed_set: true
#         netmask: 255.255.255.255
#       bgp:
#         aggregate_timer: 10
#         dampening:
#           max_suppress: 10
#           penalty_half_time: 10
#           reuse_route_val: 10
#           suppress_route_val: 10
#         slow_peer_options:
#           detection:
#             threshold: 200
#       default_information: true
#       neighbors:
#       - activate: true
#         aigp:
#           send:
#             cost_community:
#               id: 100
#               poi:
#                 igp_cost: true
#                 transitive: true
#         neighbor_address: 198.51.100.1
#         slow_peer_options:
#           detection:
#             threshold: 150
#       - activate: true
#         aigp:
#           send:
#             cost_community:
#               id: 200
#               poi:
#                 igp_cost: true
#                 transitive: true
#         maximum_prefix:
#           number: 1
#           restart: 100
#           threshold_value: 10
#         neighbor_address: 198.51.110.1
#         slow_peer_options:
#           detection:
#             threshold: 150
#       networks:
#       - address: 198.51.110.10
#         backdoor: true
#         mask: 255.255.255.255
#     - afi: ipv4
#       safi: multicast
#     - afi: ipv4
#       safi: mdt
#     - afi: ipv6
#       safi: multicast
#     as_number: '65000'
# commands:
# - router bgp 65000
# - no address-family ipv4 multicast
# - no address-family ipv4 mdt
# after:
#   address_family:
#   - afi: ipv4
#     aggregate_addresses:
#     - address: 192.0.2.1
#       as_confed_set: true
#       netmask: 255.255.255.255
#     bgp:
#       aggregate_timer: 10
#       dampening:
#         max_suppress: 10
#         penalty_half_time: 10
#         reuse_route_val: 10
#         suppress_route_val: 10
#       slow_peer_options:
#         detection:
#           threshold: 200
#     default_information: true
#     neighbors:
#     - activate: true
#       aigp:
#         send:
#           cost_community:
#             id: 100
#             poi:
#               igp_cost: true
#               transitive: true
#       neighbor_address: 198.51.100.1
#       slow_peer_options:
#         detection:
#           threshold: 150
#     - activate: true
#       aigp:
#         send:
#           cost_community:
#             id: 200
#             poi:
#               igp_cost: true
#               transitive: true
#       maximum_prefix:
#         number: 1
#         restart: 100
#         threshold_value: 10
#       neighbor_address: 198.51.110.1
#       slow_peer_options:
#         detection:
#           threshold: 150
#     networks:
#     - address: 198.51.110.10
#       backdoor: true
#       mask: 255.255.255.255
#   - afi: ipv6
#     safi: multicast
#   as_number: '65000'

# After state:
# -------------
#
# vios#sh running-config | section ^router bg
# hostname#show running-config | section ^router bgp
# router bgp 65000
#  bgp log-neighbor-changes
#  bgp graceful-shutdown all neighbors 50 local-preference 100 community 100
#  neighbor 198.51.100.1 remote-as 10
#  neighbor 198.51.110.1 remote-as 100
#  neighbor 198.51.110.1 disable-connected-check
#  neighbor 198.51.110.1 version 4
#  !
#  address-family ipv4
#   bgp aggregate-timer 10
#   bgp slow-peer detection threshold 200
#   bgp dampening 10 10 10 10
#   network 198.51.110.10 mask 255.255.255.255 backdoor
#   aggregate-address 192.0.2.1 255.255.255.255 as-confed-set
#   neighbor 198.51.100.1 activate
#   neighbor 198.51.100.1 aigp send cost-community 100 poi igp-cost transitive
#   neighbor 198.51.100.1 slow-peer detection threshold 150
#   neighbor 198.51.110.1 activate
#   neighbor 198.51.110.1 aigp send cost-community 200 poi igp-cost transitive
#   neighbor 198.51.110.1 slow-peer detection threshold 150
#   neighbor 198.51.110.1 maximum-prefix 1 10 restart 100
#   default-information originate
#  exit-address-family
#  !
#  address-family ipv6 multicast
#  exit-address-family

# Using Deleted without any config passed (delete all)

# Before state:
# -------------
#
# vios#sh running-config | section ^router bg
# hostname#show running-config | section ^router bgp
# router bgp 65000
#  bgp log-neighbor-changes
#  bgp graceful-shutdown all neighbors 50 local-preference 100 community 100
#  neighbor 198.51.100.1 remote-as 10
#  neighbor 198.51.110.1 remote-as 100
#  neighbor 198.51.110.1 disable-connected-check
#  neighbor 198.51.110.1 version 4
#  !
#  address-family ipv4
#   bgp aggregate-timer 10
#   bgp slow-peer detection threshold 200
#   bgp dampening 10 10 10 10
#   network 198.51.110.10 mask 255.255.255.255 backdoor
#   aggregate-address 192.0.2.1 255.255.255.255 as-confed-set
#   neighbor 198.51.100.1 activate
#   neighbor 198.51.100.1 aigp send cost-community 100 poi igp-cost transitive
#   neighbor 198.51.100.1 slow-peer detection threshold 150
#   neighbor 198.51.110.1 activate
#   neighbor 198.51.110.1 aigp send cost-community 200 poi igp-cost transitive
#   neighbor 198.51.110.1 slow-peer detection threshold 150
#   neighbor 198.51.110.1 maximum-prefix 1 10 restart 100
#   default-information originate
#  exit-address-family
#  !
#  address-family ipv6 multicast
#  exit-address-family

- name: "Delete ALL of configured AF BGP"
  cisco.ios.ios_bgp_address_family:
    state: deleted

# Task Output:
# ------------
#
# before:
#   address_family:
#   - afi: ipv4
#     aggregate_addresses:
#     - address: 192.0.2.1
#       as_confed_set: true
#       netmask: 255.255.255.255
#     bgp:
#       aggregate_timer: 10
#       dampening:
#         max_suppress: 10
#         penalty_half_time: 10
#         reuse_route_val: 10
#         suppress_route_val: 10
#       slow_peer_options:
#         detection:
#           threshold: 200
#     default_information: true
#     neighbors:
#     - activate: true
#       aigp:
#         send:
#           cost_community:
#             id: 100
#             poi:
#               igp_cost: true
#               transitive: true
#       neighbor_address: 198.51.100.1
#       slow_peer_options:
#         detection:
#           threshold: 150
#     - activate: true
#       aigp:
#         send:
#           cost_community:
#             id: 200
#             poi:
#               igp_cost: true
#               transitive: true
#       maximum_prefix:
#         number: 1
#         restart: 100
#         threshold_value: 10
#       neighbor_address: 198.51.110.1
#       slow_peer_options:
#         detection:
#           threshold: 150
#     networks:
#     - address: 198.51.110.10
#       backdoor: true
#       mask: 255.255.255.255
#   - afi: ipv6
#     safi: multicast
#   as_number: '65000'
# commands:
# - router bgp 65000
# - no address-family ipv4
# - no address-family ipv6 multicast
# after:
#   address_family:
#   - afi: ipv4
#     bgp:
#       aggregate_timer: 10
#   as_number: '65000'

# After state:
# -------------
#
# vios#sh running-config | section ^router bgp
# router bgp 65000
#  bgp log-neighbor-changes
#  bgp graceful-shutdown all neighbors 50 local-preference 100 community 100
#  neighbor 198.51.100.1 remote-as 10
#  neighbor 198.51.110.1 remote-as 100
#  neighbor 198.51.110.1 disable-connected-check
#  neighbor 198.51.110.1 version 4
#  !
#  address-family ipv4
#   bgp aggregate-timer 10
#   no neighbor 198.51.100.1 activate
#   no neighbor 198.51.110.1 activate
#  exit-address-family

# Using gathered

# Before state:
# -------------
#
# vios#sh running-config | section ^router bgp
# router bgp 65000
#  bgp log-neighbor-changes
#  bgp graceful-shutdown all neighbors 50 local-preference 100 community 100
#  snmp context snmp_con community community RO 10
#  neighbor 198.51.100.1 remote-as 10
#  !
#  address-family ipv4
#   snmp context snmp_con community community RO 10
#   bgp aggregate-timer 10
#   bgp slow-peer detection threshold 150
#   bgp dampening 1 1 1 1
#   network 198.51.110.10 mask 255.255.255.255 backdoor
#   aggregate-address 192.0.2.1 255.255.255.255 as-confed-set
#   neighbor 198.51.100.1 activate
#   neighbor 198.51.100.1 aigp send cost-community 100 poi igp-cost transitive
#   neighbor 198.51.100.1 slow-peer detection threshold 150
#  exit-address-family
#  !
#  address-family ipv4 multicast
#   table-map test_tableMap filter
#   network 198.51.111.11 mask 255.255.255.255 route-map test
#   aggregate-address 192.0.3.1 255.255.255.255 as-confed-set
#   default-metric 12
#   distance bgp 10 10 100
#  exit-address-family
#  !
#  address-family ipv4 mdt
#   bgp dampening 1 10 100 5
#   bgp dmzlink-bw
#   bgp soft-reconfig-backup
#  exit-address-family

- name: Gather listed AF BGP with provided configurations
  cisco.ios.ios_bgp_address_family:
    config:
    state: gathered

# Task Output:
# ------------
#
# gathered:
#     address_family:
#     - afi: ipv4
#       aggregate_addresses:
#       - address: 192.0.2.1
#         as_confed_set: true
#         netmask: 255.255.255.255
#       bgp:
#         aggregate_timer: 10
#         dampening:
#           max_suppress: 1
#           penalty_half_time: 1
#           reuse_route_val: 1
#           suppress_route_val: 1
#         slow_peer_options:
#           detection:
#             threshold: 150
#       neighbors:
#       - activate: true
#         aigp:
#           send:
#             cost_community:
#               id: 100
#               poi:
#                 igp_cost: true
#                 transitive: true
#         neighbor_address: 198.51.100.1
#         slow_peer_options:
#           detection:
#             threshold: 150
#       networks:
#       - address: 198.51.110.10
#         backdoor: true
#         mask: 255.255.255.255
#       snmp:
#         context:
#           community:
#             acl: '10'
#             ro: true
#             snmp_community: community
#           name: snmp_con
#     - afi: ipv4
#       aggregate_addresses:
#       - address: 192.0.3.1
#         as_confed_set: true
#         netmask: 255.255.255.255
#       default_metric: 12
#       distance:
#         external: 10
#         internal: 10
#         local: 100
#       networks:
#       - address: 198.51.111.11
#         mask: 255.255.255.255
#         route_map: test
#       safi: multicast
#       table_map:
#         filter: true
#         name: test_tableMap
#     - afi: ipv4
#       bgp:
#         dampening:
#           max_suppress: 5
#           penalty_half_time: 1
#           reuse_route_val: 10
#           suppress_route_val: 100
#         dmzlink_bw: true
#         soft_reconfig_backup: true
#       safi: mdt
#     as_number: '65000'

# Using rendered

- name: Rendered the provided configuration with the existing running configuration
  cisco.ios.ios_bgp_address_family:
    config:
      as_number: 65000
      address_family:
        - afi: ipv4
          safi: multicast
          vrf: blue
          aggregate_address:
            - address: 192.0.2.1
              netmask: 255.255.255.255
              as_confed_set: true
          bgp:
            aggregate_timer: 10
            dampening:
              penalty_half_time: 1
              reuse_route_val: 1
              suppress_route_val: 1
              max_suppress: 1
            slow_peer:
              - detection:
                  threshold: 150
          neighbor:
            - address: 198.51.100.1
              aigp:
                send:
                  cost_community:
                    id: 100
                    poi:
                      igp_cost: true
                      transitive: true
              slow_peer:
                - detection:
                    threshold: 150
              remote_as: 10
              route_maps:
                - name: test-route
                  out: true
              route_server_client: true
          network:
            - address: 198.51.110.10
              mask: 255.255.255.255
              backdoor: true
          snmp:
            context:
              name: snmp_con
              community:
                snmp_community: community
                ro: true
                acl: 10
        - afi: ipv4
          safi: mdt
          bgp:
            dmzlink_bw: true
            dampening:
              penalty_half_time: 1
              reuse_route_val: 10
              suppress_route_val: 100
              max_suppress: 5
            soft_reconfig_backup: true
    state: rendered

# Task Output:
# ------------
#
# rendered:
# - router bgp 65000
# - address-family ipv4 multicast vrf blue
# - bgp aggregate-timer 10
# - bgp dampening 1 1 1 1
# - bgp slow-peer detection threshold 150
# - snmp context snmp_con community community ro 10
# - neighbor 198.51.100.1 remote-as 10
# - neighbor 198.51.100.1 aigp send cost-community 100 poi igp-cost transitive
# - neighbor 198.51.100.1 slow-peer detection threshold 150
# - network 198.51.110.10 mask 255.255.255.255 backdoor
# - aggregate-address 192.0.2.1 255.255.255.255 as-confed-set
# - address-family ipv4 mdt
# - bgp dmzlink-bw
# - bgp soft-reconfig-backup
# - bgp dampening 1 10 100 5

# Using parsed

# File: parsed.cfg
# ----------------
# router bgp 65000
#  bgp log-neighbor-changes
#  bgp nopeerup-delay cold-boot 20
#  !
#  address-family ipv4 multicast
#   table-map test_tableMap filter
#   network 1.1.1.1 mask 255.255.255.255 route-map test
#   aggregate-address 192.0.3.1 255.255.255.255 as-confed-set
#   default-metric 12
#   distance bgp 10 10 100
#  exit-address-family
#  !
#  address-family ipv4 mdt
#   bgp dampening 1 10 100 5
#   bgp dmzlink-bw
#   bgp soft-reconfig-backup
#  exit-address-family
#  !

- name: Parse the commands for provided configuration
  cisco.ios.ios_bgp_address_family:
    running_config: "{{ lookup('file', 'parsed.cfg') }}"
    state: parsed

# Task Output:
# ------------
#
# parsed:
#     address_family:
#     - afi: ipv4
#       aggregate_addresses:
#       - address: 192.0.2.1
#         as_confed_set: true
#         netmask: 255.255.255.255
#       bgp:
#         aggregate_timer: 10
#         dampening:
#           max_suppress: 1
#           penalty_half_time: 1
#           reuse_route_val: 1
#           suppress_route_val: 1
#         slow_peer_options:
#           detection:
#             threshold: 150
#       neighbors:
#       - activate: true
#         aigp:
#           send:
#             cost_community:
#               id: 100
#               poi:
#                 igp_cost: true
#                 transitive: true
#         neighbor_address: 198.51.100.1
#         slow_peer_options:
#           detection:
#             threshold: 150
#       networks:
#       - address: 198.51.110.10
#         backdoor: true
#         mask: 255.255.255.255
#       snmp:
#         context:
#           community:
#             acl: '10'
#             ro: true
#             snmp_community: community
#           name: snmp_con
#     - afi: ipv4
#       aggregate_addresses:
#       - address: 192.0.3.1
#         as_confed_set: true
#         netmask: 255.255.255.255
#       default_metric: 12
#       distance:
#         external: 10
#         internal: 10
#         local: 100
#       networks:
#       - address: 198.51.111.11
#         mask: 255.255.255.255
#         route_map: test
#       safi: multicast
#       table_map:
#         filter: true
#         name: test_tableMap
#     - afi: ipv4
#       bgp:
#         dampening:
#           max_suppress: 5
#           penalty_half_time: 1
#           reuse_route_val: 10
#           suppress_route_val: 100
#         dmzlink_bw: true
#         soft_reconfig_backup: true
#       safi: mdt
#     as_number: '65000'

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

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

Ключ

Описание

after

dictionary

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

Возвращается: если конфигурация изменена

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

before

dictionary

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

Возвращается: если значение 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

Пример: ["router bgp 65000", "address-family ipv4 multicast", "table-map test_tableMap filter", "network 1.1.1.1 mask 255.255.255.255 route-map test", "aggregate-address 192.0.3.1 255.255.255.255 as-confed-set"]

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

Пример: ["router bgp 65000", "address-family ipv4 multicast", "table-map test_tableMap filter", "network 1.1.1.1 mask 255.255.255.255 route-map test", "aggregate-address 192.0.3.1 255.255.255.255 as-confed-set"]

Авторы

  • 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_bgp_address_family_module.html

Spec-Zone.ru

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