Package Details: ddclient-ipv6 3.8.3-3

Git Clone URL: (read-only)
Package Base: ddclient-ipv6
Description: Update dynamic DNS entries for accounts on many dynamic DNS services, with IPv6 patch
Upstream URL:
Licenses: GPL2
Conflicts: ddclient
Provides: ddclient
Submitter: oi_wtf
Maintainer: oi_wtf
Last Packager: oi_wtf
Votes: 2
Popularity: 0.000007
First Submitted: 2015-09-11 08:13
Last Updated: 2018-03-26 16:12

Latest Comments

david_rysk commented on 2018-05-20 21:38

Any chance you could apply this patch to support the current Cloudflare API? (The old one was sunsetted a while back.)

tadeussenf commented on 2018-03-31 17:44

Thanks alot for your quick and helpful reply, with your changes it's working like a charm now (using usev6=...).

oi_wtf commented on 2018-03-26 16:12

I don't think this is ddclient's cloudflare code at fault. I believe those html tags come from your source, as ddclient's cloudflare code does not add any HTML and the cloudflare API used by ddclient uses JSON.

ddclient's get_ip function does some regex matching magic to find an IPv4 address in any output it gets from usev6.

Matching an IPv4 address with a regex is relatively simple compared to matching an IPv6 address, since there are always 3 dots and 4 numbers. With IPv6 the number of colons and the numbers in between can vary very much, a regex to match them somewhat reliably is complex.[1] (And the one in the ipv6 patch I used for this is probably broken.)

So that's why IPv4 is OK.

I'll add a patch, maybe it'll fix the issue.

If not, you'll probably need to clean up the input. Meaning the IP source you defined with usev6=...

If it's usev6=web, maybe use usev6=cmd with curl and sed or something.


tadeussenf commented on 2018-03-25 13:03

This seems to somehow insert (or not strip away) html tags into the ipv6 address when using cloudflare. The ip address submitted to cloudfront is something like "< strong >imagine_address_here< /strong >" (added whitespaces, because comments seem to render html code), which is then rejected as invalid by cloudfront.

It's not an upstream issue, as cloudfront works fine there (but obviously only for ipv4)

oi_wtf commented on 2017-04-28 16:47

It shoould be installed through the dependency on "perl-io-socket-ssl"...
Check if that package is out of date on your system or uninstalled
or otherwise unreachable by perl

tladuke commented on 2017-04-22 02:57

How do you get it to find IO::Socket::SSL?

I keep getting

FATAL: Error loading the Perl module IO::Socket::SSL needed for SSL connect.
FATAL: On Debian, the package libio-socket-ssl-perl must be installed.
FATAL: On Red Hat, the package perl-IO-Socket-SSL must be installed.
FATAL: On Alpine, the package perl-io-socket-ssl must be installed.

Corubba commented on 2016-07-09 14:44

Please also apply this patch [0] to exclude all invalid ipv6 addresses.


cfstras commented on 2016-07-01 08:15

Here's a patch for using ipv6 with cloudflare:

(in the config, set "usev6=if, if=enp0s25" or similar)

--- ddclient 2016-07-01 10:13:21.355361988 +0200
+++ /bin/ddclient 2016-07-01 10:11:22.387307999 +0200
@@ -4171,7 +4171,12 @@

# Set domain
- $url = "https://$config{$key}{'server'}/api_json.html?a=rec_edit&type=A&ttl=1";
+ $url = "https://$config{$key}{'server'}/api_json.html?a=rec_edit&ttl=1";
+ if ($ip =~ /:/) {
+ $url .= "&type=AAAA";
+ } else {
+ $url .= "&type=A";
+ }
$url .= "&name=$hostname";
$url .= "&z=".$config{$key}{'zone'};
$url .= "&id=".$id;