dellemc.enterprise_sonic.sonic_l3_acls 模块 – 在 SONiC 上管理三层访问控制列表 (ACL) 配置

注意

此模块是 dellemc.enterprise_sonic 集合 (版本 2.5.1) 的一部分。

如果您使用的是 ansible 包,则可能已经安装了此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install dellemc.enterprise_sonic

要在剧本中使用它,请指定:dellemc.enterprise_sonic.sonic_l3_acls

dellemc.enterprise_sonic 2.1.0 中的新增功能

概要

  • 此模块提供运行 SONiC 的设备中三层访问控制列表 (ACL) 的配置管理。

参数

参数

注释

config

列表 / 元素=字典

指定三层 ACL 配置。

acls

列表 / 元素=字典

给定地址族ACL的配置列表。

name

字符串 / 必需

指定 ACL 名称。

remark

字符串

指定 ACL 的备注。

rules

列表 / 元素=字典

带有 ACL 的规则列表。

添加新规则需要 *sequence_num*、*action*、*protocol*、*source* 和 *destination*。

如果 *state=deleted*,则不考虑 *sequence_num* 以外的选项。

action

字符串

指定对匹配的数据包采取的操作。

选择

  • "deny"

  • "discard"

  • "do-not-nat"

  • "permit"

  • "transit"

destination

字典

指定数据包的目标。

*any*、*host* 和 *prefix* 是互斥的。

any

布尔值

匹配任何目标网络地址。

选择

  • false

  • true

host

字符串

单个目标主机的网络地址。

port_number

字典

指定目标端口(仅对 TCP 或 UDP 有效)

在一个规则中,只能指定一个 port_number 子选项。

eq

整数

匹配目标端口等于给定端口号的数据包。

范围为 0 到 65535。

gt

整数

匹配目标端口大于给定端口号的数据包。

范围为 0 到 65534。

lt

整数

匹配目标端口小于给定端口号的数据包。

范围为 1 到 65535。

range

字典

匹配目标端口在给定范围内的分组。

*begin* 和 *end* 必须一起使用。

begin

整数

指定端口范围的开始。

范围为 0 到 65534。

end

整数

指定端口范围的结束。

范围为 1 到 65535。

prefix

字符串

以 A.B.C.D/mask (ipv4) 或 A::B/mask (ipv6) 格式表示的目标网络前缀。

dscp

字典

使用 DSCP 值匹配数据包。

在一个规则中,只能指定一个 dscp 子选项。

af11

布尔值

匹配具有 AF11 DSCP (001010 - 十进制值 10) 的数据包。

选择

  • false

  • true

af12

布尔值

匹配具有 AF12 DSCP (001100 - 十进制值 12) 的数据包。

选择

  • false

  • true

af13

布尔值

匹配具有 AF13 DSCP (001110 - 十进制值 14) 的数据包。

选择

  • false

  • true

af21

布尔值

匹配具有 AF21 DSCP (010010 - 十进制值 18) 的数据包。

选择

  • false

  • true

af22

布尔值

匹配具有 AF22 DSCP (010100 - 十进制值 20) 的数据包。

选择

  • false

  • true

af23

布尔值

匹配具有 AF23 DSCP (010110 - 十进制值 22) 的数据包。

选择

  • false

  • true

af31

布尔值

匹配具有 AF31 DSCP (011010 - 十进制值 26) 的数据包。

选择

  • false

  • true

af32

布尔值

匹配具有 AF32 DSCP (011100 - 十进制值 28) 的数据包。

选择

  • false

  • true

af33

布尔值

匹配具有 AF33 DSCP (011110 - 十进制值 30) 的数据包。

选择

  • false

  • true

af41

布尔值

匹配具有 AF41 DSCP (100010 - 十进制值 34) 的数据包。

选择

  • false

  • true

af42

布尔值

匹配具有 AF42 DSCP (100100 - 十进制值 36) 的数据包。

选择

  • false

  • true

af43

布尔值

匹配具有 AF43 DSCP (100110 - 十进制值 38) 的数据包。

选择

  • false

  • true

cs1

布尔值

匹配具有 CS1 DSCP (001000 - 十进制值 8) 的数据包。

选择

  • false

  • true

cs2

布尔值

匹配具有 CS2 DSCP (010000 - 十进制值 16) 的数据包。

选择

  • false

  • true

cs3

布尔值

