[Solved] ddclient, dyndns protocol <undefined> is not supported

Started by tracerrx, May 31, 2023, 03:53:00 PM

Previous topic - Next topic
Applied patch, cleared log, restarted service and I still get the below:

2023-05-31T13:13:39-04:00 Notice ddclient[31901] 36422 - [meta sequenceId="7"] WARNING: Wait at least 5 minutes between update attempts.
2023-05-31T13:13:39-04:00 Notice ddclient[31901] 36422 - [meta sequenceId="6"] WARNING: last updated <never> but last attempt on Wed May 31 13:13:31 2023 failed.
2023-05-31T13:13:39-04:00 Notice ddclient[31901] 36422 - [meta sequenceId="5"] WARNING: skipping update of XXXXXXXXXX.homeip.net from <nothing> to 1XX.XXX.XXX.XXX.
2023-05-31T13:13:31-04:00 Notice ddclient[6081] 20843 - [meta sequenceId="4"] FAILED: was not updated because protocol <undefined> is not supported.
2023-05-31T13:13:31-04:00 Notice ddclient[6081] 18500 - [meta sequenceId="3"] FAILED: updating : unexpected status (0)
2023-05-31T13:13:31-04:00 Notice ddclient[6081] 16680 - [meta sequenceId="2"] WARNING: updating : nochg: No update required; unnecessary attempts to change to the current address are considered abusive
2023-05-31T13:13:31-04:00 Notice ddclient[6081] 14514 - [meta sequenceId="1"] FAILED: updating XXXXXXXXXX.homeip.net: unexpected status (12)

@franco sent you a PM with complete output of /usr/local/etc/ddclient.conf and created a test domain for you to use

I debugged this just now (yay, it's Perl!) and this is the bad line inside nic_dyndns2_update():

https://github.com/ddclient/ddclient/blob/841ffcbdaa009687e5fb390c4527055e929f959a/ddclient.in#L4197

Replace with:

my $h = $hosts[0];

In all honesty I don't understand how it tries to handle multiple host names here by browsing through the result line by line (one hostname one line????).


Cheers,
Franco



Looks good! Thanks for the fix!

2023-06-01T09:43:27-04:00 Notice ddclient[45849] 75262 - [meta sequenceId="9"] FAILED: updating XXXXXX.homeip.net: unexpected status (0)
2023-06-01T09:43:27-04:00 Notice ddclient[45849] 73342 - [meta sequenceId="8"] SUCCESS: updating XXXXXX.homeip.net: good: IPv4 address set to 100.XXX.XXX.XXX
2023-06-01T09:43:27-04:00 Notice ddclient[45849] 72011 - [meta sequenceId="7"] FAILED: updating XXXXXXXX.homeip.net: unexpected status (12)
2023-06-01T09:43:21-04:00 Notice ddclient[26837] 32556 - [meta sequenceId="6"] WARNING: Wait at least 5 minutes between update attempts.
2023-06-01T09:43:21-04:00 Notice ddclient[26837] 32556 - [meta sequenceId="5"] WARNING: last updated Thu Jun 1 09:42:32 2023 but last attempt on Thu Jun 1 09:42:32 2023 failed.
2023-06-01T09:43:21-04:00 Notice ddclient[26837] 32556 - [meta sequenceId="4"] WARNING: skipping update of XXXXXXX.homeip.net from 1XX.XXX.XXX.XXX to 100.XXX.XXX.XXX.
2023-06-01T09:42:33-04:00 Notice ddclient[55964] 68145 - [meta sequenceId="3"] FAILED: updating XXXXXXXX.homeip.net: unexpected status (0)
2023-06-01T09:42:33-04:00 Notice ddclient[55964] 65768 - [meta sequenceId="2"] WARNING: updating XXXXXXXX.homeip.net: nochg: No update required; unnecessary attempts to change to the current address are considered abusive
2023-06-01T09:42:33-04:00 Notice ddclient[55964] 63951 - [meta sequenceId="1"] FAILED: updating XXXXXXXX.homeip.net: unexpected status (12)

Works!
But still doesn't show Current IP or time updated in GUI.
Is it suppose to do this?

I'm not sure about the GUI, but it does show up in the status file:

/var/tmp/ddclient.cache

But that's only for dyndns2. I think duckdns and other code paths are still broken upstream.


Cheers,
Franco