Earlier versions of inadyn supported more command line options, from v2.0 inadyn has been greatly
simplified. See inadyn.conf(5) for details of the /etc/inadyn.conf configuration file format.
-1,--once
Run only once and quit, updates only if too old or unknown. Use --force to for an update before
exiting.
--force
Force one update. Only works with -1,--once flag, ignored for all other use-cases.
--cache-dirPATH
Set directory for persistent cache files, defaults to /var/cache/inadyn
The cache files are used to keep track of which addresses have been successfully sent to their
respective DDNS provider and when. The latter 'when' is important to prevent inadyn from banning
you for excessive updates.
When restarting inadyn or rebooting your server, or embedded device, inadyn reads the cache files
to seed its internal data structures with the last sent IP address and when the update was
performed. It is therefore very important to both have a cache file and for it to have the
correct time stamp. The absence of a cache file will currently cause a forced update.
On an embedded device with no RTC, or no battery backed RTC, it is strongly recommended to pair
this setting with the --startup-delaySEC command line option.
-c,--cmd/path/to/cmd [optional args]
Full path to command, or script, to run to check for IP address change. This is the same as the
configuration file option checkip-command but will apply to all providers. This command line
option is only provided for convenience, it is recommended to instead use the configuration file.
For more details, see the inadyn.conf(5) man page. You will need to quote the complete command
if any arguments, or pipe, is given.
--continue-on-error
Ignore errors from DDNS provider and try again later. This command line option tells inadyn to
not exit on errors from a DDNS provider and instead try again later. Please do not use this, it
usually indicates that we are sending a malformed request, e.g. wrong username, password or DNS
alias for the given account. Continuing could possibly lock you out of your account!
-e,--exec=/path/to/cmd [optional args]
Full path to command, or script, to run. The following environment variables are set: INADYN_IP,
INADYN_HOSTNAME. The first environment variable contains the new IP address, the second the host
name alias. The cmd is called for each listed host name. If inadyn is started with the -iIFNAME command line option, the INADYN_IFACE environment variable is also set. You will need to
quote the complete command if any arguments, or pipe, is given.
--exec-modeMODE
Use MODE to set the exec script run mode: compat, event: - compat: run exec handler on successful
DDNS update only, default - event: run exec handler on any update status The following
environment variables are set: INADYN_EVENT, INADYN_ERROR, INADYN_ERROR_MESSAGE. INADYN_EVENT
contains the event, one of: nochg, update, error. The event nochg indicates that no update had
to be sent, the event update indicates that an update was sent successully, the event error
indicates that the update was sent and an error occurred. INADYN_ERROR contains the error code,
INADYN_ERROR_MESSAGE contains the error message for the error code.
-f,--configFILE
Use FILE for configuration. By default /etc/inadyn.conf, is used. See inadyn.conf(5) for
examples.
-h,--help
Show summary of command line options and exit
-i,--ifaceIFNAME
Check IP of IFNAME instead of querying an external server. With this command line option the
external IP check is disabled and inadyn will report the IP address of IFNAME to all DDNS
providers listed in the configuration file. This can be useful to register LAN IP addresses, or,
when connected directly to a public IP address, to speed up the IP check if the DDNS provider's
check-ip servers are slow to respond.
This option can also be given as a configuration option in inadyn.conf(5), both serve a purpose,
use whichever one works for you.
-I,--identNAME
Specify program identity (name) to be used for PID file and syslog messages. Useful with
multiple instances of inadyn, or to simply replace the inadyn name with something more generic,
e.g. "DDNS", without renaming the binary. Note, this option only changes the base name of the
PID file, not the location, which is system specific. Usually /var/run/inadyn.pid or
/run/inadyn.pid.
-l,--loglevelLEVEL
Set log level: none, err, info, notice, debug. The default is notice, but you might want to set
this to -lwarning.
-l,--list-providers
List available DDNS providers.
-n,--foreground
Run in foreground, default is to daemonize and continue in the background. This option is
usually required when running under process supervisors like systemd and Finit, but is also
useful when running from the terminal, when debugging a config or at initial set up. Remember to
also give the -s option if you still want to redirect log messages to the syslog.
-p,--drop-privsUSER[:GROUP]
Drop root privileges after initial setup to the given user and group.
--no-pidfile
When running as a daemon, even when running in the foreground with -n, inadyn creates a PID file
so users can easily find the PID of the process to send signals to. See “SIGNALS” for more
information on this. This option tells inadyn to not create a PID file. Some users prefer this
when running under systemd.
-P,--pidfileFILE
Set PID file name and location, defaults to /run/inadyn.pid, derived from --identNAME, which is
strongly recommended to change over this option. However, some users want to keep application
runtime files in separate directories, usually in combination with --drop-privs, for such cases
this is the option to use.
-s,--syslog
Use syslog(3) for log messages, warnings and error conditions. This is the default when running
in the background. When running in the foreground, see -n, log messages are printed to stdout.
-S,--show-providerNAME
Show information about DDNS provider NAME, substring search supported.
-t,--startup-delaySEC
Initial startup delay. Default is 0 seconds. Any signal can be used to abort the startup delay
early, but SIGUSR2 is the recommended to use. See “SIGNALS” below for full details of how inadyn
responds to signals.
Intended to allow time for embedded devices without a battery backed real time clock to set their
clock via NTP at bootup. This is so that the time since the last update can be calculated
correctly from the inadyn cache file and the forced-updateSEC setting honored across reboots,
avoiding unnecessary IP address updates.
-v,--version
Show program version and exit.