匹配具有 CS3 DSCP (011000 - 十进制值 24) 的数据包。

选择

  • false

  • true

cs4

布尔值

匹配具有 CS4 DSCP (100000 - 十进制值 32) 的数据包。

选择

  • false

  • true

cs5

布尔值

匹配具有 CS5 DSCP (101000 - 十进制值 40) 的数据包。

选择

  • false

  • true

cs6

布尔值

匹配具有 CS6 DSCP (110000 - 十进制值 48) 的数据包。

选择

  • false

  • true

cs7

布尔值

匹配具有 CS7 DSCP (111000 - 十进制值 56) 的数据包。

选择

  • false

  • true

default

布尔值

匹配具有 CS0 DSCP (000000 - 十进制值 0) 的数据包。

选择

  • false

  • true

ef

布尔值

匹配具有 EF DSCP (101110 - 十进制值 46) 的数据包。

选择

  • false

  • true

value

整数

匹配具有给定 DSCP 值的数据包。

范围为 0 到 63。

voice_admit

布尔值

匹配具有 VOICE-ADMIT DSCP (101100 - 十进制值 44) 的数据包。

选择

  • false

  • true

protocol

字典

指定要匹配的协议。

在一个规则中,只能指定一个 protocol 子选项。

name

字符串

匹配具有给定协议的数据包。

ip - 匹配任何 IPv4 数据包。

ipv6 - 匹配任何 IPv6 数据包。

icmp - 匹配 ICMP 数据包。

icmpv6 - 匹配 ICMPv6 数据包。

tcp - 匹配 TCP 数据包。

udp - 匹配 UDP 数据包。

ipicmp 仅对 IPv4 ACL 有效。

仅IPv6 ACL支持ipv6icmpv6

选择

  • "ip"

  • "ipv6"

  • "icmp"

  • "icmpv6"

  • "tcp"

  • "udp"

协议号

整数

匹配具有给定协议号的数据包。

范围是0到255。

协议选项

字典

指定所选协议的其他数据包匹配选项。

icmpicmpv6tcp互斥。

icmp

字典

ICMP数据包匹配选项。

代码

整数

匹配具有给定ICMP代码的数据包。

范围是0到255。

类型

整数

匹配具有给定ICMP类型的数据包。

范围是0到255。

icmpv6

字典

ICMPv6数据包匹配选项。

代码

整数

匹配具有给定ICMPv6代码的数据包。

范围是0到255。

类型

整数

匹配具有给定ICMPv6类型的数据包。

范围是0到255。

tcp

字典

TCP数据包匹配选项。

established和其他TCP标志选项互斥。

ack

布尔值

匹配设置了ACK标志的数据包。

选择

  • false

  • true

established

布尔值

匹配属于已建立TCP会话的数据包。

选择

  • false

  • true

fin

布尔值

匹配设置了FIN标志的数据包。

选择

  • false

  • true

not_ack

布尔值

匹配清除ACK标志的数据包。

选择

  • false

  • true

not_fin

布尔值

匹配清除FIN标志的数据包。

选择

  • false

  • true

not_psh

布尔值

匹配清除PSH标志的数据包。

选择

  • false

  • true

not_rst

布尔值

匹配清除RST标志的数据包。

选择

  • false

  • true

not_syn

布尔值

匹配清除SYN标志的数据包。

选择

  • false

  • true

not_urg

布尔值

匹配清除URG标志的数据包。

选择

  • false

  • true

psh

布尔值

匹配设置了PSH标志的数据包。

选择

  • false

  • true

rst

布尔值

匹配设置了RST标志的数据包。

选择

  • false

  • true

syn

布尔值

匹配设置了SYN标志的数据包。

选择

  • false

  • true

urg

布尔值

匹配设置了URG标志的数据包。

选择

  • false

  • true

remark

字符串

指定ACL规则的备注。

序列号

整数 / 必填

指定规则的序列号。

范围为 1 到 65535。

字典

指定数据包的源。

*any*、*host* 和 *prefix* 是互斥的。

any

布尔值

匹配任何源网络地址。

选择

  • false

  • true

host

字符串

单个源主机的网络地址。

port_number

字典

指定源端口(仅对TCP或UDP有效)

在一个规则中,只能指定一个 port_number 子选项。

eq

整数

匹配源端口等于给定端口号的数据包。

范围为 0 到 65535。

gt

整数

匹配源端口大于给定端口号的数据包。

