ipsync

ipsync is a script to update multiple cloud DNS providers with your external IP address


License
MIT
Install
pip install ipsync==0.0.0

Documentation

ipsync

ipsync is a script to update multiple cloud DNS providers with your external IP address. Useful for when you need to connect to a system on a dynamic IP.

Build Status Coverage Status Scrutinizer Code Quality PyPI Version

Getting Started

Requirements

  • Python 2.7+ or Python 3.3+

Installation

ipsync can be installed with pip:

$ pip install ipsync

or directly from the source code:

$ git clone https://github.com/jon-walton/ipsync.git
$ cd ipsync
$ python setup.py install

Basic Usage

Usage:
    ipsync [options] <command>

Options:
    -h --help               Show this screen.
    -v --version            Show version.
    -c FILE --config=FILE   Configuration FILE to use [default: ~/.config/ipsync.conf]
    --dry-run               Run but don't make any changes.

Available commands:
    update                  Resolve current IP address and update all providers

Configuration

By default, ipsync will look in ~/.config/ipsync.conf for a yaml formatted file. A sample file is in config/config.sample.yml

Namecheap.com

For ipsync to work with namecheap, you must first enable it within the control panel and then configure a namecheap section within the ipsync configuration file

namecheap:
  test.com:
    hostname: [www, '@'] # Update both www and "naked" domains
    password: password

  example.com:
    hostname: test # Update test.example.com
    password: 123456

For Contributors

Requirements

Installation

Create a virtualenv:

$ mkvirtualenv ipsync
$ workon ipsync
$ pip install -r requirements.txt

Run the tests:

$ make test
$ make tests  # includes integration tests

Run static analysis:

$ make pep8
$ make pep257
$ make pylint
$ make check  # includes all checks