diff --git a/README.markdown b/README.markdown index 932561ed..1d7bdee7 100644 --- a/README.markdown +++ b/README.markdown @@ -398,13 +398,13 @@ _(Click to expand the following items.)_
📣 External notifications (Healthchecks, Uptime Kuma, and shoutrrr) -| Name | Meaning | -| ---------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `HEALTHCHECKS` | The [Healthchecks ping URL](https://healthchecks.io/docs/) to ping when the updater successfully updates IP addresses, such as `https://hc-ping.com/` or `https://hc-ping.com//` ⚠️ The ping schedule should match the update schedule specified by `UPDATE_CRON`. 🤖 The updater can work with _any_ server following the [same notification protocol](https://healthchecks.io/docs/http_api/), including but not limited to self-hosted instances of [Healthchecks](https://github.com/healthchecks/healthchecks). Both UUID and Slug URLs are supported, and the updater works regardless whether the POST-only mode is enabled. | -| `UPTIMEKUMA` | The Uptime Kuma’s Push URL to ping when the updater successfully updates IP addresses, such as `https:///push/`. You can directly copy the “Push URL” from the Uptime Kuma configuration page. ⚠️ Remember to change the “Heartbeat Interval” to match the update schedule specified by `UPDATE_CRON`. | -| 🧪 `SHOUTRRR` (since 1.12.0) | 🧪 A list of notifications services the updater should send messages to when it updates IP addresses. The format is newline-separated [shoutrrr URLs](https://containrrr.dev/shoutrrr/latest/services/overview/), such as `discord://@`. | +| Name | Meaning | +| ---------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `HEALTHCHECKS` | The [Healthchecks ping URL](https://healthchecks.io/docs/) to ping when the updater successfully updates IP addresses, such as `https://hc-ping.com/` or `https://hc-ping.com//` ⚠️ The ping schedule should match the update schedule specified by `UPDATE_CRON`. 🤖 The updater can work with _any_ server following the [same Healthchecks protocol](https://healthchecks.io/docs/http_api/), including self-hosted instances of [Healthchecks](https://github.com/healthchecks/healthchecks). Both UUID and Slug URLs are supported, and the updater works regardless whether the POST-only mode is enabled. | +| `UPTIMEKUMA` | The Uptime Kuma’s Push URL to ping when the updater successfully updates IP addresses, such as `https:///push/`. You can directly copy the “Push URL” from the Uptime Kuma configuration page. ⚠️ Remember to change the “Heartbeat Interval” to match the update schedule specified by `UPDATE_CRON`. | +| 🧪 `SHOUTRRR` (since 1.12.0) | Newline-separated [shoutrrr URLs](https://containrrr.dev/shoutrrr/latest/services/overview/) to which the updater sends notifications of IP address changes and other events. Each shoutrrr URL represents a notification service, such as `discord://@` for Discord. | -> ⚠️ Please note that a failure in handling IPv6 will cause the status to be reported as _down_ even if IPv4 records are updated successfully (and similarly if IPv6 works but IPv4 fails). If your network does not support IPv6, add `IP6_PROVIDER=none` to disable IPv6 completely. +> ⚠️ If your network does not support IPv6, set `IP6_PROVIDER=none` to disable IPv6 completely. Otherwise, a failure to handle IPv6 will result in the status being reported as _down,_ even if IPv4 records are updated successfully.
@@ -421,18 +421,18 @@ _(Click to expand the following items.)_ ⚠️ [oznu/cloudflare-ddns](https://github.com/oznu/docker-cloudflare-ddns) relies on the insecure DNS protocol to obtain public IP addresses; a malicious hacker could more easily forge DNS responses and trick it into updating your domain with any IP address. In comparison, we use only verified responses from Cloudflare, which makes the attack much more difficult. See the [design document](docs/DESIGN.markdown) for more information on security. -| Old Parameter | | Note | -| -------------------------------------- | --- | ---------------------------------------------------------------------------------- | -| `API_KEY=key` | ✔️ | Use `CF_API_TOKEN=key` | -| `API_KEY_FILE=file` | ✔️ | Use `CF_API_TOKEN_FILE=file` | -| `ZONE=example.org` and `SUBDOMAIN=sub` | ✔️ | Use `DOMAINS=sub.example.org` directly | -| `PROXIED=true` | ✔️ | Same (`PROXIED=true`) | -| `RRTYPE=A` | ✔️ | Both IPv4 and IPv6 are enabled by default; use `IP6_PROVIDER=none` to disable IPv6 | -| `RRTYPE=AAAA` | ✔️ | Both IPv4 and IPv6 are enabled by default; use `IP4_PROVIDER=none` to disable IPv4 | -| `DELETE_ON_STOP=true` | ✔️ | Same (`DELETE_ON_STOP=true`) | -| `INTERFACE=iface` | ✔️ | Not required for `local` providers; we can handle multiple network interfaces | -| `CUSTOM_LOOKUP_CMD=cmd` | ❌ | There are no shells in the minimal Docker image | -| `DNS_SERVER=server` | ❌ | Only Cloudflare is supported, except the `url:URL` provider via HTTP(S) | +| Old Parameter | | Note | +| -------------------------------------- | --- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `API_KEY=key` | ✔️ | Use `CF_API_TOKEN=key` | +| `API_KEY_FILE=file` | ✔️ | Use `CF_API_TOKEN_FILE=file` | +| `ZONE=example.org` and `SUBDOMAIN=sub` | ✔️ | Use `DOMAINS=sub.example.org` directly | +| `PROXIED=true` | ✔️ | Same (`PROXIED=true`) | +| `RRTYPE=A` | ✔️ | Both IPv4 and IPv6 are enabled by default; use `IP6_PROVIDER=none` to disable IPv6 | +| `RRTYPE=AAAA` | ✔️ | Both IPv4 and IPv6 are enabled by default; use `IP4_PROVIDER=none` to disable IPv4 | +| `DELETE_ON_STOP=true` | ✔️ | Same (`DELETE_ON_STOP=true`) | +| `INTERFACE=iface` | ✔️ | To automatically select the local address, use `IP4/6_PROVIDER=local`. 🧪 To select the first address of a specific network interface, use `IP4/6_PROVIDER=local:iface` (available since 1.15.0). | +| `CUSTOM_LOOKUP_CMD=cmd` | ❌ | Custom commands are not supported because there are no other programs in the minimal Docker image | +| `DNS_SERVER=server` | ❌ | The updater only supports secure DNS queries using Cloudflare’s DNS over HTTPS (DoH) server. To enable this, set `IP4/6_PROVIDER=cloudflare.doh`. | @@ -445,7 +445,7 @@ _(Click to expand the following items.)_ | `cloudflare.authentication.api_key` | ❌ | Please use the newer, more secure [API tokens](https://dash.cloudflare.com/profile/api-tokens) | | `cloudflare.zone_id` | ✔️ | Not needed; automatically retrieved from the server | | `cloudflare.subdomains[].name` | ✔️ | Use `DOMAINS` with [**fully qualified domain names (FQDNs)**](https://en.wikipedia.org/wiki/Fully_qualified_domain_name) directly; for example, if your zone is `example.org` and your subdomain is `sub`, use `DOMAINS=sub.example.org` | -| `cloudflare.subdomains[].proxied` | ✔️ | Write boolean expressions for `PROXIED` to specify per-domain settings; see above for the detailed documentation for this experimental feature | +| `cloudflare.subdomains[].proxied` | ✔️ | Write boolean expressions for `PROXIED` to specify per-domain settings; see above for the detailed documentation for this advanced feature | | `load_balancer` | ❌ | Not supported yet; please [make a request](https://github.com/favonia/cloudflare-ddns/issues/new) if you want it | | `a` | ✔️ | Both IPv4 and IPv6 are enabled by default; use `IP4_PROVIDER=none` to disable IPv4 | | `aaaa` | ✔️ | Both IPv4 and IPv6 are enabled by default; use `IP6_PROVIDER=none` to disable IPv6 |