范围为 0 到 65534。

lt

整数

匹配源端口小于给定端口号的数据包。

范围为 1 到 65535。

range

字典

匹配源端口在给定范围内的数据包。

*begin* 和 *end* 必须一起使用。

begin

整数

指定端口范围的开始。

范围为 0 到 65534。

end

整数

指定端口范围的结束。

范围为 1 到 65535。

prefix

字符串

源网络前缀,格式为A.B.C.D/掩码(ipv4)或A::B/掩码(ipv6)。

vlan_id

整数

匹配具有给定VLAN ID值的数据包。

地址族

字符串 / 必需

指定ACL的地址族。

选择

  • "ipv4"

  • "ipv6"

状态

字符串

模块完成后的配置状态。

merged - 将提供的L3 ACL配置与设备上的配置合并。

replaced - 将指定L3 ACL的设备上配置替换为提供的配置。

overridden - 使用提供的配置覆盖所有设备上的L3 ACL配置。

deleted - 删除设备上的L3 ACL配置。

选择

  • "merged" ← (默认)

  • "replaced"

  • "overridden"

  • "deleted"

注释

注意

  • 支持check_mode

示例

# Using merged
#
# Before State:
# -------------
#
# sonic# show running-configuration ip access-list
# !
# ip access-list test
#  seq 1 permit ip host 192.168.1.2 any
# sonic#
# sonic# show running-configuration ipv6 access-list
# !
# ipv6 access-list testv6
#  seq 1 permit ipv6 host 192:168:1::2 any
# sonic#

  - name: Merge provided Layer 3 ACL configurations
    dellemc.enterprise_sonic.sonic_l3_acls:
      config:
        - address_family: 'ipv4'
          acls:
          - name: 'test'
            rules:
            - sequence_num: 2
              action: 'permit'
              protocol:
                name: 'icmp'
              source:
                any: true
              destination:
                host: '192.168.1.2'
              protocol_options:
                icmp:
                  type: 8
            - sequence_num: 3
              action: 'deny'
              protocol:
                number: 2
              source:
                any: true
              destination:
                any: true
            - sequence_num: 4
              action: 'deny'
              protocol:
                name: 'ip'
              source:
                any: true
              destination:
                any: true
              vlan_id: 10
              remark: 'Vlan10'
          - name: 'test1'
            remark: 'test_ip_acl'
            rules:
            - sequence_num: 1
              action: 'permit'
              protocol:
                name: 'tcp'
              source:
                prefix: '10.0.0.0/8'
              destination:
                any: true
            - sequence_num: 2
              action: 'deny'
              protocol:
                name: 'udp'
              source:
                any: true
              destination:
                prefix: '20.1.0.0/16'
                port_number:
                  gt: 1024
            - sequence_num: 3
              action: 'deny'
              protocol:
                name: 'ip'
              source:
                any: true
              destination:
                any: true
              dscp:
                value: 63
        - address_family: 'ipv6'
          acls:
          - name: 'testv6'
            rules:
            - sequence_num: 2
              action: 'deny'
              protocol:
                name: 'icmpv6'
              source:
                any: true
              destination:
                any: true
          - name: 'testv6-1'
            remark: 'test_ipv6_acl'
            rules:
            - sequence_num: 1
              action: 'permit'
              protocol:
                name: 'ipv6'
              source:
                prefix: '1000::/16'
              destination:
                any: true
              dscp:
                af22: true
            - sequence_num: 2
              action: 'deny'
              protocol:
                name: 'tcp'
              source:
                any: true
              destination:
                prefix: '2000::1000:0/112'
                port_number:
                  range:
                    begin: 100
                    end: 1000
            - sequence_num: 3
              action: 'permit'
              protocol:
                name: 'tcp'
              source:
                any: true
              destination:
                any: true
              protocol_options:
                tcp:
                  established: true
            - sequence_num: 4
              action: 'deny'
              protocol:
                name: 'udp'
              source:
                any: true
                port_number:
                  eq: 3000
              destination:
                any: true
      state: merged

