- new function expand_ipv6()
- expand IPv6 before compare https://dev.openwrt.org/ticket/21725
- Fix split_FQDN() to return host.subdomain correctly #2334
- modified check for musl library used by nslookup #2341#2346 thanks to Arjen de Korte
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
- add support for "hostip" to get_registered_ip() as alternative to "Bind host" package https://dev.openwrt.org/ticket/20893#comment:5
- allow to send updates using compiled-in certificate file/path of curl/wget #2242#2243#2245
- add support for uclient-fetch / libustream-ssl.so
- remove /128 prefix-filter in get_local_ip() via interface #2268
- add dyndns.org to services_ipv6 https://forum.openwrt.org/viewtopic.php?id=62103
- readd duckdns.org to services #2251 (lost somewhere in data heaven)
- add zzzz.io service #2302
- updated tld_names.dat
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
- add -V / --version parameter to show version information
- new option lookup_host as host to use by nslookup/host to validate IP address changes, to be separate from [DOMAIN] parameter which produces a lot of questions in the forum and on multi-host updates
- new option param_enc for optional usage inside update_url [PARAMENC] (will be send urlencoded)
- new option param_opt for optional usage inside update_url [PARAMOPT]
- new service strato.de (IPv4 only) requested by ludwig.jaffe@
- new service variomedia.de (IPv4 & IPv6) requested by Wolfgang Oertl #1884
- rewritten function get_service_data to read services/service_ipv6 file
- allow 3rd parameter inside services/service_ipv6 file - here should be the answer of the ddns provider on success. If parameter is set, it's checked by ddns-scripts and report errors to logfile/syslog if failed and retry
- updated tld_names.dat
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
fixed sed when filtering IP address from nslookup output
because "Server:" block might have multiple address lines.
Thanks to Arjen de Korte
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
* fix problem with lucihelper script reported in OpenWrt Ticket 19419
* rewritten split_FQDN fixing detection errors and using zcat
* updated tld_names.dat and .gz compressed to save space
* add LoopiaDNS (loopia.se) to services_ipv6
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
new option "use_curl" to force the use of curl if GNU Wget and curl are installed
fix initscript reload(): reload and not restart if killall -1 fails
BusyBox nc not support -v in every compiled version
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
modified source directory structure
- files for production files
- samples for sample files (not installed in final build)
modified Makefile
- separate options for additional provider scripts
- remove comments and empty lines from final build
add IPv4 100.64/10 (RFC 6598) and 169.254/16 (RFC 5735) to the range of default blocked IP's.
new option "bind_network" to force GNU Wget or cURL to use specific network/interface for communication
new "domains.google.com" as IPv4 DDNS provider #822
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
restructure startup of dnymaic_dns_updater.sh
- first run load_all_config_options (it returns 1 if SECTION_ID not found) #779
- set all defaults if necessary
- verify if username and/or password is needed inside update_url #779
- remove wait - will be done by retry_interval and retry_count if communication fails
provider specific update scripts
- verify if username/password are needed
services_ipv6
- added freedns.afraid.org
- IPv6 should work due to their documentation
minor fixes
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
* remove CHANGELOG from distribution
* fix syslog output printing "\n" or other formating chars
* ddns configuration
- new UCI-config value ddns.global.allow_local_ip "0" or "1"
(default "0") - (OpenWrt Ticket 18642)
* dynamic_dns_functions.sh
- new function split_FQDN() splits a given FQDN into host,
(registerable) domainname, and TLD using
https://publicsuffix.org/list/effective_tld_names.dat
- verify_host_port() use BIND host, if installed
- verify_host_port() not detecting ip, if already given
- fixed regexp for IP detection from nslookup's answer - (OpenWrt
Ticket 16363)
- support ddns.global.allow_local_ip to allow sending non public IP's
to DDNS provider like 127.x, 192.168.x.x or fxxx - (OpenWrt Ticket
18642)
* new file tld_names.dat
- used by dynamic_dns_functions.sh inside split_FQDN() function to
find valid TLD's
* update_cloudflare.sh
- modified subdomain/domain splitting using split_FQDN()
- modified support for AA12.09 (json_get_keys())
- minor fixes and cleanup
- many thanks to Aaron Tanner for testing
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
- moved /usr/lib/ddns/dynamic_dns_lucihelper.sh from luci-app-ddns into this package
(Github openwrt/luci issue 251)
(OpenWrt Trac tickets 18326 18347)
- fix: dynamic_dns_update.sh did not loop
(OpenWrt Trac ticket 18336)
- add provider cloudflare.com IPv4 and IPv6 (Thanks to Paul for support and testing)
(OpenWrt Trac ticket 12500)
- modified detection, if dynamic_dns_fuctions are used by dynamic_dns_lucihelper.sh
- redirect stdout of wget,curl,host,nslookup,nc etc to /tmp/ddns_$$.dat and *.err instead of variables
- extended error detection in get_local_ip function
- modified verify of option ip_script to allow parameters, when calling
- add provider selfhost.de IPv4
- add provider no-ip.pl (nothing to do with no-ip.com)
(Github openwrt/packages issue #542)
IPv4 (tested) and also added for
IPv6 (NOT tested) because client IP is autodetected be provider
- add getlocalip_sample.sh as sample script for usage of
option ip_source 'script' together with
option ip_script '/usr/lib/ddns/getlocalip.sh -4'
- cleanup whitespaces at line ends
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
- fixed postinst and prerm in Makefile
- implementation of provider specific update scripts into services and
services_ipv6 file.
first Provider "no-ip.com" - Thanks to DarkStarXxX for
request and testing
- finished uci/ddns wiki at http://wiki.openwrt.org/doc/uci/ddns
- rewritten retry management
- rewritten logging including following Issue 469
https://github.com/openwrt/packages/issues/469
- stop running sections on hotplug ifdown event (like start on ifup)
- implement trap detection
also kill "sleep" child processes
SIGHUP to reload configuration (not really reloading, simply
starting a new process)
/etc/init.d/ddns reload implemented
- code optimization
- new provider LoopiaDNS.se Issue 494
https://github.com/openwrt/packages/issues/494
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
Changed the verify of DNS server and proxy at script start to retry the
verify if there are connection problems during verify
plus some minor changes.
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
fixes problem CRITICAL ERROR - custom update_script not found
when extracting url and script from services / services_ipv6 file
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
Squashed commit of the following:
commit 2701c8868e
Author: Christian Schoenebeck <christian.schoenebeck@gmail.com>
Date: Sun Oct 5 11:01:57 2014 +0200
ddns-scripts: Added support for custom update scripts
Sample script
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
commit e07ecb90fa
Author: Christian Schoenebeck <christian.schoenebeck@gmail.com>
Date: Sun Oct 5 11:00:11 2014 +0200
ddns-scripts: Added support for custom update scripts
Added support for custom update scripts with new option update_script.
function get_service_url() renamed to get_service_data() and extended to detect scripts inside service / service_ipv6 for later use
function send_update() modified to support custom update scripts.
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
commit 39e41b2151
Author: Christian Schoenebeck <christian.schoenebeck@gmail.com>
Date: Sun Oct 5 10:52:44 2014 +0200
ddns-scripts: Added support for custom update scripts
Added support for custom update scripts with new option update_script
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
commit 33f264768e
Author: Christian Schoenebeck <christian.schoenebeck@gmail.com>
Date: Sun Oct 5 10:48:21 2014 +0200
ddns-scripts: Insert description for NEW option update_script
Insert description for NEW option update_script
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
commit 6f6a60244d
Author: Christian Schoenebeck <christian.schoenebeck@gmail.com>
Date: Sun Oct 5 10:43:52 2014 +0200
ddns-scripts: Update PKG_RELEASE
Update_PKG_RELEASE to reflect changes
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
New function __urlencode() to remove special chars used in send_update() for username and password.
username might have email address and password might have special chars for security reasons.
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
Thanks to "eqsun" for report and offer of fix.
Otherwise the ip address starts with 100~109 will be treated as invalid.
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
new extraction of IP inside function get_registered_ip for host and nslookup
thanks to jow for the sed
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
Squashed commit of the following:
commit fc1d42f069
Author: Christian Schoenebeck <christian.schoenebeck@gmail.com>
Date: Sun Sep 21 18:01:43 2014 +0200
[ddns-scripts] Update to Version 2.0.1-1
commit 731f9b4df0
Author: Christian Schoenebeck <christian.schoenebeck@gmail.com>
Date: Sun Sep 21 17:59:25 2014 +0200
[ddns-scripts] Update to Version 2.0.1-1
personal helper script to create hashes for CA-Certificates for Wget and cURL using https protocol without errors.
Sorry GitHub web interface only supports single commits that will be summarized into one pull request.
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
commit df8f6c9d5d
Author: Christian Schoenebeck <christian.schoenebeck@gmail.com>
Date: Sun Sep 21 17:56:05 2014 +0200
[ddns-scripts] Update to Version 2.0.1-1
rewritten
Sorry GitHub web interface only supports single commits that will be summarized into one pull request.
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
commit 50cdf5acb9
Author: Christian Schoenebeck <christian.schoenebeck@gmail.com>
Date: Sun Sep 21 17:54:40 2014 +0200
[ddns-scripts] Update to Version 2.0.1-1
rewritten
Sorry GitHub web interface only supports single commits that will be summarized into one pull request.
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
commit b1d650a345
Author: Christian Schoenebeck <christian.schoenebeck@gmail.com>
Date: Sun Sep 21 17:52:52 2014 +0200
[ddns-scripts] Update to Version 2.0.1-1
not needed in this version
Sorry GitHub web interface only supports single commits that will be summarized into one pull request.
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
commit 9532114b03
Author: Christian Schoenebeck <christian.schoenebeck@gmail.com>
Date: Sun Sep 21 17:51:39 2014 +0200
[ddns-scripts] Update to Version 2.0.1-1
same function as existing services file but used for IPv6
Sorry GitHub web interface only supports single commits that will be summarized into one pull request.
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
commit a636bc25c6
Author: Christian Schoenebeck <christian.schoenebeck@gmail.com>
Date: Sun Sep 21 17:46:56 2014 +0200
[ddns-scripts] Update to Version 2.0.1-1
New file explaining availible parameters.
Sorry GitHub web interface only supports single commits that will be summarized into one pull request.
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
commit 52332354fc
Author: Christian Schoenebeck <christian.schoenebeck@gmail.com>
Date: Sun Sep 21 17:44:45 2014 +0200
[ddns-scripts] Update to Version 2.0.1-1
Sorry GitHub web interface only supports single commits that will be summarized into one pull request.
Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>