Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
Fetching contributors…

Cannot retrieve contributors at this time

48 lines (41 sloc) 1.78 kb


A dynamic dns client for updating hostnames


  • url: The URL of the dynamic dns service (eg: http://[USERNAME]:[PASSWORD][HOSTNAME]&myip=[IP])
  • hostname: Dynamic dns hostname that should be updated. Can be array (for multi host update) or string
  • username: Username for authenticate at the service
  • password: Password for authenticate at the service
  • interface: Networkinterface that is connected to the internet (eg: ppp0). If empty API from is used
  • protocol: IP protocol should be ipv4 or ipv6
  • check: Interval in minutes to check current IP

URL Parsing

The URL you provide to the API will be parsed and the given placeholders will be replaced with the given parameters. If you have a service where no password is required, just an API-Key use ether the password or username parameter for replacing.


var DynDNSClient = require("node-dyndns-client"),
    dyndns = new DynDNSClient({
        url                 : "http://[USERNAME]:[PASSWORD][HOSTNAME]&myip=[IP]",
        hostname            : [
        username            : 'username',
        password            : 'password',
        network_interface   : 'ppp0',
        protocol            : 'ipv4',
        check               : 60

dyndns.on('IP:changed', function (newIP, oldIP) {
    // IP has changed

dyndns.on('update:success', function () {
    // Update at services succeeded

dyndns.on('error', function (err) {
    // Update at services failed
Jump to Line
Something went wrong with that request. Please try again.