f5networks.f5_modules.bigip_cgnat_lsn_pool 模块 – 管理 CGNAT LSN 池

注意

此模块是 f5networks.f5_modules 集合 (版本 1.32.1) 的一部分。

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

要安装它,请使用:ansible-galaxy collection install f5networks.f5_modules

要在 playbook 中使用它,请指定:f5networks.f5_modules.bigip_cgnat_lsn_pool

f5networks.f5_modules 1.0.0 中的新增功能

概要

  • 管理 CGNAT LSN(大规模 NAT)池。

参数

参数

注释

backup_members

列表 / 元素=字符串

指定可用于备份成员的转换 IP 地址,如果 deterministic 模式转换失败并回退到 napt 模式,则确定性转换模式将使用这些地址。

这是一个包含 IP 前缀及其前缀长度的集合。

client_conn_limit

整数

指定客户端或订阅者允许具有的同时转换连接的最大数量。

有效值范围介于 04294967295(含)之间。

description

字符串

用户创建的 LSN 池描述。

egress_interfaces

列表 / 元素=字符串

指定允许或不允许源地址转换的一组接口,这由 egress_intf_enabled 设置决定。

egress_intf_enabled

布尔值

指定系统如何处理在 egress_interfaces 中指定的接口上的地址转换。

设置为 true 时,源地址转换仅在指定的 egress_interfaces 上允许。

设置为 false 时,源地址转换在指定的 egress_interfaces 上禁用。

选项

  • false

  • true

harpin_mode

布尔值

启用或禁用传入连接到活动转换端点的 Hairpinning。

选项

  • false

  • true

icmp_echo

布尔值

启用或禁用转换地址上的 ICMP 回显。

选项

  • false

  • true

inbound_connections

字符串

控制 BIG-IP 系统是否支持每个出站映射的入站连接。

disabled 时,系统不支持出站映射的入站连接,这将阻止端口控制协议 pcp 运行。

explicit 时,系统支持显式出站映射的入站连接。

automatic 时,系统支持每个出站映射的入站连接,因为它正在使用。

选项

  • "disabled"

  • "explicit"

  • "automatic"

log_profile

字符串

指定池使用的日志记录配置文件的名称。

log_publisher

字符串

指定记录转换事件的日志发布者的名称。

members

列表 / 元素=字符串

指定池中可用的转换 IP 地址集。这是一个包含 IP 前缀及其前缀长度的集合。

所有公共端地址都来自此子网组中的地址。两个或多个确定性 LSN 池的成员不得重叠。用于确定性映射的每个外部地址都只能在一个 LSN 池中出现。

mode

字符串

指定转换地址映射模式。

napt 模式提供标准地址和端口转换,允许私有网络中的多个客户端使用分配给其路由器的单个 IP 地址访问远程网络。

deterministic 地址转换模式提供消除每个地址映射的日志记录的地址转换,同时仍然允许仅使用外部地址和端口以及目标地址和端口来跟踪内部客户端地址。

pba 模式记录订阅者转换请求的端口块的分配和释放,而不是分别记录每个转换请求。

选项

  • "napt"

  • "deterministic"

  • "pba"

name

字符串 / 必填

指定要管理的 LSN 池的名称。

partition

字符串

要在其上管理资源的设备分区。

默认值: "Common"

pba_block_idle_timeout

整数

指定端口块空闲后的超时持续时间。

有效值范围介于 04294967295(含)之间。”

pba_block_lifetime

整数

指定端口块的超时时间,之后该块将不再用于新的端口分配。

有效值范围介于 04294967295(含)之间。

0 值对应于无限超时。

pba_block_size

整数

指定块中的端口数。

有效值范围介于 065535(含)之间。

pba_block_size 值应小于或等于 LSN 池范围,即由 port_range_lowport_range_high 值定义的端口范围。

pba_client_block_limit

整数

指定可以分配给单个订阅者 IP 地址的块数。

pba_zombie_timeout

整数

指定僵尸端口块的超时持续时间,僵尸端口块是指具有一个或多个活动连接的超时端口块。当超时持续时间到期时,使用僵尸块的连接将被终止,僵尸端口块将变为可用端口块。

0 值对应于无限超时。

如果pba_block_lifetime0,则系统将忽略此参数值。

persistence_mode

字符串

指定LSN转换条目的持久性设置。

当为address时,转换尝试重用地址映射,但不重用端口映射。

当为address-port时,转换尝试重用地址和端口映射,用于随后从同一内部IP地址和端口发送的数据包。

当为none时,禁用持久性。

选项

  • "address"

  • "address-port"

  • "none"

persistence_timeout

整数

指定LSN转换条目的持久性超时值。

如果特定映射在该时间段内未使用,则该映射将过期,并且公共端地址/端口对将可用于其他映射。

有效值范围为031536000(包含)。

port_range_high

整数

指定可用于转换IP地址的端口号范围的高端。

port_range_high必须始终大于或等于port_range_high值。(原文有误,应为port_range_low)

有效值范围介于 065535(含)之间。

port_range_low

整数

指定可用于转换IP地址的端口号范围的低端。

port_range_low必须始终小于或等于port_range_high值。

有效值范围介于 065535(含)之间。

provider

dictionary

f5networks.f5_modules 1.0.0版本中添加

包含连接详细信息的字典对象。

auth_provider

字符串

配置身份验证提供程序,用于从远程设备获取身份验证令牌。

此选项在与BIG-IQ设备一起使用时非常有用。

no_f5_teem

布尔值

如果为yes,则不会将TEEM遥测数据发送到F5。

可以通过设置环境变量F5_TELEMETRY_OFF来省略此选项。

以前使用的变量F5_TEEM已弃用,因为其名称容易混淆。

