Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/l480/cloudflare-dyndns
☁️ Cloudflare DynDNS solution for AVM FRITZ!Box
https://github.com/l480/cloudflare-dyndns
cloudflare dns dyndns fritzbox python
Last synced: 4 days ago
JSON representation
☁️ Cloudflare DynDNS solution for AVM FRITZ!Box
- Host: GitHub
- URL: https://github.com/l480/cloudflare-dyndns
- Owner: L480
- License: apache-2.0
- Created: 2021-08-08T17:31:14.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-12-12T09:36:13.000Z (about 2 months ago)
- Last Synced: 2025-01-19T09:03:13.414Z (10 days ago)
- Topics: cloudflare, dns, dyndns, fritzbox, python
- Language: Python
- Homepage:
- Size: 85 KB
- Stars: 84
- Watchers: 5
- Forks: 31
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# cloudflare-dyndns
Middleware for updating [Cloudflare](https://www.cloudflare.com/) DNS records through an [AVM FRITZ!Box](https://en.avm.de/products/fritzbox/).
## Getting started
### Create a Cloudflare API token
Create a [Cloudflare API token](https://dash.cloudflare.com/profile/api-tokens) with **read permissions** for the scope `Zone.Zone` and **edit permissions** for the scope `Zone.DNS`.
![Create a Cloudflare custom token](./images/create-cloudflare-token.png "Create a Cloudflare custom token")
### :rocket: Option 1: Self-host cloudflare-dyndns
#### Run on Docker
Start cloudflare-dyndns:
```bash
docker run -p 80:80 ghcr.io/l480/cloudflare-dyndns:latest
```#### Run on Kubernetes
Use the [Helm Chart](./helm-chart) to deploy cloudflare-dyndns to Kubernetes or directly [pull it from the repositories OCI registry](https://helm.sh/docs/topics/registries/#enabling-oci-support):
```bash
helm pull oci://ghcr.io/l480/charts/cloudflare-dyndns --version 0.1.0
```### :cloud: Option 2: Use my free cloud service
If you don't want to host cloudflare-dyndns yourself, feel free to use my cloud service. Just use this Update URL in your FRITZ!Box:
```
https://dyndns.nicoo.org/?token=&record=www&zone=example.com&ipv4=&ipv6=
```### Configure your FRITZ!Box
| FRITZ!Box Setting | Value | Description |
| ----------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| Update URL | `https://dyndns.nicoo.org/?token=&record=www&zone=example.com&ipv4=&ipv6=` | Replace the URL parameter `record` and `zone` with your domain name. If required you can omit either the `ipv4` or `ipv6` URL parameter. |
| Domain Name | www.example.com | The FQDN from the URL parameter `record` and `zone`. |
| Username | admin | You can choose whatever value you want. |
| Password | ●●●●●● | The API token you’ve created earlier. |