|
#
|
|
#
|
|
# Here you find a description on every parameter supported
|
|
# and used by ddns-scripts and corresponding LuCI application
|
|
#
|
|
# Inside your ddns configuration file (/etc/config/ddns)
|
|
# you might not find some of below described options.
|
|
# This is because you don't need to define options
|
|
# if using there defaults. The LuCI application will delete
|
|
# options that configured to there default values.
|
|
#
|
|
# If you have a working ddns configuration from old ddns-scripts (Version 1.x)
|
|
# everything will function the same with new scripts
|
|
# without any changes to the configuration.
|
|
#
|
|
# If you like to use this file for your configuration then
|
|
# use a copy, because the used software to modify the
|
|
# configuration files will throw away all empty lines
|
|
# and those starting with # (comments).
|
|
#
|
|
|
|
#####################################################################
|
|
# Global application settings
|
|
#
|
|
config ddns "global"
|
|
|
|
###########
|
|
# set date format to use for display date in logfiles
|
|
# and LuCI web application.
|
|
# For codes see man pages of date command.
|
|
# default: "%F %R" (ISO 8601 format)
|
|
# option date_format "%F %R"
|
|
|
|
###########
|
|
# set run directory to use for .pid and .update files
|
|
# there will be a separate file for every running service section
|
|
# default: "/var/run/ddns"
|
|
# option run_dir "/var/run/ddns"
|
|
|
|
###########
|
|
# set log directory to use for .log files
|
|
# there will be a separate file for every running service section
|
|
# default: "/var/log/ddns"
|
|
# option log_dir "/var/log/ddns"
|
|
|
|
###########
|
|
# set number of lines stored in .log file before auto truncated
|
|
# default: "250" lines
|
|
# option log_lines "250"
|
|
|
|
###########
|
|
# Whether to allow to send Private/Special IP's to the DDNS provider
|
|
# IPv4: 0.x, 10.x, 127.x, 172.16.x-172.31.x, 192.168.x
|
|
# IPv6: ::, Fxxx:
|
|
# default: "0" disabled
|
|
# option allow_local_ip "0"
|
|
|
|
#####################################################################
|
|
# DDNS service settings
|
|
#
|
|
# for each service you want to serve you need a separate configuration
|
|
# if you need IPv4 and IPv6 you need to setup 2 separate configurations
|
|
# with different names. (i.e. "myddns_ipv4" and "myddns_ipv6")
|
|
# do not use white-spaces or dashes "-" or "@" ":" "!" or
|
|
# other special characters inside name.
|
|
config service "myddns"
|
|
|
|
########### Basic settings ########################
|
|
|
|
###########
|
|
# enable/disable this service section
|
|
# default: "0" disabled
|
|
option enabled "0"
|
|
|
|
###########
|
|
# detecting/sending IPv4 or IPv6 address to the DDNS provider
|
|
# set to "1" if you want to use IPv6
|
|
# default: "0" use IPv4
|
|
option use_ipv6 "0"
|
|
|
|
###########
|
|
# defines the network as defined in /etc/config/network
|
|
# to be monitored for up/down events to start via hotplug
|
|
default: "wan" for IPv4
|
|
default: "wan6" for IPv6
|
|
option interface "wan"
|
|
|
|
###########
|
|
# Next you need to specify the name of the service you are
|
|
# connecting to "eg. dyndns.org". The format of the update
|
|
# urls for several different dynamic dns services is specified
|
|
# in the "/usr/lib/ddns/services" file for IPv4 and in
|
|
# "/usr/lib/ddns/service_ipv6" file. This list is hardly complete
|
|
# as there are many, many different dynamic dns services.
|
|
# If your service is on the list you can merely specify it with the
|
|
# "service_name" option. Otherwise you will need to determine
|
|
# the format of the url to update with. You can either add an
|
|
# entry to the "/usr/lib/ddns/services" or "services_ipv6" file
|
|
# or specify this with the "update_url" option.
|
|
# If your ddns provider doesn't work with ddns-scripts because
|
|
# there are additional parameters or other special thinks to be done,
|
|
# then you could write your own script to send updates to your ddns provider.
|
|
# Have a look into /usr/lib/ddns/update_sample.sh
|
|
# The script is specified in "update_script"
|
|
# Either set "service_name" or one of "update_url" and "update_script"
|
|
# default: none
|
|
option service_name "dyndns.org"
|
|
|
|
# sample:
|
|
# "http://[USERNAME]:[PASSWORD]@members.dyndns.org/nic/update?hostname=[DOMAIN]&myip=[IP]"
|
|
# option update_url ""
|
|
|
|
# sample:
|
|
# "/usr/lib/ddns/update_sample.sh"
|
|
# option update_script ""
|
|
|
|
###########
|
|
# You must specify your domain/host name, your username and your password
|
|
# as you get from you DDNS provider. Keep an eye on providers help pages.
|
|
#
|
|
# Your DNS name / replace [DOMAIN] in update_url
|
|
# default: none
|
|
option domain ""
|
|
|
|
# Username of your DDNS service account / replace [USERNAME] in update_url
|
|
# default: none
|
|
option username ""
|
|
|
|
# Password of your DDNS service account / replace [PASSWORD] in update_url
|
|
# default: none
|
|
option password ""
|
|
|
|
###########
|
|
# use HTTPS for secure communication with you DDNS provider
|
|
# personally found some providers having problems when not sending
|
|
# updates via HTTPS. You must not specify "https://" in update_url.
|
|
# It's modified by the scripts themselves
|
|
# Needs GNU Wget (with SSL support) or cURL to be installed.
|
|
# default: "0" do not use HTTPS
|
|
option use_https "0"
|
|
|
|
# if using HTTPS (see above) the transfer program tries to verify
|
|
# the providers server certificate. For verification there needs to be
|
|
# the counterpart on this machine. Specify the path or path/file where
|
|
# the transfer program can find them. (might need package CA-certificates)
|
|
# if you don't want to verify servers certificate (insecure) you should
|
|
# this parameter to "IGNORE" (in capital letters)
|
|
# default: (none) path where CA-certificate package is installed
|
|
option cacert "/etc/ssl/certs"
|
|
|
|
###########
|
|
# for logging and control if everything work fine you can get information inside
|
|
# system log . Critical Errors are always send to system log.
|
|
# You can define which information you like to log
|
|
# 1 == info, notice, warning, errors
|
|
# 2 == notice, warning, errors
|
|
# 3 == warning, errors
|
|
# 4 == errors
|
|
# default: "0" off
|
|
option use_syslog "0"
|
|
|
|
###########
|
|
# for logging and control if everything work fine you can get information inside
|
|
# log file. You find the file per default in /var/log/ddns/[sectionname].log
|
|
# The path can be modified for all log files in ddns.global section (see above)
|
|
# default: "1" on
|
|
option use_logfile "1"
|
|
|
|
########### Advanced settings #####################
|
|
|
|
###########
|
|
# you need to specify how ddns-scripts should detect you current local ip.
|
|
# the ip_source could be set to "network", "web", "interface" or "script"
|
|
# the parameters below specifying the additional information needed for
|
|
# the corresponding ip_spource configuration
|
|
# default: "network"
|
|
|
|
# ip_source "network" additional uses option ip_network and detects the
|
|
# current local ip on network as defined in /etc/config/network
|
|
# default: "wan" using IPv4
|
|
# default: "wan6" using IPv6
|
|
option ip_source "network"
|
|
option ip_network "wan"
|
|
|
|
# ip_source "web" additional uses option ip_url and detects the current
|
|
# local ip from special web sides that response with the ip address of
|
|
# calling host. If you are behind a firewall/NAT this is the best option
|
|
# since none of the local networks or interfaces will have the external ip.
|
|
# default: "http://checkip.dyndns.com" using IPv4
|
|
# default: "http://checkipv6.dyndns.com" using IPv6
|
|
# option ip_source "web"
|
|
# option ip_url "http://checkip.dyndns.com"
|
|
|
|
# ip_source "interface" additional uses option ip_interface
|
|
# ip_source "interface" uses one of the locally installed physical interfaces
|
|
# to detect independent from network they configured to.
|
|
# default: none
|
|
# option ip_source "interface"
|
|
# option ip_interface "eth1"
|
|
|
|
# ip_source "script" additional uses option ip_script
|
|
# it's useful if you want to write your own script to detect the
|
|
# current local ip. put full path into ip_script option.
|
|
# The script must be executable.
|
|
# default: none
|
|
# option ip_source "script"
|
|
# option ip_script ""
|
|
|
|
###########
|
|
# force_ipversion option will set the "-4" respectively "-6" parameter
|
|
# on command line of transfer and DNS lookup program.
|
|
# So the whole communication uses the selected IP version between both ends.
|
|
# needs GNU Wget or cURL installed for transfer and
|
|
# BIND's host for DNS lookup.
|
|
# default: "0" disabled
|
|
option force_ipversion "0"
|
|
|
|
###########
|
|
# Normally the current (in the internet) registered ip is detected using the
|
|
# local defined name lookup policies (i.e. /etc/resolve.conf etc.)
|
|
# Specify here a DNS server to use instead of the defaults.
|
|
# you can use hostname or ip address
|
|
# i.e. "google-public-dns-a.google.com"
|
|
# default: none
|
|
# option dns_server "google-public-dns-a.google.com"
|
|
|
|
# By default every DNS call is made via UDP protocol
|
|
# Some internet provider offer modems that cache UDP DNS requests.
|
|
# They also redirect calls to external servers to local.
|
|
# To force the usage of TCP for DNS requests enable this option
|
|
# Needs BIND's host program be installed
|
|
# default: "0" disabled
|
|
# option force_dnstcp "0"
|
|
|
|
###########
|
|
# If a Proxy is need to access HTTP/HTTPS pages on the WEB
|
|
# it can be configured here also for sending updates to the
|
|
# DDNS provider. If you configured use_https='1' above, you
|
|
# need to setup your HTTPS proxy here, otherwise your
|
|
# HTTP proxy. !!! You should not detect your current IP
|
|
# ip_source='web' (see above) because this request is also
|
|
# send via the configured proxy !!!
|
|
# Syntax: [user:password@]proxy:port !port is required !
|
|
# IPv6 address must be in squared brackets "[...]"
|
|
# default: none
|
|
# option proxy ''
|
|
|
|
###########
|
|
# In some very special configurations i.e. Multi WAN environment
|
|
# in a NAT cascade it might be necessary to define
|
|
# a network to use for communication.
|
|
# should use option ip_source "web" (see above)
|
|
# Needs GNU Wget (with SSL support) or cURL to be installed.
|
|
# GNU Wget will use IP address and cURL the physical device
|
|
# of the given network
|
|
# default: none
|
|
# option bind_network "wan7"
|
|
|
|
########### Timer settings ########################
|
|
|
|
###########
|
|
# defines the time interval to check if local IP has changed
|
|
# After the first start and first update send, the system will
|
|
# wait this time before verify if update was successful send.
|
|
# !!! checks below 5 minutes make no sense because the Internet
|
|
# needs about 5-10 minutes to sync an IP-change to all DNS servers !!!
|
|
# accepted unit entry’s: 'seconds' 'minutes' 'hours'
|
|
# minimum 5 minutes == 300 seconds
|
|
# default 10 minutes
|
|
option check_interval '10'
|
|
option check_unit 'minutes'
|
|
|
|
###########
|
|
# force to send an update to service provider, if no change was detected.
|
|
# consult DDNS providers documentation if your DDNS entry might timeout.
|
|
# accepted unit entry’s: 'minutes' 'hours' 'days'
|
|
# minimum needs to be greater or equal check interval (see above)
|
|
# A special setting of '0' is allowed, which forces the script to run once.
|
|
# It sends an update, verify if update was accepted by DNS
|
|
# (retry if not) and finish. Useful if you want to start by your own (i.e. cron)
|
|
# default 3 days == 72 hours
|
|
option force_interval '72'
|
|
option force_unit 'hours'
|
|
|
|
###########
|
|
# if error happen on detecting, sending or updating the
|
|
# script will retry the relevant action for retry_count times
|
|
# before stopping script execution.
|
|
# default: 5
|
|
option retry_count '5'
|
|
|
|
###########
|
|
# if error happen on detecting, sending or updating the
|
|
# script will retry the relevant action.
|
|
# here you define the time to wait before retry is started
|
|
# accepted unit entry’s: 'seconds' 'minutes'
|
|
# default: 60 seconds
|
|
option retry_interval '60'
|
|
option retry_unit 'seconds'
|