GitXplorerGitXplorer
m

gandyndns

public
0 stars
0 forks
0 issues

Commits

List of commits on branch master.
Unverified
e988752f9d29a0bf5daa285f85b16b80d5b0cacf

release version 0.4

mmarmeladema committed 6 years ago
Unverified
5cd0c0d96a38e1cefbe9494eeefd02e5b8709a85

Switch to ipify.org instead of whatip.me

mmarmeladema committed 6 years ago
Unverified
8f04f3848a335d8d508d573c41c7d2345f3a3071

Add yapf config + format gandyndns/__init__.py

mmarmeladema committed 6 years ago
Unverified
8ba0b5603246df16a04f46755535b30f2e6f9ae7

release version 0.3

mmarmeladema committed 7 years ago
Unverified
69e53ab7982924856a12cced880a35eb736e835b

use python_requires in setup.py to only install gandyndns for python3

mmarmeladema committed 7 years ago
Unverified
a309c71054f156a337bfb8c5341f02cdf32e81db

fix pypi markdown README discovery

mmarmeladema committed 7 years ago

README

The README file for this repository.

Gandyndns

What is Gandyndns?

Gandidyndns is a dynamic IP updater based on Gandi LiveAPI. It can handle IPv4 and IPv6 although care should taken for IPv6 if you use dynamic/temporary addresses.

How does it work?

Well, read the code, it's pretty simple :] In short, it does the following for each domain that has to be updated:

  1. Retrieve current address(es) from http://whatip.me For each type of each record of each domain from the configuration:
  2. Retrieve current record from gandi
  3. If both records match, current record is up to date!
  4. If not, we upgrade gandi with current record informations Done.

How to install it?

python3 setup.py install

If you do not plan to share it among different users, you can (and maybe should) install it in your own user site-package directory with:

python3 setup.py install --user

You can also install it in a virtualenv.

How to use it?

Configuration file is written in json format.

Basic configuration

{
    "domains": {
        "example.com": {
            "apikey": "d41d8cd98f00b204e9800998ecf8427e",
            "records" : {
                "test": {
                    "A": {
                        "rrset_values":["{remote_addr}"]
                    }
                }
            }
        }
    }
}

You can either have different config files or have multiple domains in the same config file, as you wish.

Basic usage

$ gandyndns /path/to/gandyndns.conf

Gandyndns does not need any priviledge besides internet access to run, so avoid running it as root.

Cheers