选项

  • false ← (默认)

  • true

password

别名:pass,pwd

字符串 / 必填

用于连接到BIG-IP或BIG-IQ的用户帐户的密码。

可以通过设置环境变量F5_PASSWORD来省略此选项。

server

字符串 / 必填

BIG-IP主机或BIG-IQ主机。

可以通过设置环境变量F5_SERVER来省略此选项。

server_port

整数

BIG-IP服务器端口。

可以通过设置环境变量F5_SERVER_PORT来省略此选项。

默认值: 443

timeout

整数

指定与网络设备通信的超时时间(以秒为单位),用于连接或发送命令。如果在操作完成之前超时,模块将出错。

transport

字符串

配置连接到远程设备时使用的传输连接。

选项

  • "rest" ← (默认)

user

字符串 / 必填

连接到BIG-IP或BIG-IQ的用户名。此用户必须具有设备上的管理员权限。

可以通过设置环境变量F5_USER来省略此选项。

validate_certs

布尔值

如果为no,则不验证SSL证书。仅在使用自签名证书的个人控制站点上使用此选项。

可以通过设置环境变量F5_VALIDATE_CERTS来省略此选项。

选项

  • false

  • true ← (默认)

route_advertisement

布尔值

指定是否将转换地址传递给高级路由模块,以便通过动态路由协议进行公告。

选项

  • false

  • true

state

字符串

statepresent时,确保LSN池存在。

stateabsent时,确保LSN池被移除。

选项

  • "present" ← (默认)

  • "absent"

注释

注意

  • 需要在BIG-IP上许可并启用CGNAT。

  • 有关使用Ansible管理F5 Networks设备的更多信息,请参阅https://ansible.org.cn/integrations/networks/f5

  • 需要BIG-IP软件版本 >= 12。

  • F5模块仅操作F5产品的运行配置。为确保BIG-IP特定配置持久保存到磁盘,请务必包含至少一项使用f5networks.f5_modules.bigip_config模块保存运行配置的任务。有关正确使用模块以保存运行配置的信息,请参阅模块的文档。

示例

- name: Create an lsn pool
  bigip_cgnat_lsn_pool:
    name: foo
    mode: napt
    client_conn_limit: 100
    log_profile: foo_profile
    log_publisher: foo_publisher
    members:
      - 10.1.1.0/24
    provider:
      password: secret
      server: lb.mydomain.com
      user: admin
  delegate_to: localhost

- name: Update lsn pool
  bigip_cgnat_lsn_pool:
    name: foo
    mode: pba
    pba_block_size: 128
    pba_block_lifetime: 7200
    pba_block_idle_timeout: 1800
    pba_zombie_timeout: 900
    log_profile: foo_profile
    log_publisher: foo_publisher
    provider:
      password: secret
      server: lb.mydomain.com
      user: admin
  delegate_to: localhost

- name: Remove lsn pool
  bigip_cgnat_lsn_pool:
    name: foo
    state: absent
    provider:
      password: secret
      server: lb.mydomain.com
      user: admin
  delegate_to: localhost

返回值

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

Key

描述

backup_members

列表 / 元素=字符串

可用于备份成员的转换IP地址。

返回:changed

示例: ["/Common/10.10.10.0/24", "/Common/11.11.11.0/25"]

client_conn_limit

整数

客户端或订阅者允许同时拥有的最大转换连接数。

返回:changed

示例: 50

description

字符串

用户创建的 LSN 池描述。

返回:changed

示例: "some description"

egress_interfaces

列表 / 元素=字符串

允许或不允许源地址转换的接口集。

返回:changed

示例: ["/Common/tunnel1", "/Common/tunnel2"]

egress_intf_enabled

布尔值

指定系统如何处理出口接口上的地址转换。

返回:changed

示例: false

harpin_mode

布尔值

启用或禁用传入连接到活动转换端点的 Hairpinning。

返回:changed

示例: true

icmp_echo

布尔值

启用或禁用转换地址上的 ICMP 回显。

返回:changed

示例: false

inbound_connections

字符串

控制BIG-IP系统对每个出站映射的入站连接的支持。

返回:changed

示例: "explicit"

log_profile

字符串

池使用的日志记录配置文件的名称。

返回:changed

示例: "/Common/foo_log_profile"

log_publisher

列表 / 元素=字符串

记录转换事件的日志发布器的名称。

返回:changed

示例: ["/Common/publisher_1"]

members

列表 / 元素=字符串

池中可用的转换IP地址集。

返回:changed

示例: ["/Common/10.10.10.0/24", "/Common/11.11.11.0/25"]

mode

字符串

指定转换地址映射模式。

返回:changed

示例: "napt"

pba_block_idle_timeout

整数

端口块变为空闲后的超时持续时间。

返回:changed

示例: 3600

pba_block_lifetime

整数

端口块的超时时间。

返回:changed

示例: 7200

pba_block_size

整数

块中的端口数。

返回:changed

示例: 128

pba_client_block_limit

整数

可以分配给单个订阅者IP地址的块数。

返回:changed

示例: 3

pba_zombie_timeout

整数

僵尸端口块的超时持续时间。

返回:changed

示例: 180

persistence_mode

字符串

指定LSN转换条目的持久性设置。

返回:changed

示例: "address"

persistence_timeout

整数

指定LSN转换条目的持久性超时值。

返回:changed

示例: 500

port_range_high

整数

可用于转换IP地址的端口号范围的高端。

返回:changed

示例: 65535

port_range_low

整数

可用于转换IP地址的端口号范围的低端。

返回:changed

示例: 1025

route_advertisement

布尔值

指定是否通过动态路由协议公告转换地址。

返回:changed

示例: true

作者

  • Wojciech Wypior (@wojtek0806)