# After State:
# ------------
#
# sonic# show running-configuration ip access-list
# !
# ip access-list test
#  seq 1 permit ip host 192.168.1.2 any
#  seq 2 permit icmp any host 192.168.1.2 type 8
#  seq 3 deny 2 any any
#  seq 4 deny ip any any vlan 10 remark Vlan10
# !
# ip access-list test1
#  remark test_ip_acl
#  seq 1 permit tcp 10.0.0.0/8 any
#  seq 2 deny udp any 20.1.0.0/16 gt 1024
#  seq 3 deny ip any any dscp 63
# sonic#
# sonic# show running-configuration ipv6 access-list
# !
# ipv6 access-list testv6
#  seq 1 permit ipv6 host 192:168:1::2 any
#  seq 2 deny icmpv6 any any
# !
# ipv6 access-list testv6-1
#  remark test_ipv6_acl
#  seq 1 permit ipv6 1000::/16 any dscp af22
#  seq 2 deny tcp any 2000::1000:0/112 range 100 1000
#  seq 3 permit tcp any any established
#  seq 4 deny udp any eq 3000 any
# sonic#


# Using replaced
#
# Before State:
# -------------
#
# sonic# show running-configuration ip access-list
# !
# ip access-list test
#  seq 1 permit ip host 192.168.1.2 any
#  seq 2 permit icmp any host 192.168.1.2 type 8
#  seq 3 deny 2 any any
#  seq 4 deny ip any any vlan 10 remark Vlan10
# !
# ip access-list test1
#  remark test_ip_acl
#  seq 1 permit tcp 10.0.0.0/8 any
#  seq 2 deny udp any 20.1.0.0/16 gt 1024
#  seq 3 deny ip any any dscp 63
# sonic#
# sonic# show running-configuration ipv6 access-list
# !
# ipv6 access-list testv6
#  seq 1 permit tcp host 3000::1 any established
#  seq 2 permit udp any any
#  seq 3 deny icmpv6 any any
# !
# ipv6 access-list testv6-1
#  remark test_ipv6_acl
#  seq 1 permit ipv6 1000::/16 any dscp af22
#  seq 2 deny tcp any 2000::1000:0/112 range 100 1000
#  seq 3 permit tcp any any established
#  seq 4 deny udp any eq 3000 any
# sonic#

  - name: Replace device configuration of specified Layer 3 ACLs with provided configuration
    dellemc.enterprise_sonic.sonic_l3_acls:
      config:
        - address_family: 'ipv4'
          acls:
          - name: 'test2'
            rules:
            - sequence_num: 1
              action: 'permit'
              protocol:
                name: 'tcp'
              source:
                prefix: '192.168.1.0/24'
              destination:
                any: true
        - address_family: 'ipv6'
          acls:
          - name: 'testv6'
            rules:
            - sequence_num: 1
              action: 'permit'
              protocol:
                name: 'tcp'
              source:
                host: '3000::1'
              destination:
                any: true
              protocol_options:
                tcp:
                  ack: true
                  syn: true
                  fin: true
            - sequence_num: 2
              action: 'deny'
              protocol:
                name: 'ipv6'
              source:
                any: true
              destination:
                any: true
      state: replaced

# After State:
# ------------
#
# sonic# show running-configuration ip access-list
# !
# ip access-list test
#  seq 1 permit ip host 192.168.1.2 any
#  seq 2 permit icmp any host 192.168.1.3 type 8
#  seq 3 deny 2 any any
#  seq 4 deny ip any any vlan 10 remark Vlan10
# !
# ip access-list test1
#  remark test_ip_acl
#  seq 1 permit tcp 10.0.0.0/8 any
#  seq 2 deny udp any 20.1.0.0/16 gt 1024
#  seq 3 deny ip any any dscp 63
# !
# ip access-list test2
#  seq 1 permit tcp 192.168.1.0/24 any
# sonic#
# sonic# show running-configuration ipv6 access-list
# !
# ipv6 access-list testv6
#  seq 1 permit tcp host 3000::1 any fin syn ack
#  seq 2 deny ipv6 any any
# !
# ipv6 access-list testv6-1
#  remark test_ipv6_acl
#  seq 1 permit ipv6 1000::/16 any dscp af22
#  seq 2 deny tcp any 2000::1000:0/112 range 100 1000
#  seq 3 permit tcp any any established
#  seq 4 deny udp any eq 3000 any
# sonic#


