community.general.ipify_facts 模块 – 获取互联网网关的公网 IP

注意

此模块是 community.general 集合 (版本 10.1.0) 的一部分。

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

要安装它,请使用:ansible-galaxy collection install community.general

要在 playbook 中使用它,请指定:community.general.ipify_facts

概要

  • 如果您位于 NAT 后面并且需要知道您的互联网网关的公网 IP。

参数

参数

注释

api_url

字符串

ipify.org API 服务的 URL。

?format=json 将默认追加。

默认值: "https://api.ipify.org/"

timeout

整数

HTTP 连接超时(秒)。

默认值: 10

validate_certs

布尔值

设置为 false 时,将不会验证 SSL 证书。

选项

  • false

  • true ← (默认)

属性

属性

支持

描述

check_mode

支持:完全支持

此操作不会修改状态。

可以在 check_mode 中运行,并在不修改目标的情况下返回更改状态预测。

diff_mode

支持: N/A

此操作不会修改状态。

在差异模式下,将返回有关更改内容(或可能需要在 check_mode 中更改的内容)的详细信息。

facts

支持:完全支持

操作返回一个 ansible_facts 字典,该字典将更新现有的主机事实。

备注

注意

示例

# Gather IP facts from ipify.org
- name: Get my public IP
  community.general.ipify_facts:

# Gather IP facts from your own ipify service endpoint with a custom timeout
- name: Get my public IP
  community.general.ipify_facts:
    api_url: http://api.example.com/ipify
    timeout: 20

返回值

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

描述

ipify_public_ip

字符串

互联网网关的公网 IP。

返回:成功

示例: "1.2.3.4"

作者

  • René Moser (@resmo)