|
This is an english translation of the update protocol used in DynDNS.it.
You can find the original Italian document here: http://dyndns.it/go.php?p=techspec.html
Using this protocol you can update your IP automatically using a script or a simple wget command.
Connect to port 80 using HTTPTo update your dynDNS.it IP address you have to connect to port 80 of host: streamer.net using a simple HTTP GET at URI /nic/update using some parameters to specify the data to update. DynDNS.it accepts HTTP/1.0 and HTTP/1.1 GET Format.
Updating via Browser You can simply test the protocol using any browser. Use an URL like the following: http://username:password @ streamer.net/nic/update? system=dyndns& hostname=<first_domain_name_to_update>& myip=<IP_Address>& wildcard=OFF& mx=<MX_IP_Address>& backmx=NO (one line only, no line breaks and no spaces) where: <first_domain_name_to_update> is the full domain to update (ex. example.ns0.it) <IP_Address> is the your updated IP address <MX_IP_Address> is the MX IP address (optional) All Parameters username:password The username and password used to login to DynDNS.it Systems: All, Optional: No system=dyndns The system you wish to use for this update. DynDNS will update a Dynamic DNS hostname. If the system parameter is not specified at all, it will default to dyndns. Systems: All, Optional: Yes hostname=host1.ns0.it,host2.ns0.it... These are the hostnames you wish to update. Each hostname specified will be updated with the same return code for each host will be given one per line, in the same order as the hosts given. (e.g. $host1_return_code,$host2_return_code) Systems: All, Optional: No myip=ipaddr IP address to set for the update. If this parameter is not specified, the best IP address the server can determine will be used (some proxy configurations pass the IP in a header, and that is detected by the server). If the IP address passed to the system is not properly formed, it will be ignored and the system's best guess will be used. Systems: All, Optional: Yes wildcard=ON|OFF|NOCHG Enable/disable wildcards for this host (ON to enable). If omitted, will default to OFF. The wildcard aliases *.yourhost.ourdomain.tld to the same address as yourhost.ourdomain.tld. Systems: DynDNS, StatDNS, Optional: Yes mx=mailexchanger|NOCHG Specifies a Mail eXchanger for use with the hostname being modified. The specified MX must resolve to an IP address, or it will be ignored. Note: Providing no MX setting (or an MX that doesn't resolve properly to an A record) will cause the hostname's MX record(s) to be removed. Specifying an MX of "NOCHG" will cause the existing MX setting to be preserved in whatever state it was previously updated via a client or the DynDNS website. Systems: DynDNS, StatDNS, Optional: Yes backmx=YES|NO|NOCHG Request that the MX in the previous parameter be set up as a backup MX by listing the host itself as an MX with a lower preference value. A value of "NOCHG" will result in the previous value of the setting being preserved. If mitted, defaults to "OFF". Systems: DynDNS, StatDNS, Optional: Yes offline=YES|NO Sets the hostname to offline mode. This feature is not available at the moment! RETURN CODES After the Update you get the following return codes (string) : badsys The sycodestem parameter given is not valid. Valid system parameters is only dyndns badagent The user agent that was sent has been blocked for not following these specifications or no user agent was specified. badauth The username or password specified are incorrect. !donator An option available only to credited users (such as offline URL) was specified, but the user is not a credited user. If multiple hosts were specified, only a single !donator will be returned. good The update was successful, and the hostname is now updated. nochg The update changed no settings, and is considered abusive. Additional nochg updates will cause the hostname to become blocked. Note that, for confirmation purposes, good and nochg messages will be followed by the IP address that the hostname was updated to. This value will be separated from the return code by a space. notfqdn The hostname specified is not a fully-qualified domain name (not in the form nome.ns0.it or nome.ns0.it). nohost The hostname specified does not exist !yours The hostname specified exists, but not under the username specified. abuse The hostname specified is blocked for update abuse. Note that, if no hostnames were specified, notfqdn will be returned once. numhost Too many or too few hosts found dnserr DNS error encountered The return dnserr will be followed by a numeric packet ID which should be reported to the support department along with the error. |