DynDNS client written in Clojure
Clojure Shell
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
src/com/mmazur/dynclj
test/com/mmazur/dynclj/test
README.md
TODO
dynclj.sh
project.clj

README.md

dynclj

dynclj is a small script to update DynDNS.org hosts. Written in Clojure, it was meant as Clojure learning experience for me.

Quick Start

  1. install leiningen
  2. in your dynclj checkout, run lein deps followed by lein compile
  3. create the config file ~/.dynclj/dynclj.conf with three lines:

    username= # dyndns username password= # password matching above username hosts=, # comma-separated list of hosts to update

  4. run dynclj.sh

How it Works

  1. check config file, determine hosts to update
  2. obtain the current IP address from checkip.dyndns.org
  3. check cache file (~/.dynclj/dynclj.cache) to determine when each host was last updated, if at all
  4. update hosts if required

Command-line Arguments

Run ./dynclj.sh --help to see the available command-line arguments. From the help text:

--config-file, -c use specified configuration file --ip force update to use this IP --force force the update --verbose, -v verbose output