||1 year ago|
|.gitignore||1 year ago|
|README.md||1 year ago|
|dyndns-cli.py||1 year ago|
|dyndns_screen_1.png||1 year ago|
|license.txt||1 year ago|
|main.py||1 year ago|
|utils.py||1 year ago|
DO DynDNS is a small Python app that can:
- Lets you add new DNS records to your DigitalOcean Network service.
- Adds records from your DigitalOcean Network service.
- Lists all sub domains on your Dynamic DNS domain.
- Update IP address for your Dynamic DNS records.
- Remove records from the application - not from DigitalOcean Network service.
- Download the tar.gz file from the relase page
- Untar it and run
./install.sh(remember to read/review the install.sh with a text editor)
- The install.sh command will copy the files (
/usr/local/binand create a .desktop file in
/usr/share/applications/for the main application (
- Run by executing dyndns from terminal or by searching for it in your DM.
The first run will create two files:
You will need edit the config.ini file in your favourite editor.
[DYNDNS] 'api_key': '<API KEY> from Digital Ocean at https://cloud.digitalocean.com/api_access', 'baseuri': 'example.tld', 'logfile': 'dyndns.log'
The API key you need to get from you DigitalOcean account. The baseuri are the top level domain you want to use as the base for your dynamic DNS solution.
The logfile can be named anything, but the
~/.config/dyndns/dyndns.log was created for you. So you don't need to change that.
.desktop file will look for an icon "dyndns.png" in
~/.config/dyndns/. You can copy your own icon to that folder and name it "dyndns.png" or you can copy the icon in the un-zipped folder. The application itself will also look for "dyndns.png" in the folder
This is the companion app for the gui app. This is meant to be executed via
It uses the same
config.ini file as the main app and updates all the domains found in the config file -
where the IP address on DigitalOcean Network service differs from your local IP address.
Edit crontab by executing
crontab -e and add the app to it.
Eg. to run once every other hour add the following line to your crontab:
0 */2 * * * dyndns-cli >/dev/null 2>&1
Create a companion app that can be executed in crontab.
- Add functionality to delete a record from DigitalOcean Network service.
- Maybe add IPv6 functionality...
##Note If you want to run a dynamic DNS solution on a server (eg. not you main machine) you could use the standalone command line (cli) application py-dyndns. This application uses its own config.ini on the machine it is running on. Follow the instructions on the app's git page.