Support - Zerigo DNS
Dynamic Updates
Dynamic DNS protocol
Your account must be enabled for dynamic updates. This is disabled by default for security reasons. Go to Manage Account -> DNS -> Preferences to enable dynamic updates and create an update token. This token will serve as the password for your updates.
Dynamic DNS updates should be sent to http://update.zerigo.com/dynamic
- Parameters
host- The full domain name to update.ip- IP address to set. If not specified, will use the IP of the incoming request (which is generally correct).user- Your email address you use to login to Zerigo.password- The token from the Account page -- not your actual Zerigo password.
Standard HTTP basic authentication may be used instead of the user and password parameters.
Example request:
http://update.zerigo.com/dynamic?host=example.zerigo.com&ip=208.78.96.210&user=login@example.com&password=f7f9c95662ebc538
IPv6 support
IPv4 and IPv6 are both fully supported for dynamic updates.
If an IPv4 address is given for the ip parameter or if the connection comes from an IPv4 address, we'll look for and update an A record.
Likewise, if ip is an IPv6 address, or if the connection comes from an IPv6 address, we'll look for and update an AAAA record.
Checking your current IP address
If the client you intend to access via your dynamic IP is actually behind a NAT box, it may be helpful to retrieve the current IP. We provide servers for you to do that.
Make a simple HTTP request to any of the following addresses.
- http://checkip.zerigo.com/ - accepts both IPv4 and IPv6 connections (dual stack)
- http://checkip4.zerigo.com/ - accepts IPv4 only
- http://checkip6.zerigo.com/ - accepts IPv6 only
The IP address will be returned as a simple XML node. Examples:
<ipv4>1.2.3.4</ipv4>
<ipv6>2000:a:b:c::72</ipv6>
Dynamic DNS software
Most dynamic DNS clients will automatically detect when an IP has changed and only submit a request to change the IP when it has actually changed. A few do not. Also, techniques like cron do not. If you use something that cannot detect when an update is necessary, please run updates no more than once per hour.
cron
When using a simple task scheduler, like cron, pick one random minute within the hour—this will help space the requests out. The minute field in the example below has already been randomized for you.
(should be one line):17 * * * * wget 'http://update.zerigo.com/dynamic?host=example.zerigo.com&user=login@example.com&password=f7f9c95662ebc538'
IPv4 or IPv6 can be forced by adding the -4 or -6 parameters, respectively.
inadyn
The standard version of inadyn is readily available for most platforms and is included with Linux distributions. IPv4 support only.
(should be one line):inadyn --dyndns_system custom@http_svr_basic_auth -u login@email.com -p f7f9c95662ebc538 --dyndns_server_name update.zerigo.com --dyndns_server_url /dynamic?host= --ip_server_name checkip4.zerigo.com / -a example.zerigo.com
inadyn-mt
This fork of inadyn has a number of enhanced features, including direct support for Zerigo and full IPv6 support. Download inadyn-mt.
For dual IPv4/IPv6 support (should be one line):inadyn-mt --dyndns_system default@zerigo.com -u login@email.com -p f7f9c95662ebc538 --ip_server_name checkip.zerigo.com / -a example.zerigo.com dual
For IPv4 only support (should be one line):inadyn-mt --dyndns_system default@zerigo.com -u login@email.com -p f7f9c95662ebc538 --ip_server_name checkip4.zerigo.com / -a example.zerigo.com
For IPv6 only support (should be one line):inadyn-mt --dyndns_system default@zerigo.com -u login@email.com -p f7f9c95662ebc538 --ip_server_name checkip6.zerigo.com / -a example.zerigo.com
