Skip to content

DDNS

DDNS 功能适用于使用动态 IP 的服务器,当 Agent 上报了一个新的 IP(10分钟一次),Dashboard 会根据配置自动更新 DNS 记录。

为什么我要使用哪吒监控的 DDNS 功能?

  • 方便集中管理 DDNS 设置,而不是在每台服务器上都部署一个 DDNS 服务。
  • 仅在面板服务器上保存您的机密信息,防止外泄。

配置说明

可以直接在 Dashboard 管理页面中添加 DDNS 配置。

  1. 点击菜单栏中的“动态 DNS”选项,进入配置页面。
  2. 点击“新配置”按钮,在弹出窗口中按需填写信息。选项说明:
    • 名称:配置名称。
    • DDNS供应商:供应商类型,决定了使用何种方法更新 DNS 记录。
    • 域名(逗号分隔):域名,如填写多个域名需要用 , 分隔。支持 IDN(国际化域名)。
    • 最大重试次数:DDNS 更新尝试次数,默认为 3,范围为 1 到 10 的整数。
    • DDNS 凭据 1 以及 DDNS 凭据 2 为选填,通常需要至少填 1 个。下面的表格列出了所有供应商的对应选项。
  3. 如果使用 webhook 供应商,那么需要按需填写 Webhook 的对应选项。具体的说明请见 Webhook 配置说明
  4. 需要至少勾选 启用DDNS IPv4启用DDNS IPv6 中的一个,否则不会进行任何更新操作。
  5. 在添加了新的配置后,还需要修改服务器配置才能使 DDNS 生效。服务器相关选项说明:
    • 启用 DDNS:为此服务器启用 DDNS 功能。
    • DDNS 配置:要使用的 DDNS 配置 ID 列表,可以根据配置名称进行搜索。

Webhook 配置说明

Webhook 需要自行构建 HTTP 请求,适用于需要使用其它供应商的服务且操作较为简单的情况。

Webhook 相关选项说明:

  • Webhook 地址:HTTP 请求 URL。其中只有参数可以使用占位符。
  • Webhook 请求方式:HTTP 请求方式。支持 GETPOSTPATCHDELETE 以及 PUT
  • Webhook 请求类型:HTTP 请求体格式,为 JSON 或者 Form
  • Webhook 请求头:HTTP 请求头,用 JSON 填写,注意不支持嵌套。
  • Webhook 请求体:HTTP 请求体,GETDELETE 不会使用。如需使用嵌套格式,必须选择 JSON 作为请求类型。

Webhook 支持的占位符:

  • #ip#:主机 IP。
  • #domain#:DDNS 域名。每个域名的请求是分别进行的,所以此项的值只会是单个域名字符串。
  • #type#:IP 类型,值为 "ipv4""ipv6"
  • #record#:记录类型,值为 "A""AAAA"
  • #access_id#:DDNS 凭据 1。
  • #access_secret#:DDNS 凭据 2。

花生壳 Webhook 示例

点击展开/收起
  • URL:http://ddns.oray.com/ph/update?hostname=#domain#&myip=#ip#
  • 请求方式: GET
  • 请求头:{"Authorization": "Basic pass"},把 pass 替换成你的用户名:密码的 Base64 编码(例如,user:passdXNlcjpwYXNzCg==)。
  • 花生壳只支持 A 记录,所以只勾选启用 IPv4。其它 Webhook 选项不需要填。

供应商列表

供应商凭据1(ID)凭据2(Secret)
dummy❌️❌️
webhook可选可选
cloudflare❌️
tencentcloud

查看日志

在 Dashboard 的日志中,可以看到 DDNS 功能的相关日志,配置正确时,更新 DNS 记录时会有相应的日志记录。

shell
dashboard_1  | 2024/03/16 23:16:25 NEZHA>> 正在尝试更新域名(ddns.example.com)DDNS(1/3)
dashboard_1  | 2024/03/16 23:16:28 NEZHA>> 尝试更新域名(ddns.example.com)DDNS成功