Thank you for the awesome new release! I upgraded without problem and added a new DDNS using Cloudflare API token (new feature in DDClient 3.10). The logs show that DDNS is being updated without error. However, the IP and Updated columns of the UI remain blank (see attachment).
Keep up the great work.
Seeing the same after the update to 23.1 on os-ddclient 3.10, using DuckDNS. The IPs do get updated properly on DuckDNS but since Opnsense doesn't think the IPs are updated, it updates the server every time, instead of checking the WAN first to see if the IP has changed, before forcing an update.
This is the log:
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 58089 - [meta sequenceId="72"] FAILED: updating ********.duckdns.org: Server said: '0'
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 57487 - [meta sequenceId="71"] RECEIVE:
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 57126 - [meta sequenceId="70"] RECEIVE: 0
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 56686 - [meta sequenceId="69"] RECEIVE: OK
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 55957 - [meta sequenceId="68"] RECEIVE: 2
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 55697 - [meta sequenceId="67"] RECEIVE:
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 55234 - [meta sequenceId="66"] RECEIVE: X-Frame-Options: DENY
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 54804 - [meta sequenceId="65"] RECEIVE: X-Clacks-Overhead: GNU Terry Pratchett
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 54033 - [meta sequenceId="64"] RECEIVE: Server: nginx/1.20.0
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 53564 - [meta sequenceId="63"] RECEIVE: Set-Cookie: AWSALBCORS=**************; Expires=Fri, 03 Feb 2023 17:22:31 GMT; Path=/; SameSite=None; Secure
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 52923 - [meta sequenceId="62"] RECEIVE: Set-Cookie: AWSALB=************; Expires=Fri, 03 Feb 2023 17:22:31 GMT; Path=/
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 52511 - [meta sequenceId="61"] RECEIVE: Connection: close
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 51833 - [meta sequenceId="60"] RECEIVE: Transfer-Encoding: chunked
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 51399 - [meta sequenceId="59"] RECEIVE: Date: Fri, 27 Jan 2023 17:22:31 GMT
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 50596 - [meta sequenceId="58"] RECEIVE: HTTP/1.1 200 OK
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 50352 - [meta sequenceId="57"] SENDING:
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 50352 - [meta sequenceId="56"] SENDING: Connection: close
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 50352 - [meta sequenceId="55"] SENDING: User-Agent: ddclient/3.10.0
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 50352 - [meta sequenceId="54"] SENDING: Host: www.duckdns.org
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 50352 - [meta sequenceId="53"] SENDING: GET /update?domains=*********.duckdns.org&token=*********&ip=***.***.***.*** HTTP/1.1
2023-01-27T09:22:31-08:00 Notice ddclient[25031] 49805 - [meta sequenceId="52"] CONNECTED: using SSL
2023-01-27T09:22:30-08:00 Notice ddclient[25031] 49352 - [meta sequenceId="51"] CONNECT: www.duckdns.org
2023-01-27T09:22:30-08:00 Notice ddclient[25031] 48890 - [meta sequenceId="50"] UPDATE: updating *********.duckdns.org
2023-01-27T09:22:30-08:00 Notice ddclient[25031] 48179 - [meta sequenceId="49"] INFO: setting IP address to ***.***.***.*** for *********.duckdns.org
Having the same issues
I have both duckdns and cloudflare and can confirm
With both duckdns and cloudflare, the ip's are updated, but aren't showing in the columns and ddclient keeps updating.
Edit: I've opened an issue on github for ddclient reporting it didn't update duckdns while it did: https://github.com/ddclient/ddclient/issues/503
Same issue here with dyndns and njalla.
But it seems like the problem has been fixed upstream and now we only have to wait until it makes its way to a release.
I don't know if it has been intentionally dropped but maybe the force update button would be nice to have in ddclient plugin as well for situations like these to test that the update has been done manually.
Quote from: swILeZBa on January 30, 2023, 10:13:29 AM
Same issue here with dyndns and njalla.
But it seems like the problem has been fixed upstream and now we only have to wait until it makes its way to a release.
I don't know if it has been intentionally dropped but maybe the force update button would be nice to have in ddclient plugin as well for situations like these to test that the update has been done manually.
I got an update today to OPNsense 23.1_6 and os-ddclient 1.11_1 but it doesn't seem to be the fix. You can force update of ddclient via cron btw.
Original issues are still present in 23.1.1.
I use no-ip for my ddns and in order to have the IP/Updated columns show information I have to set the Check IP Method to googledomains and use OPNsense for the backend. However by setting OPNsense as the backend, the ddclient service on the dashboard shows that it is down and not started.
Also if I set the Check IP Method to Interface IPv4, then ddclient will start once check/set the IP and then stop the service until the next manual start.
I am seeing the same. I use three services: cloudflare, duckdns, and dyndns. All three were working as expected through the 22.7 series, but since I upgraded to 23.1.1_2 none of the columns update. I use the interface WAN method for updates for all three services.
I start having this issue with duckdns since updated to 23.1.1 from 23.1_6, which is strange :-\.
Hi,
I am seeing the same after updating today. I am using "Custom Service" with protocol "DynDns2" for selfhost.de
Check IP method -> interface
"Current IP" and "Updated" columns are empty
Log says :
FAILED: was not updated because protocol <undefined> is not supported.
FAILED: updating : unexpected status (0)
cheers
Michael
the problem is the lack of glasses of those who decided to replace this thing that never worked properly.
Opnsense loses a lot of reputation with this.
For me it was the best of all, I was even considering paying for the most complete version, but I'm starting to look for other solutions.
I'd say the sum of useful contributions in code is sadly much less than the abundance of useless rants like this one.
Cheers,
Franco
Quote from: franco on February 28, 2023, 08:01:02 PM
I'd say the sum of useful contributions in code is sadly much less than the abundance of useless rants like this one.
Cheers,
Franco
I know that some users are less appreciative of your teams effort to get the product more functional and to fix bugs. But for other users that know you are working hard on this we appreciate it, just like that netmap issue with zenarmor. :)
Side note when the ddclient gets updated, and you want someone to test it, just let us know, thanks again!
I've opened an issue on github for this: https://github.com/opnsense/core/issues/6407
I'd appreciate encouragement in the ddclient direction to release a bugfix version. As such I've marked the ticket "upstream" to reflect that it needs movement there to proceed.
Cheers,
Franco
Hi,
Thanks for looking in to this.
I'm not sure I understand what I should report to ddclient?
ddclient updates the cloudflare dns record and seems to work fine as far as I can see:
2023-03-11T06:51:27 Notice ddclient[7241] 9078 - [meta sequenceId="1"] SUCCESS: updating my.domain.com: IPv4 address set to x.x.x.x
The issue I raised for duckdns has been merged, so this should be included in the next release: https://github.com/ddclient/ddclient/pull/506
I did not realize at first, but the move from 22.7.11_1 to 23.1 (now at 23.1_2, will be 23.1.3 shortly) also broke ddclient updates to easyDNS for me. (The beginning of logged errors matches my upgrade date)
<29>1 2023-03-11T07:17:11-05:00 OPNplenum ddclient[39675] 43033 - [meta sequenceId="10"] FAILED: updating <REDACTED>: unexpected status (bb)
where the status code in brackets is different for every attempt to update.
I am a reasonably adept user, but not a programmer in the slightest, so I cannot "contribute code". Don't have a github account either, so clearly not an adept user of that tool, but I'll see what I can do...
As I said all we really need is an official bugfix release from ddclient called 3.10.1 ;)
I may have found something helpful in my case.
For EasyDNS, anyways, the problem may be that ddclient as configured in OPNsense uses a min interval of 5 minutes and EasyDNS API complains back that it wants a minimum interval of 10 minutes. I'm not sure what started the first string of errors in the very first place, but now it seems stuck in a loop where every 5 minutes it tries to update because the previous failed, and the failure may be due to the unknown status (unknown to ddclient anyways) that I should only send updates every 10 minutes or more.
The logs show attempts and failures with "unknown status" every 5 minutes. So it considers that a failure and tries again in 5 minutes, but the "failure" is due to a message that ddclient is trying too often.
Could a knob be added to the opnsense config screen to set the minimum interval / max frequency? Is this the "-daemon <delay>" option?
EDIT: was overlooking the interval setting on the general tab. Changed that to '700' in my case to continue testing. Still believe that ddclient should understand the TOO FREQ error - leaving issue in place.
<29>1 2023-03-10T23:45:11-05:00 OPNplenum ddclient[16714] 31563 - [meta sequenceId="1"] FAILED: updating <REDACTED1>: unexpected status (9d)
<29>1 2023-03-10T23:45:11-05:00 OPNplenum ddclient[16714] 32911 - [meta sequenceId="2"] FAILED: updating <REDACTED2>: unexpected status (9e)
<29>1 2023-03-10T23:50:12-05:00 OPNplenum ddclient[16714] 82372 - [meta sequenceId="1"] FAILED: updating <REDACTED1>: unexpected status (bb)
<29>1 2023-03-10T23:50:12-05:00 OPNplenum ddclient[16714] 83451 - [meta sequenceId="2"] FAILED: updating <REDACTED2>: unexpected status (ba)
<29>1 2023-03-10T23:55:12-05:00 OPNplenum ddclient[16714] 18466 - [meta sequenceId="1"] FAILED: updating <REDACTED1>: unexpected status (9d)
<29>1 2023-03-10T23:55:12-05:00 OPNplenumn ddclient[16714] 19477 - [meta sequenceId="2"] FAILED: updating <REDACTED2>: unexpected status (9e)
logging from running 'ddclient -V -force' manually:
RECEIVE: HTTP/1.1 200 OK
RECEIVE: Date: Sat, 11 Mar 2023 12:53:52 GMT
RECEIVE: Server: Apache
RECEIVE: Expires: Thu, 19 Nov 1981 08:52:00 GMT
RECEIVE: Cache-Control: no-store, no-cache, must-revalidate
RECEIVE: Pragma: no-cache
RECEIVE: Set-Cookie: easydns_language=en_US; expires=Sun, 10-Mar-2024 12:53:52 GMT; Max-Age=31536000; path=/
RECEIVE: Set-Cookie: EasyDNS_SID=REDACTED; expires=Sat, 11-Mar-2023 14:53:52 GMT; Max-Age=7200; path=/; domain=api.cp.easydns.com; secure; HttpOnly
RECEIVE: X-Frame-Options: sameorigin
RECEIVE: Content-Security-Policy: frame-ancestors 'self';
RECEIVE: Vary: Accept-Encoding
RECEIVE: Connection: close
RECEIVE: Transfer-Encoding: chunked
RECEIVE: Content-Type: text/html; charset=UTF-8
RECEIVE:
RECEIVE: bb
RECEIVE: <HTML><BODY><FONT FACE="sans-serif" SIZE="-1">TOO_FREQ<br />
RECEIVE: <hr noshade size="1">
RECEIVE: Increase your time between updates for <REDACTED> to 600 seconds or more.<br />
RECEIVE: </FONT></BODY></HTML>
RECEIVE: 0
The setting of <delay> from within opnsense may be a useful option, and workaround for a few problems including this one. I'm guessing that the real problem here is that ddclient needs to be made to understand a "TOO FREQ" response from my particular API? Of course whatever originally set it into this loop is still unknown.
EDIT: Issue #525 opened
There are a couple of bugs open in the ddclient GitHub for the spamming:
https://github.com/ddclient/ddclient/issues/481 (https://github.com/ddclient/ddclient/issues/481)
https://github.com/ddclient/ddclient/issues/431 (https://github.com/ddclient/ddclient/issues/431)
It looks like ddclient is as good as dead... Unless someone takes over the project...
https://github.com/ddclient/ddclient/issues/528
That's unfortunate. Looking for alternatives, it appears that inadyn is the only recently updated client I can find.
Hi Guys,
so, whats the verdict here? ;D
Should I switch back to legacy dynDNS client to be able to update my OPNsense box?
cheers
Michael
Hello,
I have the same problems and I have 2 routers so I can compare:
- everything works smoothly on OPNsense 22.7.11_1-amd64 with os-ddclient 1.9_2
- I get errors on OPNsense 23.1.6-amd64 with os-ddclient 1.12
Both are running the same config (only the hostnames change). The errors on the last version are:
FAILED: updating mynamexxx.dnsalias.net: unexpected status (13)
Use of uninitialized value $h in hash element at /usr/local/sbin/ddclient line 4122.
Use of uninitialized value $_[0] in sprintf at /usr/local/sbin/ddclient line 2179.
WARNING: updating : nochg: No update required; unnecessary attempts to change to the current address are considered abusive
Use of uninitialized value $h in hash element at /usr/local/sbin/ddclient line 4131.
Use of uninitialized value $h in hash element at /usr/local/sbin/ddclient line 4132.
Use of uninitialized value $h in hash element at /usr/local/sbin/ddclient line 4133.
Use of uninitialized value $h in hash element at /usr/local/sbin/ddclient line 4122.
Use of uninitialized value $_[0] in sprintf at /usr/local/sbin/ddclient line 2179.
FAILED: updating : unexpected status (0)
Use of uninitialized value in string ne at /usr/local/sbin/ddclient line 1172.
Use of uninitialized value in string ne at /usr/local/sbin/ddclient line 1172.
Use of uninitialized value in string ne at /usr/local/sbin/ddclient line 1172.
Use of uninitialized value in string ne at /usr/local/sbin/ddclient line 1172.
Use of uninitialized value in string ne at /usr/local/sbin/ddclient line 1172.
Use of uninitialized value in string ne at /usr/local/sbin/ddclient line 1172.
Use of uninitialized value in string ne at /usr/local/sbin/ddclient line 1172.
Use of uninitialized value in string ne at /usr/local/sbin/ddclient line 1172.
Use of uninitialized value in string ne at /usr/local/sbin/ddclient line 1172.
Use of uninitialized value in string ne at /usr/local/sbin/ddclient line 1172.
Use of uninitialized value in string ne at /usr/local/sbin/ddclient line 1172.
Use of uninitialized value in string ne at /usr/local/sbin/ddclient line 1172.
Use of uninitialized value in string ne at /usr/local/sbin/ddclient line 1172.
Use of uninitialized value in string ne at /usr/local/sbin/ddclient line 1172.
Use of uninitialized value in string ne at /usr/local/sbin/ddclient line 1172.
Use of uninitialized value in string ne at /usr/local/sbin/ddclient line 1172.
Use of uninitialized value in string ne at /usr/local/sbin/ddclient line 1172.
Use of uninitialized value in string ne at /usr/local/sbin/ddclient line 1172.
FAILED: was not updated because protocol <undefined> is not supported.
The last version DOES UPDATE correctly on dyndns but it looks like it doesn't write the result correctly in /var/tmp/ddclient.cache so I imagine it's constantly updating... This is risky as dyndns could consider me as a spammer.
As a workaround, I disabled os-ddclient and I am using os-dyndns 1.27_3 [Dynamic DNS (legacy)]. I prefer dyndns anyway as I can also monitor a "WANGWGROUP" interface (multiwan), which is not possible with ddclient (see https://github.com/opnsense/plugins/issues/2899)
So if possible, please don't remove os-dyndns from future versions. I think it is especially important as the author of ddclient himself declared: "Lack of time and general interest in this project. I don't know the code anymore and can't really be a help in fixing this." (see https://github.com/ddclient/ddclient/issues/431#issuecomment-1424608301)
I had the same problem.
With ddclient I changed in
"Services" - "Dynamic DNS" - "Settings" - "General Settings"
the "Backend" from "ddclient" to "OPNsense".
After this, the IP update is shown correctly.
I have switched back to the legacy client, it works without issues for me. I'll keep the package stored away so that if it does get binned I can still run it. I know if and when it gets binned there'll be no support... I can cope with that.
23.1.6 appears to have fixed the spamming problem. I am using a CloudFlare API token with the ddclient backend and now I see the following message in my logs: "SUCCESS: XXX.XXX.com: skipped: IPv4 address was already set to ." I can live with the missing IP address in the columns/logs. My IP address rarely changes, so I can't test the case where the IP address has changed.
Edit: I needed to turn verbose logging on to see the skip messages.
That did ddclient has always been an issue for me since 22.7.
The 23.1.9 release with the 1.13_2 os-ddclient fixed the DDNS display problem. The columns in the DDNS listing are now updating correctly using Cloudflare API token and the OPNsense backend.
Should have stuck with the old version seeing the lack of support for the new one. Still not fixed in 23.7. Now the old version has been removed.