Command line tool for DDNS IP address updating.
Project description
noipy: DDNS update tool
Command line tool to update DDNS hosts IP address via update API. Initially the tool was designed to update IP address only on No-IP DDNS provider. But now noipy has support for the following DDNS providers:
Installation
Install with pip:
$ pip install noipy
Or with Snappy on supported distros:
$ sudo snap install noipy
Note: noipy will also install the Requests HTTP library.
Usage
Basic usage of noipy command line tool:
$ noipy -u <your username> -p <your password> -n <your hostname on DDNS provider>
--provider {generic|noip|dyn|duck}
For DuckDNS provider, the command line would look like this:
$ noipy -u <your token> -n <your DuckDNS domain> --provider duck
Or you can just use --hostname (-n) and --provider arguments if you have previously stored your auth information with --store option.
$ noipy --hostname <your hostname on DDNS provider> --provider {generic|noip|dyn| duck}
You can also specify a custom DDNS URL (thanks to @jayennis22):
$ noipy --hostname <your hostname on DDNS provider> [--provider generic]
--url <custom DDNS URL>
It is also possible to inform an IP address other than the machine’s current:
$ noipy --hostname <your hostname on DDNS provider> 127.0.0.1
If --provider option is not informed, generic will be used as provider.
For details:
$ noipy --help
Storing auth information
With --store option it is possible to store login information. The information is sotred in $HOME/.noipy/ directory:
$ noipy --store --username <your username> --password <your password> \
--provider {generic|noip|dyn| duck}
Or simply:
$ noipy --store --provider {generic|noip|dyn| duck}
And type username and password when required.
Note: password is stored simply encoded with Base64 method and is not actually encrypted!
Running tests
Install tests dependencies (tox and flake8):
$ pip install -r requirements_dev.txt
Test the code against all supported Python versions and check it against PEP8 with tox:
$ tox
Check PEP8 only:
$ tox -e pep8
Copyright & License
Copyright (c) 2013 Pablo Vieira (pv8).
Changelog
1.5.3 (2020-02-09)
Back to the previous response format from https://httpbin.org/ip
1.5.2 (2019-04-03)
Handle new response from https://httpbin.org/ip
1.5.1 (2017-12-19)
Support for Python 3.6
Minor refactor related to code style
Improved integration with codeclimate
1.5.0 (2016-10-30)
1.4.4 (2016-04-11)
Bugfix
1.4.3 (2015-10-15)
1.4.2 (2015-08-22)
Bugfix: storing auth credentials properly from stdin
Test case for --store option getting username/password from stdin
1.4.0 (2015-04-25)
Using the awesome Requests HTTP library
Using tox in order to ease test against multiple Python versions
1.3.1 (2014-12-19)
Send update to DDNS only if IP address has changed
1.3.0 (2014-12-16)
Support for custom DDNS URL via --url parameter
1.2.3 (2014-10-10)
Unit tests improvements and PluginsTest bug fixes
Custom config directory feature bug fix (--config argument)
1.2.2 (2014-07-03)
PEP8’d code (Closes #5)
Switched to Apache License, Version 2.0
Unit test improvement
Minor feature: custom config directory via -c or --config argument.
1.2.1 (2014-06-30)
Bug fix (execution via command line. issue #5)
1.2.0 (2014-04-21)
Support for DuckDNS domains update
1.1.4 (2013-08-29)
Test case improvements
Coveralls.io support
1.1.3 (2013-07-24)
Python 3.3 compatibility
1.1.0 (2013-05-15)
Support for DynDNS Update API
DDNS auth info storage changed
1.0.1 (2013-05-10)
Added flexibility to DNS updater with abc.ABCMeta
Code organization
Manual settings file removed (auth info can be stored via command line)
0.1.0 (2013-03-22)
Conception
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for noipy-1.5.3-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 82aaaea3a00f1e55aee3a1f8caad007ca6ff67367eafa593e244a5919a757257 |
|
MD5 | 74d14ea5f34ffba6dc7a18fa4095881d |
|
BLAKE2b-256 | f5375eec9d262308296c8a3cd8e7ed98bf5568c3eaccbc67920cf0f317c061b3 |