# Using overridden
#
# Before State:
# -------------
#
# sonic# show running-configuration ip access-list
# !
# ip access-list test
#  seq 1 permit ip host 192.168.1.2 any
#  seq 2 permit icmp any host 192.168.1.3 type 8
#  seq 3 deny 2 any any
#  seq 4 deny ip any any vlan 10 remark Vlan10
# !
# ip access-list test1
#  remark test_ip_acl
#  seq 1 permit tcp 10.0.0.0/8 any
#  seq 2 deny udp any 20.1.0.0/16 gt 1024
#  seq 3 deny ip any any dscp 63
# !
# ip access-list test2
#  seq 1 permit tcp 192.168.1.0/24 any
# sonic#
# sonic# show running-configuration ipv6 access-list
# !
# ipv6 access-list testv6
#  seq 1 permit tcp 3000::/16 any
#  seq 2 deny ipv6 any any
# !
# ipv6 access-list testv6-1
#  remark test_ipv6_acl
#  seq 1 permit ipv6 1000::/16 any dscp af22
#  seq 2 deny tcp any 2000::1000:0/112 range 100 1000
#  seq 3 permit tcp any any established
#  seq 4 deny udp any eq 3000 any
# sonic#

  - name: Override device configuration of all Layer 3 ACLs with provided configuration
    dellemc.enterprise_sonic.sonic_l3_acls:
      config:
        - address_family: 'ipv4'
          acls:
          - name: 'test_acl'
            rules:
            - sequence_num: 1
              action: 'permit'
              protocol:
                name: 'ip'
              source:
                prefix: '100.1.1.0/24'
              destination:
                prefix: '100.1.2.0/24'
            - sequence_num: 2
              action: 'deny'
              protocol:
                name: 'udp'
              source:
                any: true
              destination:
                any: true
      state: overridden

# After State:
# ------------
#
# sonic# show running-configuration ip access-list
# !
# ip access-list test_acl
#  seq 1 permit ip 100.1.1.0/24 100.1.2.0/24
#  seq 2 deny udp any any
# sonic#
# sonic# show running-configuration ipv6 access-list
# sonic#


# Using deleted
#
# Before State:
# -------------
#
# sonic# show running-configuration ip access-list
# !
# ip access-list test
#  seq 1 permit ip host 192.168.1.2 any
#  seq 2 permit icmp any host 192.168.1.3 type 8
#  seq 3 deny 2 any any
#  seq 4 deny ip any any vlan 10 remark Vlan10
# !
# ip access-list test1
#  remark test_ip_acl
#  seq 1 permit tcp 10.0.0.0/8 any
#  seq 2 deny udp any 20.1.0.0/16 gt 1024
#  seq 3 deny ip any any dscp 63
# !
# ip access-list test2
#  seq 1 permit tcp 192.168.1.0/24 any
# sonic#
# sonic# show running-configuration ipv6 access-list
# !
# ipv6 access-list testv6
#  seq 1 permit tcp 3000::/16 any
#  seq 2 deny ipv6 any any
# !
# ipv6 access-list testv6-1
#  remark test_ipv6_acl
#  seq 1 permit ipv6 1000::/16 any dscp af22
#  seq 2 deny tcp any 2000::1000:0/112 range 100 1000
#  seq 3 permit tcp any any established
#  seq 4 deny udp any eq 3000 any
# sonic#

  - name: Delete specified Layer 3 ACLs, ACL remark and ACL rule entries
    dellemc.enterprise_sonic.sonic_l3_acls:
      config:
        - address_family: 'ipv4'
          acls:
          - name: 'test'
            rules:
              - sequence_num: 2
          - name: 'test2'
        - address_family: 'ipv6'
          acls:
          - name: 'testv6-1'
            remark: 'test_ipv6_acl'
            rules:
              - sequence_num: 3
      state: deleted

# After State:
# ------------
#
# sonic# show running-configuration ip access-list
# !
# ip access-list test
#  seq 1 permit ip host 192.168.1.2 any
#  seq 3 deny 2 any any
#  seq 4 deny ip any any vlan 10 remark Vlan10
# !
# ip access-list test1
#  remark test_ip_acl
#  seq 1 permit tcp 10.0.0.0/8 any
#  seq 2 deny udp any 20.1.0.0/16 gt 1024
#  seq 3 deny ip any any dscp 63
# sonic#
# sonic# show running-configuration ipv6 access-list
# !
# ipv6 access-list testv6
#  seq 1 permit tcp 3000::/16 any
#  seq 2 deny ipv6 any any
# !
# ipv6 access-list testv6-1
#  seq 1 permit ipv6 1000::/16 any dscp af22
#  seq 2 deny tcp any 2000::1000:0/112 range 100 1000
#  seq 4 deny udp any eq 3000 any
# sonic#


