Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/oscartbeaumont/netlify-dynamic-dns
A Dynamic DNS Client For Netlify Managed DNS
https://github.com/oscartbeaumont/netlify-dynamic-dns
dockerised dynamic-dns dynamic-dns-updater netlify netlify-api netlify-dns netlify-dynamic-dns netlify-managed-dns netlify-openapi
Last synced: about 12 hours ago
JSON representation
A Dynamic DNS Client For Netlify Managed DNS
- Host: GitHub
- URL: https://github.com/oscartbeaumont/netlify-dynamic-dns
- Owner: oscartbeaumont
- License: mit
- Created: 2019-01-24T18:49:28.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2024-11-20T03:28:07.000Z (about 1 month ago)
- Last Synced: 2024-12-26T16:07:17.168Z (8 days ago)
- Topics: dockerised, dynamic-dns, dynamic-dns-updater, netlify, netlify-api, netlify-dns, netlify-dynamic-dns, netlify-managed-dns, netlify-openapi
- Language: Go
- Homepage:
- Size: 397 KB
- Stars: 62
- Watchers: 2
- Forks: 19
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
Netlify Dynamic DNS
A simple command line tool for updating a Netlify's Managed DNS record to point at your public IP address. Supporting both IPv4 and IPv6.
## Installation & Usage
```bash
# Install via script
curl -s -L https://raw.githubusercontent.com/oscartbeaumont/netlify-dynamic-dns/master/install.sh | sudo sh# Set home.example.com to your public IP and quit
nddns -accesstoken xxx -zone example.com -record home# Set home.example.com to your pulbic IP every 5 minutes
nddns -accesstoken xxx -zone example.com -record home -interval 5# Using Docker
docker run ghcr.io/oscartbeaumont/netlify-dynamic-dns:latest -accesstoken xxx -zone example.com -record home -interval 5# From Git
git clone https://github.com/oscartbeaumont/netlify-dynamic-dns.git
cd netlify-dynamic-dns
go run ./cmd -accesstoken xxx -zone example.com -record home
```## Configuration
| Flag | Environment Variable | Default | Description |
|--------------|----------------------|-------------|------------------------------------------------------------------------------------------------------------|
| access-token | NDDNS_ACCESS_TOKEN | | Your Netlify personal access token. Can be created at [here](https://app.netlify.com/account/applications) |
| zone | NDDNS_ZONE | example.com | The Netlify DNS zone domain name |
| record | NDDNS_RECORD | home | The record in the DNS zone to set as your public IP |
| ipv6 | NDDNS_IPv6_ENABLED | true | Whether the IPv6 record (AAAA) should also be updated |
| interval | NDDNS_INTERVAL | 0 | The amount of minutes between sending updates. If 0 only a single update is done. |If you would like a custom TTL value, create an existing record (you can set anything in the IP field) and then the application will use it when recreating the record.
## How It Works
Netlify Dynamic DNS uses the [OpenDNS](https://www.opendns.com) resolver to determine your public IP. The resolver has a feature which echoes the clients IP address when you lookup `myip.opendns.com`. This lookup is done both over IPv4 and IPv6 to determine both public IP's then using the [Netlify OpenAPI Client](https://github.com/netlify/open-api) the old DNS records are removed and new ones are created with your latest public IP.