- Notifications
You must be signed in to change notification settings - Fork0
Personal DDNS client and server with DigitalOcean as backend
License
NotificationsYou must be signed in to change notification settings
Heapy/ddns-fullstack
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Simple client-server DDNS setup for personal use.
- Server with static public IP address or domain name, i.e
ddns.bar.com
- Domain used with DigitalOcean DNS, i.e
bar.com
- DigitalOcean API token (Obtain a token using the API section in DigitalOcean UI)
- Home router with public, but dynamic IP (This project is nota tunneling solution)
Parameter | Default | Required | Description |
---|---|---|---|
MODE | client | true | Describes mode in which application running, set toserver to run as IP server |
HEADER | none | false | Defines which header will contain IP value. Otherwise IP from request will be taken. |
PORT | 8080 | false | Port on which application will be listening |
HOST | 0.0.0.0 | false | Host on which application will be listening |
Parameter | Default | Required | Description |
---|---|---|---|
MODE | client | false | Describes mode in which application running, omit or set toclient to run as DNS updater |
SERVER_URL | none | true | URL to endpoint that returns IP |
CHECK_PERIOD | 5m | false | Period of time between checks for IP change |
REQUEST_TIMEOUT | 30s | false | Timeout for request to server |
ATTEMPTS_BEFORE_WARNING | 5 | false | Number of attempts to make before warning about failed request |
Parameter | Default | Required | Description |
---|---|---|---|
DIGITALOCEAN_TOKEN | none | true | Token to access DigitalOcean API |
DIGITALOCEAN_DOMAIN_NAME | none | true | Domain name to update, example:bar.com |
DIGITALOCEAN_SUBDOMAIN | none | true | Subdomain to update, example:foo (for foo.bar.com) |
Parameter | Default | Required | Description |
---|---|---|---|
CLOUDFLARE_TOKEN | none | true | Token to access Cloudflare API |
CLOUDFLARE_DOMAIN_NAME | none | true | Domain name to update, example:foo.bar.com |
CLOUDFLARE_ZONE_ID | none | true | Cloudflare Zone Id |
SetTELEGRAM_TOKEN
andTELEGRAM_CHAT_ID
environment variables to enable notifications about IP changes and warning.
Parameter | Default | Required | Description |
---|---|---|---|
TELEGRAM_TOKEN | none | true | Token to access Telegram API. Obtain an token using@BotFather |
TELEGRAM_CHAT_ID | none | true | Chat ID to send messages to, start bot, and checkhttps://api.telegram.org/bot[TELEGRAM_TOKEN]/getUpdates to obtain chat. |
About
Personal DDNS client and server with DigitalOcean as backend
Resources
License
Stars
Watchers
Forks
Releases
No releases published