# Using deleted
#
# Before State:
# -------------
#
# sonic# show running-configuration ip access-list
# !
# ip access-list test
#  seq 1 permit ip host 192.168.1.2 any
#  seq 2 permit icmp any host 192.168.1.3 type 8
#  seq 3 deny 2 any any
#  seq 4 deny ip any any vlan 10 remark Vlan10
# !
# ip access-list test1
#  remark test_ip_acl
#  seq 1 permit tcp 10.0.0.0/8 any
#  seq 2 deny udp any 20.1.0.0/16 gt 1024
#  seq 3 deny ip any any dscp 63
# !
# ip access-list test2
#  seq 1 permit tcp 192.168.1.0/24 any
# sonic#
# sonic# show running-configuration ipv6 access-list
# !
# ipv6 access-list testv6
#  seq 1 permit tcp 3000::/16 any
#  seq 2 deny ipv6 any any
# !
# ipv6 access-list testv6-1
#  remark test_ipv6_acl
#  seq 1 permit ipv6 1000::/16 any dscp af22
#  seq 2 deny tcp any 2000::1000:0/112 range 100 1000
#  seq 3 permit tcp any any established
#  seq 4 deny udp any eq 3000 any
# sonic#

  - name: Delete all Layer 3 ACLs for an address-family
    dellemc.enterprise_sonic.sonic_l3_acls:
      config:
        - address_family: 'ipv4'
      state: deleted

# After State:
# ------------
#
# sonic# show running-configuration ip access-list
# sonic#
# sonic# show running-configuration ipv6 access-list
# !
# ipv6 access-list testv6
#  seq 1 permit tcp 3000::/16 any
#  seq 2 deny ipv6 any any
# !
# ipv6 access-list testv6-1
#  remark test_ipv6_acl
#  seq 1 permit ipv6 1000::/16 any dscp af22
#  seq 2 deny tcp any 2000::1000:0/112 range 100 1000
#  seq 3 permit tcp any any established
#  seq 4 deny udp any eq 3000 any
# sonic#


# Using deleted
#
# Before State:
# -------------
#
# sonic# show running-configuration ip access-list
# !
# ip access-list test
#  seq 1 permit ip host 192.168.1.2 any
#  seq 2 permit icmp any host 192.168.1.3 type 8
#  seq 3 deny 2 any any
#  seq 4 deny ip any any vlan 10 remark Vlan10
# !
# ip access-list test1
#  remark test_ip_acl
#  seq 1 permit tcp 10.0.0.0/8 any
#  seq 2 deny udp any 20.1.0.0/16 gt 1024
#  seq 3 deny ip any any dscp 63
# !
# ip access-list test2
#  seq 1 permit tcp 192.168.1.0/24 any
# sonic#
# sonic# show running-configuration ipv6 access-list
# !
# ipv6 access-list testv6
#  seq 1 permit tcp 3000::/16 any
#  seq 2 deny ipv6 any any
# !
# ipv6 access-list testv6-1
#  remark test_ipv6_acl
#  seq 1 permit ipv6 1000::/16 any dscp af22
#  seq 2 deny tcp any 2000::1000:0/112 range 100 1000
#  seq 3 permit tcp any any established
#  seq 4 deny udp any eq 3000 any
# sonic#

  - name: Delete all Layer 3 ACL configurations
    dellemc.enterprise_sonic.sonic_l3_acls:
      config:
      state: deleted

# After State:
# ------------
#
# sonic# show running-configuration ip access-list
# sonic#
# sonic# show running-configuration ipv6 access-list
# sonic#

返回值

常用返回值已在此处记录,以下是此模块特有的字段

描述

after

列表 / 元素=字符串

模块调用后的结果配置。

返回:当发生更改时

示例: ["返回的配置将始终与上面的参数格式相同。\n"]

after(生成的)

列表 / 元素=字符串

生成的配置模块调用。

返回:check_mode

示例: ["返回的配置将始终与上面的参数格式相同。\n"]

before

列表 / 元素=字符串

模块调用之前的配置。

返回:始终返回

示例: ["返回的配置将始终与上面的参数格式相同。\n"]

命令

列表 / 元素=字符串

推送到远程设备的命令集。

返回:始终返回

示例: ["命令 1", "命令 2", "命令 3"]

作者

  • Arun Saravanan Balachandran (@ArunSaravananBalachandran)