Модуль cisco.nxos.nxos_acls – модуль ресурсов ACL
Примечание
Этот модуль является частью коллекции cisco.nxos (версия 8.1.0).
У вас, возможно, уже установлена эта коллекция, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Чтобы установить её, используйте: ansible-galaxy collection install cisco.nxos.
Чтобы использовать её в playbook, укажите: cisco.nxos.nxos_acls.
Добавлен в cisco.nxos 1.0.0
Обзор
- Управление именованными IP ACL на платформе Cisco NX-OS
Псевдонимы: acls
Параметры
Параметр | Комментарии |
|---|---|
config list / elements=dictionary | Словарь параметров ACL. |
|
acls list / elements=dictionary |
Список ACL. |
|
aces list / elements=dictionary |
Записи внутри ACL. |
|
destination dictionary |
Укажите адрес назначения пакета. |
|
address string |
Сеть назначения. |
|
any boolean |
Любой адрес назначения. Варианты:
|
|
host string |
IP-адрес хоста. |
|
port_protocol dictionary |
Укажите порт назначения или протокол (только для TCP и UDP). |
|
eq string |
Совпадение только с пакетами с заданным номером порта. |
|
gt string |
Совпадение только с пакетами с большим номером порта. |
|
lt string |
Совпадение только с пакетами с меньшим номером порта. |
|
neq string |
Совпадение только с пакетами, не имеющими заданный номер порта. |
|
range dictionary |
Совпадение только с пакетами в диапазоне номеров портов. |
|
end string |
Укажите конец диапазона портов. |
|
start string |
Укажите начало диапазона портов. |
|
prefix string |
Префикс сети назначения. Только для префиксов со значением меньше 31 для ipv4 и 127 для ipv6. Префиксы 32 (ipv4) и 128 (ipv6) должны быть указаны в ключе ‘host’. |
|
wildcard_bits string |
Маска подсети. |
|
dscp string |
Совпадение пакетов с заданным значением DSCP. |
|
fragments boolean |
Проверка фрагментов, отличных от начальных. Варианты:
|
|
grant string |
Действие, которое должно быть применено к правилу. Варианты:
|
|
log boolean |
Регистрировать совпадения с этой записью. Варианты:
|
|
precedence string |
Совпадение пакетов с заданным значением приоритета. |
|
protocol string |
Укажите протокол. |
|
protocol_options dictionary |
Все возможные дополнительные параметры для выбранного протокола. |
|
icmp dictionary |
Параметры протокола ICMP. |
|
administratively_prohibited boolean |
Административно запрещено Choices:
|
|
alternate_address boolean |
Альтернативный адрес Choices:
|
|
conversion_error boolean |
Преобразование датограмм Choices:
|
|
dod_host_prohibited boolean |
Хост запрещен Choices:
|
|
dod_net_prohibited boolean |
Сеть запрещена Choices:
|
|
echo boolean |
Эхо (ping) Choices:
|
|
echo_reply boolean |
Ответ эхо Choices:
|
|
echo_request boolean |
Запрос эхо (ping) Choices:
|
|
general_parameter_problem boolean |
Проблема с параметром Choices:
|
|
host_isolated boolean |
Хост изолирован Choices:
|
|
host_precedence_unreachable boolean |
Хост недоступен для приоритета Choices:
|
|
host_redirect boolean |
Перенаправление хоста Choices:
|
|
host_tos_redirect boolean |
Перенаправление хоста для TOS Choices:
|
|
host_tos_unreachable boolean |
Хост недоступен для TOS Choices:
|
|
host_unknown boolean |
Хост неизвестен Choices:
|
|
host_unreachable boolean |
Хост недоступен Choices:
|
|
information_reply boolean |
Ответы информации Choices:
|
|
information_request boolean |
Запросы информации Choices:
|
|
mask_reply boolean |
Ответы маски Choices:
|
|
mask_request boolean |
Запросы маски Choices:
|
|
message_code integer |
Код сообщения ICMP |
|
message_type integer |
Тип сообщения ICMP |
|
mobile_redirect boolean |
Перенаправление мобильного хоста Choices:
|
|
net_redirect boolean |
Перенаправление сети Choices:
|
|
net_tos_redirect boolean |
Перенаправление сети для TOS Choices:
|
|
net_tos_unreachable boolean |
Сеть недоступна для TOS Choices:
|
|
net_unreachable boolean |
Сеть недоступна Choices:
|
|
network_unknown boolean |
Неизвестная сеть Choices:
|
|
no_room_for_option boolean |
Требуется параметр, но места нет Choices:
|
|
option_missing boolean |
Требуется параметр, но он отсутствует Choices:
|
|
packet_too_big boolean |
Необходима фрагментация, а DF установлен Choices:
|
|
parameter_problem boolean |
Все проблемы с параметрами Choices:
|
|
port_unreachable boolean |
Порт недоступен Choices:
|
|
precedence_unreachable boolean |
Превышение допустимого уровня приоритета Choices:
|
|
protocol_unreachable boolean |
Протокол недоступен Choices:
|
|
reassembly_timeout boolean |
Превышение времени ожидания повторной сборки Choices:
|
|
redirect boolean |
Все перенаправления Choices:
|
|
router_advertisement boolean |
Объявления обнаружения маршрутизатора Choices:
|
|
router_solicitation boolean |
Запросы маршрутизатора Варианты:
|
|
source_quench boolean |
Запросы прекращения Варианты:
|
|
source_route_failed boolean |
Неудача маршрутизации Варианты:
|
|
time_exceeded boolean |
Превышение времени Варианты:
|
|
timestamp_reply boolean |
Ответы со временем Варианты:
|
|
timestamp_request boolean |
Запросы со временем Варианты:
|
|
traceroute boolean |
Traceroute Варианты:
|
|
ttl_exceeded boolean |
Превышение TTL Варианты:
|
|
unreachable boolean |
Недоступность Варианты:
|
|
icmpv6 dictionary |
Параметры протокола ICMPv6. |
|
beyond_scope boolean |
Предназначение за пределами области. Варианты:
|
|
destination_unreachable boolean |
Адрес назначения недоступен. Варианты:
|
|
echo_reply boolean |
Ответ эха. Варианты:
|
|
echo_request boolean |
Запрос эха (ping). Варианты:
|
|
fragments boolean |
Проверка фрагментов, не являющихся начальными. Варианты:
|
|
header boolean |
Проблема с заголовком параметра. Варианты:
|
|
hop_limit boolean |
Превышение предела переходов в транзите. Варианты:
|
|
mld_query boolean |
Запрос Multicast Listener Discovery. Варианты:
|
|
mld_reduction boolean |
Сокращение Multicast Listener Discovery. Варианты:
|
|
mld_report boolean |
Отчет о обнаружении многоадресного слушателя. Choices:
|
|
mldv2 boolean |
Протокол обнаружения многоадресного слушателя. Choices:
|
|
nd_na boolean |
Объявления соседа обнаружения соседа. Choices:
|
|
nd_ns boolean |
Запросы обнаружения соседа. Choices:
|
|
next_header boolean |
Проблемы с последующим заголовком. Choices:
|
|
no_admin boolean |
Администрирование запрещено для назначения. Choices:
|
|
no_route boolean |
Нет маршрута к назначению. Choices:
|
|
packet_too_big boolean |
Пакет слишком большой. Choices:
|
|
parameter_option boolean |
Проблемы с параметром. Choices:
|
|
parameter_problem boolean |
Все проблемы с параметрами. Choices:
|
|
port_unreachable boolean |
Порт недоступен. Choices:
|
|
reassembly_timeout boolean |
Превышено время ожидания сборки. Choices:
|
|
renum_command boolean |
Команда переименования маршрутизатора. Choices:
|
|
renum_result boolean |
Результат переименования маршрутизатора. Choices:
|
|
renum_seq_number boolean |
Сброс номера последовательности переименования маршрутизатора. Choices:
|
|
router_advertisement boolean |
Объявления маршрутизатора обнаружения соседа. Choices:
|
|
router_renumbering boolean |
Все переименования маршрутизатора. Choices:
|
|
router_solicitation boolean |
Запросы маршрутизатора обнаружения соседа. Choices:
|
|
telemetry_path boolean |
Включен IPT. Choices:
|
|
telemetry_queue boolean |
Поток интереса для BDC/HDC. Choices:
|
|
time_exceeded boolean |
Все истекшие время. Choices:
|
|
unreachable boolean |
Все недоступные. Choices:
|
|
igmp dictionary |
Параметры протокола IGMP. |
|
dvmrp boolean |
Distance Vector Multicast Routing Protocol Choices:
|
|
host_query boolean |
Запрос узла Choices:
|
|
host_report boolean |
Отчет узла Choices:
|
|
tcp dictionary |
Флаги TCP. |
|
ack boolean |
Сопоставление по биту ACK Choices:
|
|
established boolean |
Сопоставление установленных соединений Choices:
|
|
fin boolean |
Сопоставление по биту FIN Choices:
|
|
psh boolean |
Сопоставление по биту PSH Choices:
|
|
rst boolean |
Сопоставление по биту RST Choices:
|
|
syn boolean |
Сопоставление по биту SYN Choices:
|
|
urg boolean |
Сопоставление по биту URG Choices:
|
|
remark string |
Комментарий к записи списка доступа. |
|
sequence integer |
Порядковый номер. |
|
source dictionary |
Укажите источник пакета. |
|
address string |
Исходный сетевой адрес. |
|
any boolean |
Любой исходный адрес. Choices:
|
|
host string |
IP-адрес узла. |
|
port_protocol dictionary |
Укажите порт назначения или протокол (только для TCP и UDP). |
|
eq string |
Совпадение только пакетов на заданном номере порта. |
|
gt string |
Совпадение только пакетов с большим номером порта. |
|
lt string |
Совпадение только пакетов с меньшим номером порта. |
|
neq string |
Совпадение только пакетов, не находящихся на заданном номере порта. |
|
range dictionary |
Совпадение только пакетов в диапазоне номеров портов. |
|
end string |
Указывает конец диапазона портов. |
|
start string |
Указывает начало диапазона портов. |
|
prefix string |
Префикс исходной сети. Только для префиксов с маской меньше 31 для IPv4 и 127 для IPv6. Префиксы с маской 32 (IPv4) и 128 (IPv6) должны быть указаны в ключе «host». |
|
wildcard_bits string |
Маска подсети источника. |
|
name string / обязательно |
Имя ACL. |
|
afi string / обязательно |
Индикатор семейства адресов (AFI) для ACL. Варианты:
|
running_config string | Этот параметр используется только со значением parsed. Значение этого параметра должно соответствовать выводу устройства NX-OS, полученному при выполнении команды show running-config | section ‘ip(v6* access-list). Состояние parsed считывает конфигурацию из параметра |
state string | Состояние, в котором должна остаться конфигурация Варианты:
|
Примечания
Примечание
- Проверено на NX-OS 7.3.(0)D1(1) на VIRL
- Не поддерживается для Cisco MDS
- Поскольку NX-OS позволяет повторно настроить правило с различными номерами последовательности, ожидается, что пользователь предоставит номера последовательности для записей управления доступом, чтобы сохранить идемпотентность. Если номер последовательности не указан, устройство добавит правило как новое правило.
Примеры
# Using merged
# Before state:
# -------------
# nxos-9k# show running-config | section '^ip(v6)* access-list'
- name: Merge provided ACLs configuration with device configuration
cisco.nxos.nxos_acls:
state: merged
config:
- afi: ipv4
acls:
- name: ACL1v4
aces:
- grant: deny
destination:
address: 192.0.2.64
wildcard_bits: 0.0.0.255
source:
any: true
port_protocol:
lt: 55
protocol: tcp
protocol_options:
tcp:
ack: true
fin: true
sequence: 50
- afi: ipv6
acls:
- name: ACL1v6
aces:
- grant: permit
sequence: 10
source:
any: true
destination:
prefix: 2001:db8:12::/32
protocol: sctp
# Task Output
# -----------
# before: []
#
# commands:
# - ip access-list ACL1v4
# - 50 deny tcp any lt 55 192.0.2.64 0.0.0.255 ack fin
# - ipv6 access-list ACL1v6
# - 10 permit sctp any 2001:db8:12::/32
#
# after:
# - acls:
# - aces:
# - destination:
# prefix: 2001:db8:12::/32
# grant: permit
# protocol: sctp
# sequence: 10
# source:
# any: true
# name: ACL1v6
# afi: ipv6
# - acls:
# - aces:
# - destination:
# address: 192.0.2.64
# wildcard_bits: 0.0.0.255
# grant: deny
# protocol: tcp
# protocol_options:
# tcp:
# ack: true
# fin: true
# sequence: 50
# source:
# any: true
# port_protocol:
# lt: '55'
# name: ACL1v4
# afi: ipv4
# After state:
# ------------
#
# nxos-9k# show running-config | section '^ip(v6)* access-list'
# ip access-list ACL1v4
# 50 deny tcp any lt 55 192.0.2.64 0.0.0.255 ack fin
# ipv6 access-list ACL1v6
# 10 permit sctp any any
# Using replaced
# Before state:
# ----------------
# nxos-9k# show running-config | section '^ip(v6)* access-list'
# ip access-list ACL1v4
# 10 permit ip any any
# 20 deny udp any any
# ip access-list ACL2v4
# 10 permit ahp 192.0.2.0 0.0.0.255 any
# ipv6 access-list ACL1v6
# 10 permit sctp any any
# 20 remark IPv6 ACL
# ipv6 access-list ACL2v6
# 10 deny ipv6 any 2001:db8:3000::/36
# 20 permit tcp 2001:db8:2000:2::2/128 2001:db8:2000:ab::2/128
- name: Replace existing ACL configuration with provided configuration
cisco.nxos.nxos_acls:
config:
- afi: ipv4
- afi: ipv6
acls:
- name: ACL1v6
aces:
- sequence: 20
grant: permit
source:
any: true
destination:
any: true
protocol: pim
- remark: Replaced ACE
- name: ACL2v6
state: replaced
# Task Output
# -----------
# before:
# - acls:
# - aces:
# - destination:
# any: true
# grant: permit
# protocol: sctp
# sequence: 10
# source:
# any: true
# - remark: IPv6 ACL
# sequence: 20
# name: ACL1v6
# - aces:
# - destination:
# prefix: 2001:db8:3000::/36
# grant: deny
# protocol: ipv6
# sequence: 10
# source:
# any: true
# - destination:
# host: 2001:db8:2000:ab::2
# grant: permit
# protocol: tcp
# sequence: 20
# source:
# host: 2001:db8:2000:2::2
# name: ACL2v6
# afi: ipv6
# - acls:
# - aces:
# - destination:
# any: true
# grant: permit
# protocol: ip
# sequence: 10
# source:
# any: true
# - destination:
# any: true
# grant: deny
# protocol: udp
# sequence: 20
# source:
# any: true
# name: ACL1v4
# - aces:
# - destination:
# any: true
# grant: permit
# protocol: ahp
# sequence: 10
# source:
# address: 192.0.2.0
# wildcard_bits: 0.0.0.255
# name: ACL2v4
# afi: ipv4
#
# commands:
# - no ip access-list ACL1v4
# - no ip access-list ACL2v4
# - ipv6 access-list ACL1v6
# - no 10 permit sctp any any
# - no 20 remark IPv6 ACL
# - remark Replaced ACE
# - 20 permit pim any any
# - ipv6 access-list ACL2v6
# - no 10 deny ipv6 any 2001:db8:3000::/36
# - no 20 permit tcp host 2001:db8:2000:2::2 host 2001:db8:2000:ab::2
#
# after:
# - acls:
# - aces:
# - remark: Replaced ACE
# sequence: 10
# - destination:
# any: true
# grant: permit
# protocol: pim
# sequence: 20
# source:
# any: true
# name: ACL1v6
# - name: ACL2v6
# afi: ipv6
# After state:
# ---------------
# nxos-9k# show running-config | section '^ip(v6)* access-list'
# ipv6 access-list ACL1v6
# 10 remark Replaced ACE
# 20 permit pim any any
# ipv6 access-list ACL2v6
# Using overridden
# Before state:
# ----------------
# nxos-9k# show running-config | section '^ip(v6)* access-list'
# ip access-list ACL1v4
# 10 permit ip any any
# 20 deny udp any any
# ip access-list ACL2v4
# 10 permit ahp 192.0.2.0 0.0.0.255 any
# ipv6 access-list ACL1v6
# 10 permit sctp any any
# 20 remark IPv6 ACL
# ipv6 access-list ACL2v6
# 10 deny ipv6 any 2001:db8:3000::/36
# 20 permit tcp 2001:db8:2000:2::2/128 2001:db8:2000:ab::2/128
- name: Override existing configuration with provided configuration
cisco.nxos.nxos_acls:
config:
- afi: ipv4
acls:
- name: NewACL
aces:
- grant: deny
source:
address: 192.0.2.0
wildcard_bits: 0.0.255.255
destination:
any: true
protocol: eigrp
- remark: Example for overridden state
state: overridden
# Task Output
# -----------
#
# before:
# - acls:
# - aces:
# - destination:
# any: true
# grant: permit
# protocol: sctp
# sequence: 10
# source:
# any: true
# - remark: IPv6 ACL
# sequence: 20
# name: ACL1v6
# - aces:
# - destination:
# prefix: 2001:db8:3000::/36
# grant: deny
# protocol: ipv6
# sequence: 10
# source:
# any: true
# - destination:
# host: 2001:db8:2000:ab::2
# grant: permit
# protocol: tcp
# sequence: 20
# source:
# host: 2001:db8:2000:2::2
# name: ACL2v6
# afi: ipv6
# - acls:
# - aces:
# - destination:
# any: true
# grant: permit
# protocol: ip
# sequence: 10
# source:
# any: true
# - destination:
# any: true
# grant: deny
# protocol: udp
# sequence: 20
# source:
# any: true
# name: ACL1v4
# - aces:
# - destination:
# any: true
# grant: permit
# protocol: ahp
# sequence: 10
# source:
# address: 192.0.2.0
# wildcard_bits: 0.0.0.255
# name: ACL2v4
# afi: ipv4
#
# commands:
# - no ipv6 access-list ACL1v6
# - no ipv6 access-list ACL2v6
# - no ip access-list ACL1v4
# - no ip access-list ACL2v4
# - ip access-list NewACL
# - deny eigrp 192.0.2.0 0.0.255.255 any
# - remark Example for overridden state
#
# after:
# - acls:
# - aces:
# - destination:
# any: true
# grant: deny
# protocol: eigrp
# sequence: 10
# source:
# address: 192.0.2.0
# wildcard_bits: 0.0.255.255
# - remark: Example for overridden state
# sequence: 20
# name: NewACL
# afi: ipv4
# After state:
# ------------
# nxos-9k# show running-config | section '^ip(v6)* access-list'
# ip access-list NewACL
# 10 deny eigrp 192.0.2.0 0.0.255.255 any
# 20 remark Example for overridden state
# Using deleted - delete all
#
# Before state:
# -------------
# nxos-9k# show running-config | section '^ip(v6)* access-list'
# ip access-list ACL1v4
# 10 permit ip any any
# 20 deny udp any any
# ip access-list ACL2v4
# 10 permit ahp 192.0.2.0 0.0.0.255 any
# ip access-list ACL1v6
# 10 permit sctp any any
# 20 remark IPv6 ACL
# ip access-list ACL2v6
# 10 deny ipv6 any 2001:db8:3000::/36
# 20 permit tcp 2001:db8:2000:2::2/128 2001:db8:2000:ab::2/128
- name: Delete all ACLs
cisco.nxos.nxos_acls:
state: deleted
# Task Output
# -----------
#
# before:
# - acls:
# - aces:
# - destination:
# any: true
# grant: permit
# protocol: sctp
# sequence: 10
# source:
# any: true
# - remark: IPv6 ACL
# sequence: 20
# name: ACL1v6
# - aces:
# - destination:
# prefix: 2001:db8:3000::/36
# grant: deny
# protocol: ipv6
# sequence: 10
# source:
# any: true
# - destination:
# host: 2001:db8:2000:ab::2
# grant: permit
# protocol: tcp
# sequence: 20
# source:
# host: 2001:db8:2000:2::2
# name: ACL2v6
# afi: ipv6
# - acls:
# - aces:
# - destination:
# any: true
# grant: permit
# protocol: ip
# sequence: 10
# source:
# any: true
# - destination:
# any: true
# grant: deny
# protocol: udp
# sequence: 20
# source:
# any: true
# name: ACL1v4
# - aces:
# - destination:
# any: true
# grant: permit
# protocol: ahp
# sequence: 10
# source:
# address: 192.0.2.0
# wildcard_bits: 0.0.0.255
# name: ACL2v4
# afi: ipv4
#
# commands:
# - no ip access-list ACL1v4
# - no ip access-list ACL2v4
# - no ipv6 access-list ACL1v6
# - no ipv6 access-list ACL2v6
#
# after: []
# After state:
# -----------
# nxos-9k# show running-config | section '^ip(v6)* access-list'
#
# Using deleted - delete AFI
# Before state:
# -------------
# nxos-9k# show running-config | section '^ip(v6)* access-list'
# ip access-list ACL1v4
# 10 permit ip any any
# 20 deny udp any any
# ip access-list ACL2v4
# 10 permit ahp 192.0.2.0 0.0.0.255 any
# ip access-list ACL1v6
# 10 permit sctp any any
# 20 remark IPv6 ACL
# ip access-list ACL2v6
# 10 deny ipv6 any 2001:db8:3000::/36
# 20 permit tcp 2001:db8:2000:2::2/128 2001:db8:2000:ab::2/128
- name: Delete all ACLs in given AFI
cisco.nxos.nxos_acls:
config:
- afi: ipv4
state: deleted
# Task Output
# -----------
#
# before:
# - acls:
# - aces:
# - destination:
# any: true
# grant: permit
# protocol: sctp
# sequence: 10
# source:
# any: true
# - remark: IPv6 ACL
# sequence: 20
# name: ACL1v6
# - aces:
# - destination:
# prefix: 2001:db8:3000::/36
# grant: deny
# protocol: ipv6
# sequence: 10
# source:
# any: true
# - destination:
# host: 2001:db8:2000:ab::2
# grant: permit
# protocol: tcp
# sequence: 20
# source:
# host: 2001:db8:2000:2::2
# name: ACL2v6
# afi: ipv6
# - acls:
# - aces:
# - destination:
# any: true
# grant: permit
# protocol: ip
# sequence: 10
# source:
# any: true
# - destination:
# any: true
# grant: deny
# protocol: udp
# sequence: 20
# source:
# any: true
# name: ACL1v4
# - aces:
# - destination:
# any: true
# grant: permit
# protocol: ahp
# sequence: 10
# source:
# address: 192.0.2.0
# wildcard_bits: 0.0.0.255
# name: ACL2v4
# afi: ipv4
#
# commands:
# - no ip access-list ACL1v4
# - no ip access-list ACL2v4
#
# after:
# - acls:
# - aces:
# - destination:
# any: true
# grant: permit
# protocol: sctp
# sequence: 10
# source:
# any: true
# - remark: IPv6 ACL
# sequence: 20
# name: ACL1v6
# - aces:
# - destination:
# prefix: 2001:db8:3000::/36
# grant: deny
# protocol: ipv6
# sequence: 10
# source:
# any: true
# - destination:
# host: 2001:db8:2000:ab::2
# grant: permit
# protocol: tcp
# sequence: 20
# source:
# host: 2001:db8:2000:2::2
# name: ACL2v6
# afi: ipv6
# After state:
# ------------
# nxos-9k# show running-config | section '^ip(v6)* access-list'
# ip access-list ACL1v6
# 10 permit sctp any any
# 20 remark IPv6 ACL
# ip access-list ACL2v6
# 10 deny ipv6 any 2001:db8:3000::/36
# 20 permit tcp 2001:db8:2000:2::2/128 2001:db8:2000:ab::2/128
# Using deleted - delete ACLs
# Before state:
# -------------
# nxos-9k# show running-config | section '^ip(v6)* access-list'
# ip access-list ACL1v4
# 10 permit ip any any
# 20 deny udp any any
# ip access-list ACL2v4
# 10 permit ahp 192.0.2.0 0.0.0.255 any
# ipv6 access-list ACL1v6
# 10 permit sctp any any
# 20 remark IPv6 ACL
# ipv6 access-list ACL2v6
# 10 deny ipv6 any 2001:db8:3000::/36
# 20 permit tcp 2001:db8:2000:2::2/128 2001:db8:2000:ab::2/128
- name: Delete specific ACLs
cisco.nxos.nxos_acls:
state: deleted
config:
- afi: ipv4
acls:
- name: ACL1v4
- name: ACL2v4
- afi: ipv6
acls:
- name: ACL1v6
# Task Output
# -----------
#
# before:
# - acls:
# - aces:
# - destination:
# any: true
# grant: permit
# protocol: sctp
# sequence: 10
# source:
# any: true
# - remark: IPv6 ACL
# sequence: 20
# name: ACL1v6
# - aces:
# - destination:
# prefix: 2001:db8:3000::/36
# grant: deny
# protocol: ipv6
# sequence: 10
# source:
# any: true
# - destination:
# host: 2001:db8:2000:ab::2
# grant: permit
# protocol: tcp
# sequence: 20
# source:
# host: 2001:db8:2000:2::2
# name: ACL2v6
# afi: ipv6
# - acls:
# - aces:
# - destination:
# any: true
# grant: permit
# protocol: ip
# sequence: 10
# source:
# any: true
# - destination:
# any: true
# grant: deny
# protocol: udp
# sequence: 20
# source:
# any: true
# name: ACL1v4
# - aces:
# - destination:
# any: true
# grant: permit
# protocol: ahp
# sequence: 10
# source:
# address: 192.0.2.0
# wildcard_bits: 0.0.0.255
# name: ACL2v4
# afi: ipv4
#
# commands:
# - no ip access-list ACL1v4
# - no ip access-list ACL2v4
# - no ipv6 access-list ACL1v6
#
# after:
# - acls:
# - aces:
# - destination:
# prefix: 2001:db8:3000::/36
# grant: deny
# protocol: ipv6
# sequence: 10
# source:
# any: true
# - destination:
# host: 2001:db8:2000:ab::2
# grant: permit
# protocol: tcp
# sequence: 20
# source:
# host: 2001:db8:2000:2::2
# name: ACL2v6
# afi: ipv6
# After state:
# ------------
# nxos-9k# show running-config | section '^ip(v6)* access-list'
# ipv6 access-list ACL2v6
# 10 deny ipv6 any 2001:db8:3000::/36
# 20 permit tcp 2001:db8:2000:2::2/128 2001:db8:2000:ab::2/128
# Using parsed
- name: Parse given config to structured data
cisco.nxos.nxos_acls:
running_config: |
ip access-list ACL1v4
50 deny tcp any lt 55 192.0.2.64 0.0.0.255 ack fin
ipv6 access-list ACL1v6
10 permit sctp any any
state: parsed
# Task Output
# ------------
#
# parsed:
# - afi: ipv4
# acls:
# - name: ACL1v4
# aces:
# - grant: deny
# destination:
# address: 192.0.2.64
# wildcard_bits: 0.0.0.255
# source:
# any: true
# port_protocol:
# lt: 55
# protocol: tcp
# protocol_options:
# tcp:
# ack: true
# fin: true
# sequence: 50
#
# - afi: ipv6
# acls:
# - name: ACL1v6
# aces:
# - grant: permit
# sequence: 10
# source:
# any: true
# destination:
# prefix: 2001:db8:12::/32
# protocol: sctp
# Using gathered:
# Before state:
# ------------
# nxos-9k# show running-config | section '^ip(v6)* access-list'
# ip access-list ACL1v4
# 50 deny tcp any lt 55 192.0.2.64 0.0.0.255 ack fin
# ipv6 access-list ACL1v6
# 10 permit sctp any any
- name: Gather existing configuration
cisco.nxos.nxos_acls:
state: gathered
# Task Output
# -----------
#
# gathered:
# - afi: ipv4
# acls:
# - name: ACL1v4
# aces:
# - grant: deny
# destination:
# address: 192.0.2.64
# wildcard_bits: 0.0.0.255
# source:
# any: true
# port_protocol:
# lt: 55
# protocol: tcp
# protocol_options:
# tcp:
# ack: true
# fin: true
# sequence: 50
# - afi: ipv6
# acls:
# - name: ACL1v6
# aces:
# - grant: permit
# sequence: 10
# source:
# any: true
# destination:
# prefix: 2001:db8:12::/32
# protocol: sctp
# Using rendered
- name: Render required configuration to be pushed to the device
cisco.nxos.nxos_acls:
config:
- afi: ipv4
acls:
- name: ACL1v4
aces:
- grant: deny
destination:
address: 192.0.2.64
wildcard_bits: 0.0.0.255
source:
any: true
port_protocol:
lt: 55
protocol: tcp
protocol_options:
tcp:
ack: true
fin: true
sequence: 50
- afi: ipv6
acls:
- name: ACL1v6
aces:
- grant: permit
sequence: 10
source:
any: true
destination:
prefix: '2001:db8:12::/32'
protocol: sctp
state: rendered
# Task Output
# -----------
#
# rendered:
# ip access-list ACL1v4
# 50 deny tcp any lt 55 192.0.2.64 0.0.0.255 ack fin
# ipv6 access-list ACL1v6
# 10 permit sctp any any
Значения возврата
Общие значения возврата документированы здесь, следующие являются полями, уникальными для данного модуля:
Ключ | Описание |
|---|---|
after словарь | Результат вызова модели конфигурации. Возвращается: при изменении Пример: |
before словарь | Конфигурация до вызова модели. Возвращается: всегда Пример: |
commands список / элементы=строка | Набор команд, отправленных на удалённое устройство. Возвращается: всегда Пример: |
gathered список / элементы=строка | Факты о сетевом ресурсе, собранные с удалённого устройства в виде структурированных данных. Возвращается: когда state равно Пример: |
parsed список / элементы=строка | Родная конфигурация устройства, предоставленная в опции running_config, распарсенная в структурированные данные в соответствии с argspec модуля. Возвращается: когда state равно Пример: |
rendered список / элементы=строка | Предоставленная конфигурация в задаче, отрендеренная в формате, понятном для устройства (оффлайн). Возвращается: когда state равно Пример: |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/cisco/nxos/nxos_acls_module.html