Ddclient-help

From SME Server
Revision as of 13:01, 18 December 2023 by Brianr (talk | contribs) (Created page with "== DDclient Help == usage: ddclient [options] options are: -daemon <delay> : run as a daemon, specify <delay> as an interval (default: 0). -foreground : d...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

DDclient Help

usage: ddclient [options] options are:

 -daemon <delay>       : run as a daemon, specify <delay> as an interval (default: 0).
 -foreground           : do not fork (default: noforeground).
 -proxy <host>         : use <host> as the HTTP proxy.
 -server <host>        : update DNS information on <host> (default: members.dyndns.org).
 -protocol <type>      : update protocol used (default: dyndns2).
 -list-protocols       : print a machine-readable list of supported update protocols and exit. Format: one per line.
 -file <path>          : load configuration information from <path> (default: /etc/ddclient/ddclient.conf).
 -cache <path>         : record address used in <path> (default: /var/cache/ddclient/ddclient.cache).
 -pid <path>           : record process id in <path> if daemonized.
 -use <which>          : deprecated, see 'usev4' and 'usev6' (default: ip).
   -use=ip                     : deprecated, see 'usev4' and 'usev6'.
   -use=web                    : deprecated, see 'usev4' and 'usev6'.
   -use=if                     : deprecated, see 'usev4' and 'usev6'.
   -use=cmd                    : deprecated, see 'usev4' and 'usev6'.
   -use=fw                     : deprecated, see 'usev4' and 'usev6'.
   -use=2wire                  : Built-in firewall 2Wire 1701HG Gateway deprecated, see 'usev4' and 'usev6'.
   -use=3com-3c886a            : Built-in firewall 3com 3c886a 56k Lan Modem deprecated, see 'usev4' and 'usev6'.
   -use=3com-oc-remote812      : Built-in firewall 3com OfficeConnect Remote 812 deprecated, see 'usev4' and 'usev6'.
   -use=alcatel-510            : Built-in firewall Alcatel Speed Touch 510 deprecated, see 'usev4' and 'usev6'.
   -use=alcatel-530            : Built-in firewall Alcatel/Thomson SpeedTouch 530 deprecated, see 'usev4' and 'usev6'.
   -use=alcatel-stp            : Built-in firewall Alcatel Speed Touch Pro deprecated, see 'usev4' and 'usev6'.
   -use=allnet-1298            : Built-in firewall Allnet 1298 deprecated, see 'usev4' and 'usev6'.
   -use=cayman-3220h           : Built-in firewall Cayman 3220-H DSL deprecated, see 'usev4' and 'usev6'.
   -use=cisco                  : deprecated, see 'usev4' and 'usev6'.
   -use=cisco-asa              : deprecated, see 'usev4' and 'usev6'.
   -use=dlink-524              : Built-in firewall D-Link DI-524 deprecated, see 'usev4' and 'usev6'.
   -use=dlink-604              : Built-in firewall D-Link DI-604 deprecated, see 'usev4' and 'usev6'.
   -use=dlink-614              : Built-in firewall D-Link DI-614+ deprecated, see 'usev4' and 'usev6'.
   -use=e-tech                 : Built-in firewall E-tech Router deprecated, see 'usev4' and 'usev6'.
   -use=elsa-lancom-dsl10      : Built-in firewall ELSA LanCom DSL/10 DSL FW deprecated, see 'usev4' and 'usev6'.
   -use=elsa-lancom-dsl10-ch01 : Built-in firewall ELSA LanCom DSL/10 DSL FW (isdn ch01) deprecated, see 'usev4' and 'usev6'.
   -use=elsa-lancom-dsl10-ch02 : Built-in firewall ELSA LanCom DSL/10 DSL FW (isdn ch01) deprecated, see 'usev4' and 'usev6'.
   -use=linksys                : Built-in firewall Linksys FW deprecated, see 'usev4' and 'usev6'.
   -use=linksys-rv042-wan1     : Built-in firewall Linksys RV042 Dual Homed Router WAN Port 2 deprecated, see 'usev4' and 'usev6'.
   -use=linksys-rv042-wan2     : Built-in firewall Linksys RV042 Dual Homed Router WAN Port 2 deprecated, see 'usev4' and 'usev6'.
   -use=linksys-ver2           : Built-in firewall Linksys FW version 2 deprecated, see 'usev4' and 'usev6'.
   -use=linksys-ver3           : Built-in firewall Linksys FW version 3 deprecated, see 'usev4' and 'usev6'.
   -use=linksys-wcg200         : Built-in firewall Linksys WCG200 FW deprecated, see 'usev4' and 'usev6'.
   -use=linksys-wrt854g        : Built-in firewall Linksys WRT854G FW deprecated, see 'usev4' and 'usev6'.
   -use=maxgate-ugate3x00      : Built-in firewall MaxGate UGATE-3x00 FW deprecated, see 'usev4' and 'usev6'.
   -use=netcomm-nb3            : Built-in firewall NetComm NB3 deprecated, see 'usev4' and 'usev6'.
   -use=netgear-dg834g         : Built-in firewall netgear-dg834g deprecated, see 'usev4' and 'usev6'.
   -use=netgear-rp614          : Built-in firewall Netgear RP614 FW deprecated, see 'usev4' and 'usev6'.
   -use=netgear-rt3xx          : Built-in firewall Netgear FW deprecated, see 'usev4' and 'usev6'.
   -use=netgear-wgt624         : Built-in firewall Netgear WGT624 deprecated, see 'usev4' and 'usev6'.
   -use=netgear-wpn824         : Built-in firewall Netgear WPN824 FW deprecated, see 'usev4' and 'usev6'.
   -use=netopia-r910           : Built-in firewall Netopia R910 FW deprecated, see 'usev4' and 'usev6'.
   -use=olitec-SX200           : Built-in firewall olitec-SX200 deprecated, see 'usev4' and 'usev6'.
   -use=rtp300                 : Built-in firewall Linksys RTP300 deprecated, see 'usev4' and 'usev6'.
   -use=siemens-ss4200         : Built-in firewall Siemens SpeedStream 4200 deprecated, see 'usev4' and 'usev6'.
   -use=sitecom-dc202          : Built-in firewall Sitecom DC-202 FW deprecated, see 'usev4' and 'usev6'.
   -use=smc-barricade          : Built-in firewall SMC Barricade FW deprecated, see 'usev4' and 'usev6'.
   -use=smc-barricade-7004vbr  : Built-in firewall SMC Barricade FW (7004VBR model config) deprecated, see 'usev4' and 'usev6'.
   -use=smc-barricade-7401bra  : Built-in firewall SMC Barricade 7401BRA FW deprecated, see 'usev4' and 'usev6'.
   -use=smc-barricade-alt      : Built-in firewall SMC Barricade FW (alternate config) deprecated, see 'usev4' and 'usev6'.
   -use=sohoware-nbg800        : Built-in firewall SOHOWare BroadGuard NBG800 deprecated, see 'usev4' and 'usev6'.
   -use=sveasoft               : Built-in firewall Sveasoft WRT54G/WRT54GS deprecated, see 'usev4' and 'usev6'.
   -use=thomson-st536v6        : Built-in firewall Thomson SpeedTouch 536v6 deprecated, see 'usev4' and 'usev6'.
   -use=thomson-tg782          : Built-in firewall Thomson/Technicolor TG782 deprecated, see 'usev4' and 'usev6'.
   -use=vigor-2200usb          : Built-in firewall Vigor 2200 USB deprecated, see 'usev4' and 'usev6'.
   -use=watchguard-edge-x      : Built-in firewall Watchguard Edge X FW deprecated, see 'usev4' and 'usev6'.
   -use=watchguard-soho        : Built-in firewall Watchguard SOHO FW deprecated, see 'usev4' and 'usev6'.
   -use=westell-6100           : Built-in firewall Westell C90-610015-06 DSL Router deprecated, see 'usev4' and 'usev6'.
   -use=xsense-aero            : Built-in firewall Xsense Aero deprecated, see 'usev4' and 'usev6'.
 -usev4 <which>             : how the should IPv4 address be obtained. (default: disabled).
   -usev4=2wire                  : obtain IPv4 from 2Wire 1701HG Gateway at the -fwv4 {address}.
   -usev4=3com-3c886a            : obtain IPv4 from 3com 3c886a 56k Lan Modem at the -fwv4 {address}.
   -usev4=3com-oc-remote812      : obtain IPv4 from 3com OfficeConnect Remote 812 at the -fwv4 {address}.
   -usev4=alcatel-510            : obtain IPv4 from Alcatel Speed Touch 510 at the -fwv4 {address}.
   -usev4=alcatel-530            : obtain IPv4 from Alcatel/Thomson SpeedTouch 530 at the -fwv4 {address}.
   -usev4=alcatel-stp            : obtain IPv4 from Alcatel Speed Touch Pro at the -fwv4 {address}.
   -usev4=allnet-1298            : obtain IPv4 from Allnet 1298 at the -fwv4 {address}.
   -usev4=cayman-3220h           : obtain IPv4 from Cayman 3220-H DSL at the -fwv4 {address}.
   -usev4=cisco-asav4            : obtain IPv4 from Cisco ASA at the -fwv4 {address}.
   -usev4=ciscov4                : obtain IPv4 from Cisco FW at the -fwv4 {address}.
   -usev4=cmdv4                  : obtain IPv4 from the -cmdv4 {external-command}.
   -usev4=disabled               : do not obtain an IPv4 address for this host.
   -usev4=dlink-524              : obtain IPv4 from D-Link DI-524 at the -fwv4 {address}.
   -usev4=dlink-604              : obtain IPv4 from D-Link DI-604 at the -fwv4 {address}.
   -usev4=dlink-614              : obtain IPv4 from D-Link DI-614+ at the -fwv4 {address}.
   -usev4=e-tech                 : obtain IPv4 from E-tech Router at the -fwv4 {address}.
   -usev4=elsa-lancom-dsl10      : obtain IPv4 from ELSA LanCom DSL/10 DSL FW at the -fwv4 {address}.
   -usev4=elsa-lancom-dsl10-ch01 : obtain IPv4 from ELSA LanCom DSL/10 DSL FW (isdn ch01) at the -fwv4 {address}.
   -usev4=elsa-lancom-dsl10-ch02 : obtain IPv4 from ELSA LanCom DSL/10 DSL FW (isdn ch01) at the -fwv4 {address}.
   -usev4=fwv4                   : obtain IPv4 from the firewall specified by -fwv4 {type|address}.
   -usev4=ifv4                   : obtain IPv4 from the -ifv4 {interface}.
   -usev4=ipv4                   : obtain IPv4 from -ipv4 {address}.
   -usev4=linksys                : obtain IPv4 from Linksys FW at the -fwv4 {address}.
   -usev4=linksys-rv042-wan1     : obtain IPv4 from Linksys RV042 Dual Homed Router WAN Port 2 at the -fwv4 {address}.
   -usev4=linksys-rv042-wan2     : obtain IPv4 from Linksys RV042 Dual Homed Router WAN Port 2 at the -fwv4 {address}.
   -usev4=linksys-ver2           : obtain IPv4 from Linksys FW version 2 at the -fwv4 {address}.
   -usev4=linksys-ver3           : obtain IPv4 from Linksys FW version 3 at the -fwv4 {address}.
   -usev4=linksys-wcg200         : obtain IPv4 from Linksys WCG200 FW at the -fwv4 {address}.
   -usev4=linksys-wrt854g        : obtain IPv4 from Linksys WRT854G FW at the -fwv4 {address}.
   -usev4=maxgate-ugate3x00      : obtain IPv4 from MaxGate UGATE-3x00 FW at the -fwv4 {address}.
   -usev4=netcomm-nb3            : obtain IPv4 from NetComm NB3 at the -fwv4 {address}.
   -usev4=netgear-dg834g         : obtain IPv4 from netgear-dg834g at the -fwv4 {address}.
   -usev4=netgear-rp614          : obtain IPv4 from Netgear RP614 FW at the -fwv4 {address}.
   -usev4=netgear-rt3xx          : obtain IPv4 from Netgear FW at the -fwv4 {address}.
   -usev4=netgear-wgt624         : obtain IPv4 from Netgear WGT624 at the -fwv4 {address}.
   -usev4=netgear-wpn824         : obtain IPv4 from Netgear WPN824 FW at the -fwv4 {address}.
   -usev4=netopia-r910           : obtain IPv4 from Netopia R910 FW at the -fwv4 {address}.
   -usev4=olitec-SX200           : obtain IPv4 from olitec-SX200 at the -fwv4 {address}.
   -usev4=rtp300                 : obtain IPv4 from Linksys RTP300 at the -fwv4 {address}.
   -usev4=siemens-ss4200         : obtain IPv4 from Siemens SpeedStream 4200 at the -fwv4 {address}.
   -usev4=sitecom-dc202          : obtain IPv4 from Sitecom DC-202 FW at the -fwv4 {address}.
   -usev4=smc-barricade          : obtain IPv4 from SMC Barricade FW at the -fwv4 {address}.
   -usev4=smc-barricade-7004vbr  : obtain IPv4 from SMC Barricade FW (7004VBR model config) at the -fwv4 {address}.
   -usev4=smc-barricade-7401bra  : obtain IPv4 from SMC Barricade 7401BRA FW at the -fwv4 {address}.
   -usev4=smc-barricade-alt      : obtain IPv4 from SMC Barricade FW (alternate config) at the -fwv4 {address}.
   -usev4=sohoware-nbg800        : obtain IPv4 from SOHOWare BroadGuard NBG800 at the -fwv4 {address}.
   -usev4=sveasoft               : obtain IPv4 from Sveasoft WRT54G/WRT54GS at the -fwv4 {address}.
   -usev4=thomson-st536v6        : obtain IPv4 from Thomson SpeedTouch 536v6 at the -fwv4 {address}.
   -usev4=thomson-tg782          : obtain IPv4 from Thomson/Technicolor TG782 at the -fwv4 {address}.
   -usev4=vigor-2200usb          : obtain IPv4 from Vigor 2200 USB at the -fwv4 {address}.
   -usev4=watchguard-edge-x      : obtain IPv4 from Watchguard Edge X FW at the -fwv4 {address}.
   -usev4=watchguard-soho        : obtain IPv4 from Watchguard SOHO FW at the -fwv4 {address}.
   -usev4=webv4                  : obtain IPv4 from an IP discovery page on the web.
   -usev4=westell-6100           : obtain IPv4 from Westell C90-610015-06 DSL Router at the -fwv4 {address}.
   -usev4=xsense-aero            : obtain IPv4 from Xsense Aero at the -fwv4 {address}.
 -usev6 <which>             : how the should IPv6 address be obtained. (default: disabled).
   -usev6=2wire                  : obtain IPv6 from 2Wire 1701HG Gateway at the -fwv6 {address}.
   -usev6=3com-3c886a            : obtain IPv6 from 3com 3c886a 56k Lan Modem at the -fwv6 {address}.
   -usev6=3com-oc-remote812      : obtain IPv6 from 3com OfficeConnect Remote 812 at the -fwv6 {address}.
   -usev6=alcatel-510            : obtain IPv6 from Alcatel Speed Touch 510 at the -fwv6 {address}.
   -usev6=alcatel-530            : obtain IPv6 from Alcatel/Thomson SpeedTouch 530 at the -fwv6 {address}.
   -usev6=alcatel-stp            : obtain IPv6 from Alcatel Speed Touch Pro at the -fwv6 {address}.
   -usev6=allnet-1298            : obtain IPv6 from Allnet 1298 at the -fwv6 {address}.
   -usev6=cayman-3220h           : obtain IPv6 from Cayman 3220-H DSL at the -fwv6 {address}.
   -usev6=cisco-asav6            : obtain IPv6 from Cisco ASA at the -fwv6 {address}.
   -usev6=ciscov6                : obtain IPv6 from Cisco FW at the -fwv6 {address}.
   -usev6=cmd                    : deprecated, use 'cmdv6'.
   -usev6=cmdv6                  : obtain IPv6 from the -cmdv6 {external-command}.
   -usev6=disabled               : do not obtain an IPv6 address for this host.
   -usev6=dlink-524              : obtain IPv6 from D-Link DI-524 at the -fwv6 {address}.
   -usev6=dlink-604              : obtain IPv6 from D-Link DI-604 at the -fwv6 {address}.
   -usev6=dlink-614              : obtain IPv6 from D-Link DI-614+ at the -fwv6 {address}.
   -usev6=e-tech                 : obtain IPv6 from E-tech Router at the -fwv6 {address}.
   -usev6=elsa-lancom-dsl10      : obtain IPv6 from ELSA LanCom DSL/10 DSL FW at the -fwv6 {address}.
   -usev6=elsa-lancom-dsl10-ch01 : obtain IPv6 from ELSA LanCom DSL/10 DSL FW (isdn ch01) at the -fwv6 {address}.
   -usev6=elsa-lancom-dsl10-ch02 : obtain IPv6 from ELSA LanCom DSL/10 DSL FW (isdn ch01) at the -fwv6 {address}.
   -usev6=fwv6                   : obtain IPv6 from the firewall specified by -fwv6 {type|address}.
   -usev6=if                     : deprecated, use 'ifv6'.
   -usev6=ifv6                   : obtain IPv6 from the -if {interface}.
   -usev6=ip                     : deprecated, use 'ipv6'.
   -usev6=ipv6                   : obtain IPv6 from -ipv6 {address}.
   -usev6=linksys                : obtain IPv6 from Linksys FW at the -fwv6 {address}.
   -usev6=linksys-rv042-wan1     : obtain IPv6 from Linksys RV042 Dual Homed Router WAN Port 2 at the -fwv6 {address}.
   -usev6=linksys-rv042-wan2     : obtain IPv6 from Linksys RV042 Dual Homed Router WAN Port 2 at the -fwv6 {address}.
   -usev6=linksys-ver2           : obtain IPv6 from Linksys FW version 2 at the -fwv6 {address}.
   -usev6=linksys-ver3           : obtain IPv6 from Linksys FW version 3 at the -fwv6 {address}.
   -usev6=linksys-wcg200         : obtain IPv6 from Linksys WCG200 FW at the -fwv6 {address}.
   -usev6=linksys-wrt854g        : obtain IPv6 from Linksys WRT854G FW at the -fwv6 {address}.
   -usev6=maxgate-ugate3x00      : obtain IPv6 from MaxGate UGATE-3x00 FW at the -fwv6 {address}.
   -usev6=netcomm-nb3            : obtain IPv6 from NetComm NB3 at the -fwv6 {address}.
   -usev6=netgear-dg834g         : obtain IPv6 from netgear-dg834g at the -fwv6 {address}.
   -usev6=netgear-rp614          : obtain IPv6 from Netgear RP614 FW at the -fwv6 {address}.
   -usev6=netgear-rt3xx          : obtain IPv6 from Netgear FW at the -fwv6 {address}.
   -usev6=netgear-wgt624         : obtain IPv6 from Netgear WGT624 at the -fwv6 {address}.
   -usev6=netgear-wpn824         : obtain IPv6 from Netgear WPN824 FW at the -fwv6 {address}.
   -usev6=netopia-r910           : obtain IPv6 from Netopia R910 FW at the -fwv6 {address}.
   -usev6=no                     : deprecated, use 'disabled'.
   -usev6=olitec-SX200           : obtain IPv6 from olitec-SX200 at the -fwv6 {address}.
   -usev6=rtp300                 : obtain IPv6 from Linksys RTP300 at the -fwv6 {address}.
   -usev6=siemens-ss4200         : obtain IPv6 from Siemens SpeedStream 4200 at the -fwv6 {address}.
   -usev6=sitecom-dc202          : obtain IPv6 from Sitecom DC-202 FW at the -fwv6 {address}.
   -usev6=smc-barricade          : obtain IPv6 from SMC Barricade FW at the -fwv6 {address}.
   -usev6=smc-barricade-7004vbr  : obtain IPv6 from SMC Barricade FW (7004VBR model config) at the -fwv6 {address}.
   -usev6=smc-barricade-7401bra  : obtain IPv6 from SMC Barricade 7401BRA FW at the -fwv6 {address}.
   -usev6=smc-barricade-alt      : obtain IPv6 from SMC Barricade FW (alternate config) at the -fwv6 {address}.
   -usev6=sohoware-nbg800        : obtain IPv6 from SOHOWare BroadGuard NBG800 at the -fwv6 {address}.
   -usev6=sveasoft               : obtain IPv6 from Sveasoft WRT54G/WRT54GS at the -fwv6 {address}.
   -usev6=thomson-st536v6        : obtain IPv6 from Thomson SpeedTouch 536v6 at the -fwv6 {address}.
   -usev6=thomson-tg782          : obtain IPv6 from Thomson/Technicolor TG782 at the -fwv6 {address}.
   -usev6=vigor-2200usb          : obtain IPv6 from Vigor 2200 USB at the -fwv6 {address}.
   -usev6=watchguard-edge-x      : obtain IPv6 from Watchguard Edge X FW at the -fwv6 {address}.
   -usev6=watchguard-soho        : obtain IPv6 from Watchguard SOHO FW at the -fwv6 {address}.
   -usev6=web                    : deprecated, use 'webv6'.
   -usev6=webv6                  : obtain IPv6 from an IP discovery page on the web.
   -usev6=westell-6100           : obtain IPv6 from Westell C90-610015-06 DSL Router at the -fwv6 {address}.
   -usev6=xsense-aero            : obtain IPv6 from Xsense Aero at the -fwv6 {address}.
 Options that apply to 'use=ip':
 -ip <address>         : deprecated, use 'ipv4' or 'ipv6'.
 -ipv4 <address>       : set the IPv4 address to <address>.
 -ipv6 <address>       : set the IPv6 address to <address>.
 Options that apply to 'use=if':
 -if <interface>       : deprecated, use 'ifv4' or 'ifv6' (default: ppp0).
 -ifv4 <interface>     : obtain IPv4 address from <interface> (default: default).
 -ifv6 <interface>     : obtain IPv6 address from <interface> (default: default).
 Options that apply to 'use=web':
 -web <service>|<url>  : deprecated, use 'webv4' or 'webv6' (default: dyndns).
 -web-skip <pattern>   : deprecated, use 'webv4-skip' or 'webv6-skip'.
 -webv4 <service>|<url>: obtain IPv4 address from a web-based IP discovery service, either a known <service> or a custom <url> (default: googledomains).
 -webv4-skip <pattern> : skip any IP addresses before <pattern> in the output of 'ip address show dev <interface>' (or 'ifconfig <interface>').
 -webv6 <service>|<url>: obtain IPv6 address from a web-based IP discovery service, either a known <service> or a custom <url> (default: googledomains).
 -webv6-skip <pattern> : skip any IP addresses before <pattern> in the output of 'ip address show dev <interface>' (or 'ifconfig <interface>').
 -list-web-services    : print a machine-readable list of web-based IP discovery services for use with 'web=<service>' and exit. Format: one service per line, each line has the form '<service> <url>'.
 Options that apply to 'use=fw' and 'use=<device>':
 -fw <address>|<url>   : deprecated, use 'fwv4' or 'fwv6'.
 -fw-skip <pattern>    : deprecated, use 'fwv4-skip' or 'fwv6-skip'.
 -fwv4 <address>|<url> : obtain IPv4 address from device with IP address <address> or URL <url>.
 -fwv4-skip <pattern>  : skip any IP addresses before <pattern> in the text returned from the device.
 -fwv6 <address>|<url> : obtain IPv6 address from device with IP address <address> or URL <url>.
 -fwv6-skip <pattern>  : skip any IP addresses before <pattern> in the text returned from the device.
 -fw-login <login>     : use <login> when getting the IP from the device.
 -fw-password <secret> : use password <secret> when getting the IP from the device.
 -list-devices         : print a machine-readable list of supported firewall/router devices and exit. Format: one device per line, each line has the form '<device> <description>'.
 Options that apply to 'use=cmd':
 -cmd <command>        : deprecated, use 'cmdv4' or 'cmdv6'.
 -cmd-skip <pattern>   : deprecated, filter in program wrapper script.
 -cmdv4 <command>      : obtain IPv4 address from the output of <command>.
 -cmdv6 <command>      : obtain IPv6 address from the output of <command>.
 -login <user>         : log in to the dynamic DNS service as <user>.
 -password <secret>    : log in to the dynamic DNS service with password <secret>.
 -host <host>          : update DNS information for <host>.
 -options <opt>=<val>[,<opt>=<val>,...]
                       : optional per-service arguments (see below).
 -{no}ssl              : do updates over encrypted SSL connection (default: nossl).
 -ssl_ca_dir <dir>     : look in <dir> for certificates of trusted certificate authorities (default: auto-detect).
 -ssl_ca_file <file>   : look at <file> for certificates of trusted certificate authorities (default: auto-detect).
 -{no}fw-ssl-validate   : Validate SSL certificate when retrieving IP address from firewall (default: fw-ssl-validate).
 -{no}web-ssl-validate   : Validate SSL certificate when retrieving IP address from web (default: web-ssl-validate).
 -{no}retry            : retry failed updates (default: noretry).
 -{no}force            : force an update even if the update may be unnecessary (default: noforce).
 -timeout <max>        : when fetching a URL, wait at most <max> seconds for a response (default: 120).
 -{no}syslog           : log messages to syslog (default: nosyslog).
 -facility <type>      : log messages to syslog to facility <type> (default: daemon).
 -priority <pri>       : log messages to syslog with priority <pri> (default: notice).
 -max-warn <max>       : log at most <max> warning messages for undefined IP address (default: 1).
 -mail <address>       : e-mail messages to <address>.
 -mail-failure <addr>  : e-mail messages for failed updates to <addr>.
 -{no}exec             : do {not} execute; just show what would be done (default: exec).
 -{no}debug            : print {no} debugging information (default: nodebug).
 -{no}verbose          : print {no} verbose information (default: noverbose).
 -{no}quiet            : print {no} messages for unnecessary updates (default: noquiet).
 -help                 : display this message and exit (default: 0).
 -postscript           : script to run after updating ddclient, has new IP as param.
 -{no}query            : print {no} ip addresses and exit.

== CONFIGURING ddclient

The configuration file, ddclient.conf, can be used to define the default behaviour and operation of ddclient. The file consists of sequences of global variable definitions and host definitions.

Global definitions look like:

 name=value [,name=value]*

For example:

 daemon=5m
 use=if, if=eth0
 proxy=proxy.myisp.com
 protocol=dyndns2

specifies that ddclient should operate as a daemon, checking the eth0 interface for an IP address change every 5 minutes and use the 'dyndns2' protocol by default. The daemon interval can be specified as seconds (600s), minutes (5m), hours (1h) or days (1d).

Host definitions look like:

 [name=value [,name=value]*]* a.host.domain [,b.host.domain] [login] [password]

For example:

 protocol=noip, \
 login=your-username, password=your-password  myhost.noip.com
 login=your-username, password=your-password  myhost.noip.com,myhost2.noip.com

specifies two host definitions.

The first definition will use the noip protocol, your-username and your-password to update the ip-address of myhost.noip.com and my2ndhost.noip.com.

The second host definition will use the current default protocol ('dyndns2'), my-login and my-password to update the ip-address of myhost.dyndns.org and my2ndhost.dyndns.org.

The order of this sequence is significant because the values of any global variable definitions are bound to a host definition when the host definition is encountered.

See the sample-ddclient.conf file for further examples.

== NIC specific variables and examples:

o '1984'

The '1984' protocol is used by DNS services offered by 1984.is.

Configuration variables applicable to the '1984' protocol are:

 protocol=1984                ##
 password=api-key             ## your API key
 fully.qualified.host         ## the domain to update

Example ddclient.conf file entries:

 ## single host update
 protocol=1984,                                                   \
 password=my-1984-api-key,                                        \
 myhost


o 'changeip'

The 'changeip' protocol is used by DNS services offered by changeip.com.

Configuration variables applicable to the 'changeip' protocol are:

 protocol=changeip            ##
 server=fqdn.of.service       ## defaults to nic.changeip.com
 login=service-login          ## login name and password registered with the service
 password=service-password    ##
 fully.qualified.host         ## the host registered with the service.

Example ddclient.conf file entries:

 ## single host update
 protocol=changeip,                                               \
 login=my-my-changeip.com-login,                                  \
 password=my-changeip.com-password                                \
 myhost.changeip.org


o 'cloudflare'

The 'cloudflare' protocol is used by DNS service offered by www.cloudflare.com.

Configuration variables applicable to the 'cloudflare' protocol are:

 protocol=cloudflare          ##
 server=fqdn.of.service       ## defaults to api.cloudflare.com/client/v4
 login=service-login          ## login email when using a global API key
 password=service-password    ## Global API key, or an API token. If using an API token, it must have the permissions "Zone - DNS - Edit" and "Zone - Zone - Read". The Zone resources must be "Include - All zones".
 fully.qualified.host         ## the host registered with the service.

Example ddclient.conf file entries:

 ## single host update using a global API key
 protocol=cloudflare,                                         \
 zone=dns.zone,                                               \
 login=my-cloudflare.com-login,                               \
 password=my-cloudflare-global-key                            \
 myhost.com
 ## single host update using an API token
 protocol=cloudflare,                                         \
 zone=dns.zone,                                               \
 login=token,                                                 \
 password=cloudflare-api-token                                \
 myhost.com
 ## multiple host update to the custom DNS service
 protocol=cloudflare,                                         \
 zone=dns.zone,                                               \
 login=my-cloudflare.com-login,                               \
 password=my-cloudflare-global-api-key                        \
 my-toplevel-domain.com,my-other-domain.com


o 'cloudns'

The 'cloudns' protocol is used for ClouDNS (https://www.cloudns.net). Details about dynamic DNS updates can be found at https://www.cloudns.net/dynamic-dns/.

Available configuration variables:

 * dynurl: The DynURL associated with the A or AAAA record you wish to update.

Limitations:

 * ddclient cannot tell if the DynURL you provide belongs to the hostname you
   specify.
 * ClouDNS does not document how to tell whether an update suceeded or failed,
   so there is no way for ddclient to reliably handle failures.
 * The ClouDNS API does not provide a reliable way to set the desired IP
   address. It might save the IP address you want, or it might save the IP
   address that connects to CloudDNS. It is more likely to work if you do not
   use a proxy.

Example ddclient.conf file entry:

 protocol=cloudns,                                                        \
 dynurl=https://ipv4.cloudns.net/api/dynamicURL/?q=Njc1OTE2OjY3Njk0ND..., \
 myhost.example.com


o 'digitalocean'

The 'digitalocean' protocol updates domains hosted by Digital Ocean (https://www.digitalocean.com/).

This protocol supports both IPv4 and IPv6. It will only update an existing record; it will not create a new one. So, before using it, make sure there's already one (and at most one) of each record type (A and/or AAAA) you plan to update present in your Digital Ocean zone.

This protocol implements the API documented here:

 https://docs.digitalocean.com/reference/api/api-reference/.

You can get your API token by following these instructions:

 https://docs.digitalocean.com/reference/api/create-personal-access-token/

Available configuration variables:

 * server (optional): API server. Defaults to 'api.digitalocean.com'.
 * zone (required): DNS zone under which the hostname falls.
 * password (required): API token from DigitalOcean Control Panel. See instructions linked above.

Example ddclient.conf file entries:

 protocol=digitalocean, \
 zone=example.com,      \
 password=api-token     \
 example.com,sub.example.com


o 'dinahosting'

The 'dinahosting' protocol is used by dinahosting (https://dinahosting.com). Details about the API can be found at https://dinahosting.com/api.

Available configuration variables and their defaults:

 * login (required) is your username.
 * password (required) is your password.
 * server=dinahosting.com is the hostname part of the dinahosting API URL.
 * script=/special/api.php is the path part of the dinahosting API URL.

Example ddclient.conf file entry:

 protocol=dinahosting,  \
 login=myusername,      \
 password=mypassword    \
 myhost.mydomain.com


o 'dnsexit2'

The 'dnsexit2' protocol is the updated protocol for the (free) dynamic hostname services of 'DNSExit' (www.dnsexit.com). Their API is accepting JSON payload.

Configuration variables applicable to the 'dnsexit2' protocol are:

 protocol=dnsexit2         ##
 password=YourAPIKey       ## API Key of your account.
 server=api.dnsexit.com    ## defaults to api.dnsexit.com.
 path=/dns/                ## defaults to /dns/.
 ttl=5                     ## defaults to 5 minutes.
 zone=                   ## defaults to empty, which assumes the zone is equal to the fully.qualified.host (is root of your DNSExit domain).
 fully.qualified.host      ## the host registered with the service.

Example ddclient.conf file entries:

 ## single host update
 protocol=dnsexit2
 password=YourAPIKey
 yourown.publicvm.com
 ## two hosts (which must be) on the same zone
 protocol=dnsexit2
 password=YourAPIKey
 zone=yourown.publicvm.com
 host1.yourown.publicvm.com,host2.yourown.publicvm.com


o 'dnsmadeeasy'

The 'dnsmadeeasy' protocol is used by the DNS Made Easy service at https://www.dnsmadeeasy.com. API is documented here: https://dnsmadeeasy.com/technology/dynamic-dns/

Configuration variables applicable to the 'dnsmadeeasy' protocol are:

 protocol=dnsmadeeasy               ##
 login=email-address                ## Email address used to log in to your account.
 password=dynamic-record-password   ## Generated password for your dynamic DNS record.
 record-id-1,record-id-2,...        ## Numeric dynamic DNS record IDs, comma-separated if updating multiple.

Note: Dynamic record ID is generated when you create a new Dynamic DNS record in the DNS Made Easy control panel.

Example ddclient.conf file entries:

 ## single host update
 protocol=dnsmadeeasy,              \
 username=dme@example.com,         \
 password=myg3nerat3dp4ssword,      \
 1007,1008


o 'domeneshop'

API is documented here: https://api.domeneshop.no/docs/

To generate credentials, visit https://www.domeneshop.no/admin?view=api after logging in to the control panel at https://www.domeneshop.no/admin?view=api

Configuration variables applicable to the 'domeneshop' api are:

 protocol=domeneshop          ##
 login=token                  ## api-token
 password=secret              ## api-secret
   domain.example.com         ## the host registered with the service.             ## the host registered with the service.

Example ddclient.conf file entries:

 ## single host update
 protocol=domeneshop
 login=username
 password=your-password
 my.example.com


o 'dondominio' The 'dondominio' protocol is used by DNS service offered by www.dondominio.com/ . API information and user instructions available at: https://dev.dondominio.com/dondns/docs/api/ Configuration variables applicable to the 'dondominio' protocol are:

 protocol=dondominio          ##
 login=service-login          ## the username registered with the service
 password=dondominio-apikey   ## API key provided by dondominio -see link above-
 fully.qualified.host         ## the host registered with the service.

Example ddclient.conf file entries:

 ## single host update
 protocol=dondominio,                                   \
 login=my-generated-user-name,                          \
 password=dondominio-apikey                             \
 myhost.tld


o 'dslreports1'

The 'dslreports1' protocol is used by a free DSL monitoring service offered by www.dslreports.com.

Configuration variables applicable to the 'dslreports1' protocol are:

 protocol=dslreports1         ##
 server=fqdn.of.service       ## defaults to www.dslreports.com
 login=service-login          ## login name and password  registered with the service
 password=service-password    ##
 unique-number                ## the host registered with the service.

Example ddclient.conf file entries:

 ## single host update
 protocol=dslreports1,                                     \
 login=my-dslreports-login,                                \
 password=my-dslreports-password                           \
 123456

Note: DSL Reports uses a unique number as the host name. This number can be found on the Monitor Control web page.


o 'duckdns'

The 'duckdns' protocol is used by the free dynamic DNS service offered by www.duckdns.org. Check https://www.duckdns.org/install.jsp?tab=linux-cron for API

Configuration variables applicable to the 'duckdns' protocol are:

 protocol=duckdns               ##
 server=www.fqdn.of.service   ## defaults to www.duckdns.org
 password=service-password    ## password (token) registered with the service
 non-fully.qualified.host         ## the host registered with the service.

Example ddclient.conf file entries:

 ## single host update
 protocol=duckdns,        \
 password=your_password,  \
 myhost


o 'dyndns1'

The 'dyndns1' protocol is a deprecated protocol used by the free dynamic DNS service offered by www.dyndns.org. The 'dyndns2' should be used to update the www.dyndns.org service. However, other services are also using this protocol so support is still provided by ddclient.

Configuration variables applicable to the 'dyndns1' protocol are:

 protocol=dyndns1             ##
 server=fqdn.of.service       ## defaults to members.dyndns.org
 backupmx=no|yes              ## indicates that this host is the primary MX for the domain.
 mx=any.host.domain           ## a host MX'ing for this host definition.
 wildcard=no|yes              ## add a DNS wildcard CNAME record that points to {host}
 login=service-login          ## login name and password  registered with the service
 password=service-password    ##
 fully.qualified.host         ## the host registered with the service.

Example ddclient.conf file entries:

 ## single host update
 protocol=dyndns1,                                         \
 login=my-dyndns.org-login,                                \
 password=my-dyndns.org-password                           \
 myhost.dyndns.org
 ## multiple host update with wildcard'ing mx, and backupmx
 protocol=dyndns1,                                         \
 login=my-dyndns.org-login,                                \
 password=my-dyndns.org-password,                          \
 mx=a.host.willing.to.mx.for.me,backupmx=yes,wildcard=yes  \
 myhost.dyndns.org,my2ndhost.dyndns.org


o 'dyndns2'

The 'dyndns2' protocol is a newer low-bandwidth protocol used by a free dynamic DNS service offered by www.dyndns.org. It supports features of the older 'dyndns1' in addition to others. [These will be supported in a future version of ddclient.]

Configuration variables applicable to the 'dyndns2' protocol are:

 protocol=dyndns2             ##
 server=fqdn.of.service       ## defaults to members.dyndns.org
 script=/path/to/script       ## defaults to /nic/update
 backupmx=no|yes              ## indicates that this host is the primary MX for the domain.
 static=no|yes                ## indicates that this host has a static IP address.
 custom=no|yes                ## indicates that this host is a 'custom' top-level domain name.
 mx=any.host.domain           ## a host MX'ing for this host definition.
 wildcard=no|yes              ## add a DNS wildcard CNAME record that points to {host}
 login=service-login          ## login name and password  registered with the service
 password=service-password    ##
 fully.qualified.host         ## the host registered with the service.

Example ddclient.conf file entries:

 ## single host update
 protocol=dyndns2,                                         \
 login=my-dyndns.org-login,                                \
 password=my-dyndns.org-password                           \
 myhost.dyndns.org
 ## multiple host update with wildcard'ing mx, and backupmx
 protocol=dyndns2,                                         \
 login=my-dyndns.org-login,                                \
 password=my-dyndns.org-password,                          \
 mx=a.host.willing.to.mx.for.me,backupmx=yes,wildcard=yes  \
 myhost.dyndns.org,my2ndhost.dyndns.org
 ## multiple host update to the custom DNS service
 protocol=dyndns2,                                         \
 login=my-dyndns.org-login,                                \
 password=my-dyndns.org-password                           \
 my-toplevel-domain.com,my-other-domain.com


o 'easydns'

The 'easydns' protocol is used by the for fee DNS service offered by www.easydns.com.

Configuration variables applicable to the 'easydns' protocol are:

 protocol=easydns             ##
 server=fqdn.of.service       ## defaults to members.easydns.com
 backupmx=no|yes              ## indicates that EasyDNS should be the secondary MX
                              ## for this domain or host.
 mx=any.host.domain           ## a host MX'ing for this host or domain.
 wildcard=no|yes              ## add a DNS wildcard CNAME record that points to {host}
 login=service-login          ## login name and password  registered with the service
 password=service-password    ##
 fully.qualified.host         ## the host registered with the service.

Example ddclient.conf file entries:

 ## single host update
 protocol=easydns,                                         \
 login=my-easydns.com-login,                               \
 password=my-easydns.com-password                          \
 myhost.easydns.com
 ## multiple host update with wildcard'ing mx, and backupmx
 protocol=easydns,                                         \
 login=my-easydns.com-login,                               \
 password=my-easydns.com-password,                         \
 mx=a.host.willing.to.mx.for.me,                           \
 backupmx=yes,                                             \
 wildcard=yes                                              \
 my-toplevel-domain.com,my-other-domain.com
 ## multiple host update to the custom DNS service
 protocol=easydns,                                         \
 login=my-easydns.com-login,                               \
 password=my-easydns.com-password                          \
 my-toplevel-domain.com,my-other-domain.com


o 'enom' The 'enom' protocol is used by DNS services offered by www.enom.com and their resellers. Configuration variables applicable to the 'enom' protocol are:

 protocol=enom                ## 
 server=fqdn.of.service       ## defaults to dynamic.name-services.com
 login=domain.name            ## base domain name
 password=domain-password     ## the domain password registered with the service
 A_record                     ## the A record(s) registered with the service

Example ddclient.conf file entries:

 ## single host update
 protocol=enom,                                   \
 login=mydomain.com,                              \
 password=mydomain.com-password                   \
 www
 ## multiple host update
 protocol=enom,                                   \
 login=mydomain.com,                              \
 password=mydomain.com-password                   \
 www,mail,*


o 'freedns'

The 'freedns' protocol is used by DNS services offered by freedns.afraid.org.

Configuration variables applicable to the 'freedns' protocol are:

 protocol=freedns             ##
 server=fqdn.of.service       ## defaults to freedns.afraid.org
 login=service-login          ## login name and password registered with the service
 password=service-password    ##
 fully.qualified.host         ## the host registered with the service.

Example ddclient.conf file entries:

 ## single host update
 protocol=freedns,                                             \
 login=my-freedns.afraid.org-login,                            \
 password=my-freedns.afraid.org-password                       \
 myhost.afraid.com


o 'freemyip'

The 'freemyip' protocol is used by the free dynamic DNS service available at freemyip.com. API is documented here: https://freemyip.com/help.py

Configuration variables applicable to the 'freemyip' protocol are:

 protocol=freemyip               ##
 password=service-token             ## token for your domain
 non-fully.qualified.host        ## the host registered with the service.

Example ddclient.conf file entries:

 ## single host update
 protocol=freemyip,                                     \
 password=35a6b8d65c6e67c7f78cca65cd                    \
 myhost


o 'gandi'

The 'gandi' protocol is used by the LiveDNS service offered by gandi.net. Description of Gandi's LiveDNS API can be found at:

   https://api.gandi.net/docs/livedns/

Available configuration variables:

 * password: The Gandi API key. If you don’t have one yet, you can generate
   your production API key from the API Key Page (in the Security section).
   Required.
 * zone: The DNS zone to be updated. Required.
 * ttl: The time-to-live value associated with the updated DNS record.
   Optional; uses Gandi's default (3h) if unset.

Example ddclient.conf file entries:

 ## Single host update.
 protocol=gandi,                           \
 zone=example.com,                         \
 password=my-gandi-api-key,                \
 host.example.com
 ## Multiple host update.
 protocol=gandi,                           \
 zone=example.com,                         \
 password=my-gandi-api-key,                \
 ttl=1h                                    \
 hosta.example.com,hostb.sub.example.com


o 'godaddy'

The 'godaddy' protocol is used by DNS service offered by https://www.godaddy.com/domains.

Configuration variables applicable to the 'godaddy' protocol are:

 protocol=godaddy              ##
 login=my-generated-token      ## the token/key name provided by the API interface
 password=my-generated-secret  ## the secret provided by the API interface
 zone=domain.tld               ## the domain used for DNS update.
 ttl=600                       ## time to live of the record;
 hostname.domain.tld           ## hostname/subdomain

Example ddclient.conf file entries:

 ## single host update
 protocol=godaddy                                             \
 login=my-generated-token                                     \
 password=my-generated-secret                                 \
 zone=example.com                                             \
 hostname.example.com
 ## multiple host update to the DNS service
 protocol=godaddy                                             \
 login=my-generated-token                                     \
 password=my-generated-secret                                 \
 zone=example.com                                             \
 host1.example.com,host2.example.com


o 'googledomains'

The 'googledomains' protocol is used by DNS service offered by www.google.com/domains.

Configuration variables applicable to the 'googledomains' protocol are:

 protocol=googledomains       ##
 login=service-login          ## the user name provided by the admin interface
 password=service-password    ## the password provided by the admin interface
 fully.qualified.host         ## the host registered with the service.

Example ddclient.conf file entries:

 ## single host update
 protocol=googledomains,                                      \
 login=my-generated-user-name,                                \
 password=my-genereated-password                              \
 myhost.com
 ## multiple host update to the custom DNS service
 protocol=googledomains,                                      \
 login=my-generated-user-name,                                \
 password=my-genereated-password                              \
 my-toplevel-domain.com,my-other-domain.com


o 'hetzner'

The 'hetzner' protocol is used by DNS service offered by www.hetzner.com.

Configuration variables applicable to the 'hetzner' protocol are:

 protocol=hetzner             ##
 server=fqdn.of.service       ## can be omitted, defaults to dns.hetzner.com/api/v1
 password=service-password    ## API token
 fully.qualified.host         ## the host registered with the service.

Example ddclient.conf file entries:

 protocol=hetzner,                                            \
 zone=dns.zone,                                               \
 password=my-hetzner-api-token                                \
 my-toplevel-domain.com,my-other-domain.com


o 'infomaniak'

The 'infomaniak' protocol is used by DNS services offered by www.infomaniak.com.

Configuration variables applicable to the 'infomaniak' protocol are:

 protocol=infomaniak
 login=ddns_username          ## the DDNS username set up in Infomaniak
 password=ddns_password       ## the DDNS username set up in Infomaniak
 example.com                  ## domain name to update

Example ddclient.conf file entries:

 protocol=infomaniak,       \
 login=my-username,         \
 password=my-password       \
 my.address.com

For more information about how to create a dynamic DNS, see https://faq.infomaniak.com/2357.


o 'keysystems'

The 'keysystems' protocol is used by the non-free dynamic DNS service offered by www.domaindiscount24.com and www.rrpproxy.net. Check https://www.domaindiscount24.com/faq/en/dynamic-dns for API

Configuration variables applicable to the 'keysystems' protocol are: protocol=keysystems server=dynamicdns.key-systems.net password=service-password ## password (token) registered with the service subdomain.example.com ## the host registered with the service.

Example ddclient.conf file entries:

    1. single host update

protocol=keysystems, \\ password=service-password \\ example.com


o 'mythicdyn'

The 'mythicdyn' protocol is used by the Dynamic DNS service offered by www.mythic-beasts.com.

Configuration variables applicable to the 'mythicdyn' protocol are:

 protocol=mythicdyn           ##
 ipv6=no|yes                  ## whether to set an A record (default, ipv6=no)
                              ## or AAAA record (ipv6=yes).
 login=service-login          ## the user name provided by the admin interface
 password=service-password    ## the password provided by the admin interface
 fully.qualified.host         ## the host registered with the service

Note: this service automatically sets the IP address to that from which the request comes, so the IP address detected by ddclient is only used to keep track of when it needs updating.

Example ddclient.conf file entries:

 ## Single host update.
 protocol=mythicdyn,                       \
 login=service-login                       \
 password=service-password,                \
 host.example.com
 ## Multiple host update.
 protocol=mythicdyn,                       \
 login=service-login                       \
 password=service-password,                \
 hosta.example.com,hostb.sub.example.com


o 'namecheap'

The 'namecheap' protocol is used by DNS service offered by www.namecheap.com.

Configuration variables applicable to the 'namecheap' protocol are:

 protocol=namecheap           ##
 server=fqdn.of.service       ## defaults to dynamicdns.park-your-domain.com
 login=service-login          ## the domain of the dynamic DNS record you want to update
 password=service-password    ## Generated password for your dynamic DNS record
 hostname                     ## the subdomain to update, use @ for base domain name, * for catch all

Example ddclient.conf file entries:

 ## single host update
 protocol=namecheap                                          \
 login=example.com                                           \
 password=example.com-generated-password                     \
 @



o 'nfsn'

The 'nfsn' protocol is used for the DNS service offered by www.nearlyfreespeech.net. Use this URL to get your API-Key-password:

 https://members.nearlyfreespeech.net/support/assist?tag=apikey

Configuration variables applicable to the 'nfsn' protocol are:

 protocol=nfsn
 server=api-server    ## defaults to api.nearlyfreespeech.net
 login=member-login   ## NearlyFreeSpeech.net login name
 password=api-key     ## NearlyFreeSpeech.net API key
 zone=zone            ## The DNS zone under which the hostname falls; e.g. example.com
 hostname             ## the hostname to update in the specified zone; e.g. example.com or www.example.com

Example ddclient.conf file entries:

 ## update two hosts (example.com and www.example.com) in example.com zone
 protocol=nfsn,                                         \
 login=my-nfsn-member-login,                            \
 password=my-nfsn-api-key,                              \
 zone=example.com                                       \
 example.com,www.example.com
 ## repeat the above for other zones, e.g. example.net:
 [...]
 zone=example.net                                       \
 subdomain1.example.net,subdomain2.example.net



o 'njalla'

The 'njalla' protocol is used by DNS service offered by njal.la.

Configuration variables applicable to the 'njalla' protocol are:

 protocol=njalla              ##
 password=service-password    ## Generated password for your dynamic DNS record
 quietreply=no|yes            ## If yes return empty response on success with status 200 but print errors
 domain                       ## subdomain to update, use @ for base domain name, * for catch all

Example ddclient.conf file entries:

 ## single host update
 protocol=njalla                                             \
 password=njal.la-key
 quietreply=no
 domain.com


o 'noip'

The 'No-IP Compatible' protocol is used to make dynamic dns updates over an http request. Details of the protocol are outlined at: https://www.noip.com/integrate/

Configuration variables applicable to the 'noip' protocol are:

 protocol=noip                ##
 server=fqdn.of.service       ## defaults to dynupdate.no-ip.com
 login=service-login          ## login name and password  registered with the service
 password=service-password    ##
 fully.qualified.host         ## the host registered with the service.

Example ddclient.conf file entries:

 ## single host update
 protocol=noip,                                   \
 login=userlogin@domain.com,                     \
 password=noip-password                           \
 myhost.no-ip.biz



o 'nsupdate'

The 'nsupdate' protocol is used to submit Dynamic DNS Update requests as defined in RFC2136 to a name server using the 'nsupdate' command line utility part of ISC BIND. Dynamic DNS updates allow resource records to be added or removed from a zone configured for dynamic updates through DNS requests protected using TSIG. BIND ships with 'ddns-confgen', a utility to generate sample configurations and instructions for both the server and the client. See nsupdate(1) and ddns-confgen(8) for details.

Configuration variables applicable to the 'nsupdate' protocol are:

 protocol=nsupdate
 server=ns1.example.com       ## name or IP address of the DNS server to send
                              ## the update requests to; usually master for
                              ## zone, but slaves should forward the request
 password=tsig.key            ## path and name of the symmetric HMAC key file
                              ## to use for TSIG signing of the request
                              ## (as generated by 'ddns-confgen -q' and
                              ## configured on server in 'grant' statement)
 zone=dyn.example.com         ## forward zone that is to be updated
 ttl=600                      ## time to live of the record;
                              ## defaults to 600 seconds
 tcp=off|on                   ## nsupdate uses UDP by default, and switches to
                              ## TCP if the update is too large to fit in a
                              ## UDP datagram; this setting forces TCP;
                              ## defaults to off
 login=/usr/bin/nsupdate      ## path and name of nsupdate binary;
                              ## defaults to '/usr/bin/nsupdate'
 <hostname>                   ## fully qualified hostname to update

Example ddclient.conf file entries:

 ## single host update
 protocol=nsupdate \
 server=ns1.example.com \
 password=/etc/ddclient/dyn.example.com.key \
 zone=dyn.example.com \
 ttl=3600 \
 myhost.dyn.example.com



o 'ovh'

The 'ovh' protocol is used by DNS services offered by www.ovh.com.

API information and user instructions available at: https://docs.ovh.com/gb/en/domains/hosting_dynhost/

Configuration variables applicable to the 'ovh' protocol are:

 protocol=ovh                 ##
 login=dnsdomain-userid       ## The username/id registered with the service
 password=userid-password     ## The password related to the username/id
 fully.qualified.host         ## the hostiname registered with the service.

Example ddclient.conf file entries:

 ## single host update
 protocol=ovh,                   \
 login=example.com-dynhostuser,  \
 password=your_password,         \
 test.example.com


o 'porkbun'

The 'porkbun' protocol is used for porkbun (https://porkbun.com/). The API is documented here: https://porkbun.com/api/json/v3/documentation

Before setting up, it is necessary to create your API Key by referring to the following page.

https://kb.porkbun.com/article/190-getting-started-with-the-porkbun-api

Available configuration variables:

 * apikey (required): API Key of Porkbun API
 * secretapikey (required): Secret API Key of Porkbun API
 * on-root-domain=yes or no (default: no): Indicates whether the specified domain name (FQDN) is
   an unnamed record (Zone APEX) in a zone.
   It is useful to specify it as a local variable as shown in the example.
 * usev4, usev6 : These configuration variables can be specified as local variables to override
   the global settings. It is useful to finely control IPv4 or IPv6 as shown in the example.
 * use (deprecated) : This parameter is deprecated but can be overridden like the above parameters.

Limitations:

 * Multiple same name records (for round robin) are not supported.
   The same IP address is set for all, creating meaningless extra records.

Example ddclient.conf file entry:

 protocol=porkbun
 apikey=APIKey
 secretapikey=SecretAPIKey
 host.example.com,host2.sub.example.com
 on-root-domain=yes example.com,sub.example.com

Additional example to finely control IPv4 or IPv6 :

 # Example 01 : Global enable both IPv4 and IPv6, and update both records.
 usev4=webv4
 usev6=ifv6, ifv6=enp1s0
 protocol=porkbun
 apikey=APIKey
 secretapikey=SecretAPIKey
 host.example.com,host2.sub.example.com
 # Example 02 : Global enable only IPv4, and update only IPv6 record.
 usev4=webv4
 protocol=porkbun
 apikey=APIKey
 secretapikey=SecretAPIKey
 usev6=ifv6, ifv6=enp1s0, usev4=disabled ipv6.example.com
 


o 'regfishde' The 'regfishde' protocol is used by the non-free dynamic DNS service offered by www.regfish.de. Check https://www.regfish.de for configuration variables applicable to the 'regfishde' protocol: protocol=regfishde server=dyndns.regfish.de password=service-password ## password (token) registered with the service myhost.mydomain.com ## the host registered with the service. Example ddclient.conf file entries:

    1. single host update

protocol=regfishde password=service-password myhost.mydomain.com


o 'sitelutions'

The 'sitelutions' protocol is used by DNS services offered by www.sitelutions.com.

Configuration variables applicable to the 'sitelutions' protocol are:

 protocol=sitelutions         ##
 server=fqdn.of.service       ## defaults to sitelutions.com
 login=service-login          ## login name and password  registered with the service
 password=service-password    ##
 A_record_id                  ## Id of the A record for the host registered with the service.

Example ddclient.conf file entries:

 ## single host update
 protocol=sitelutions,                                         \
 login=my-sitelutions.com-login,                               \
 password=my-sitelutions.com-password                          \
 my-sitelutions.com-id_of_A_record


o 'woima'

The 'woima' protocol is used by the free dynamic DNS service offered by woima.fi. It offers also nameservers for own domains for free. Dynamic DNS service for own domains is not free.

Configuration variables applicable to the 'woima' protocol are:

 protocol=woima               ##
 server=fqdn.of.service       ## defaults to dyn.woima.fi
 script=/path/to/script       ## defaults to /nic/update
 backupmx=no|yes              ## indicates that this host is the primary MX for the domain.
 static=no|yes                ## indicates that this host has a static IP address.
 custom=no|yes                ## indicates that this host is a 'custom' top-level domain name.
 mx=any.host.domain           ## a host MX'ing for this host definition.
 wildcard=no|yes              ## add a DNS wildcard CNAME record that points to {host}
 login=service-login          ## login name and password  registered with the service
 password=service-password    ##
 fully.qualified.host         ## the host registered with the service.

Example ddclient.conf file entries:

 ## single host update
 protocol=woima,                                           \
 login=my-dyndns.org-login,                                \
 password=my-dyndns.org-password                           \
 myhost.dyndns.org
 ## multiple host update with wildcard'ing mx, and backupmx
 protocol=woima,                                           \
 login=my-dyndns.org-login,                                \
 password=my-dyndns.org-password,                          \
 mx=a.host.willing.to.mx.for.me,backupmx=yes,wildcard=yes  \
 myhost.dyndns.org,my2ndhost.dyndns.org
 ## multiple host update to the custom DNS service
 protocol=woima,                                           \
 login=my-dyndns.org-login,                                \
 password=my-dyndns.org-password                           \
 my-toplevel-domain.com,my-other-domain.com


o Yandex

The 'yandex' protocol is used to by DNS service offered by Yandex.

Configuration variables applicable to the 'yandex' protocol are:

 protocol=yandex             ##
 server=fqdn.of.service       ## defaults to pddimp.yandex.ru
 login=dns.zone               ## Your zone name
 password=pdd-token           ## PDD token for authentication
 fully.qualified.host         ## the host registered with the service.

Example ddclient.conf file entries:

 ## single host update
 protocol=yandex,                                              \
 login=myhost.com,                                             \
 password=123456789ABCDEF0000000000000000000000000000000000000 \
 record.myhost.com
 ## multiple host update
 protocol=yandex,                                              \
 login=myhost.com,                                             \
 password=123456789ABCDEF0000000000000000000000000000000000000 \
 record.myhost.com,other.myhost.com


o 'zoneedit1'

The 'zoneedit1' protocol is used by a DNS service offered by www.zoneedit.com.

Configuration variables applicable to the 'zoneedit1' protocol are:

 protocol=zoneedit1           ##
 server=fqdn.of.service       ## defaults to www.zoneedit.com
 zone=zone-where-domains-are  ## only needed if 1 or more subdomains are deeper
                              ## than 1 level in relation to  the zone where it
                              ## is defined. For example, b.foo.com in a zone
                              ## foo.com doesn't need this, but a.b.foo.com in
                              ## the same zone needs zone=foo.com
 login=service-login          ## login name and password  registered with the service
 password=service-password    ##
 your.domain.name             ## the host registered with the service.

Example ddclient.conf file entries:

 ## single host update
 protocol=zoneedit1,                                     \
 server=dynamic.zoneedit.com,                            \
 zone=zone-where-domains-are,                            \
 login=my-zoneedit-login,                                \
 password=my-zoneedit-password                           \
 my.domain.name


ddclient version 3.11.2,

 originally written by Paul Burry, paul+ddclient@burry.ca
 project now maintained on https://github.com/ddclient/ddclient