ddclient plugin issue

Started by risingfish, July 29, 2022, 08:01:27 PM

Previous topic - Next topic
Maybe just a quick question, but I am I only person who finds the 'legacy' ddns plugin way easier to use and way more flexible that the new ddclient based one?

I removed the old legacy plugin and am trying out the new ddclient based one and it doesn't seem to installing correctly. The plugin shows as installed, and I can hit the WebUI, but when I try setting up my Cloudflare DDNS, I see the follow error in the back-end logs:

2022-07-29T11:52:14-06:00 Error configd.py [23cf2dbf-8331-4ff7-9fcf-f7c475999bc7] Script action stderr returned "b"pgrep: Cannot open pidfile `/var/run/ddclient.pid': No such file or directory""

Looking at the main dashboard in opnsense, it's shows as `running`, but it's not. For now I'm going to switch back to the 'legacy' client and an going to request that opnsense devs do not remove it anytime soon.

I tried sshing and restarting service from the terminal and ddclient just hangs. I let it run to 10 minutes like this and nothing happened.


Creating IPsec VTI instances...done.
Setting up routes...done.
Configuring firewall.......done.
Starting DHCPv4 service...done.
Starting NTP service...done.
Configuring OpenSSH...done.
Starting Unbound DNS...done.
Starting web GUI...done.
Syncing OpenVPN settings...done.
Generating RRD graphs...done.
Stopping ddclient.
Waiting for PIDS: 2064.
Stopping flowd.
Waiting for PIDS: 97228 97794.
Stopping flowd_aggregate...done
Stopping monit.
Waiting for PIDS: 86546.
Stopping acme_http_challenge.
Waiting for PIDS: 58391.
Starting acme_http_challenge.
setup igb0 [egress only]
Starting monit.
Starting Monit 5.32.0 daemon with http interface at /var/run/monit.sock
Starting flowd_aggregate.
Starting flowd.
Starting ddclient.
^C

Can you maybe start with the installed version.


Thanks,
Franco

Ack, sorry, falling down on the job.

OPNsense 22.1.10_4-amd64
FreeBSD 13.0-STABLE
LibreSSL 3.3.6

Oh, crud, I just installed an update and on reboot I just realized I'm further behind than I though. Let me do some updating before I go any further.

ok strange, that's supposed to have a better handling of the process. both the pid file and the perl daemon seem to be doing funky things. Can you try a simple sequence without the configd?

# service ddclient stop
# service ddclient start


Cheers,
Franco

Ok, I will try that. Just for the record here's my new versions:

OPNsense 22.7_4-amd64
FreeBSD 13.1-RELEASE
LibreSSL 3.3.6

Much better

I ran the commands and it acts normal but..

root@router:~ # service ddclient stop
Stopping ddclient.
Waiting for PIDS: 36971.
root@router:~ # service ddclient start
Starting ddclient.
root@router:~ #




2022-07-29T12:50:08-06:00 Error configd.py [86d740f4-ce04-4f49-90b6-8d0f1f9e511b] returned exit status 1
2022-07-29T12:50:08-06:00 Error configd.py [fa68cf8e-5682-4235-820d-6d235a3a1468] Script action stderr returned "b"pgrep: Cannot open pidfile `/var/run/ddclient.pid': No such file or directory""

Here's /var/run (not all of it):

-rw-r--r--  1 root   wheel        0 Jul 29 12:41 booting
-rw-r-----  1 root   wheel        0 Jul 29 12:40 carp_service_status.lock
-rw-r--r--  1 root   wheel        5 Jul 29 12:42 configd.pid
srw-rw-rw-  1 root   wheel        0 Jul 29 12:42 configd.socket=
-rw-------  1 root   wheel        5 Jul 29 12:41 cron.pid
-rw-r-----  1 root   wheel        6 Jul 29 12:55 ddclient.pid
-rw-------  1 root   wheel        3 Jul 29 12:40 devd.pid
srw-rw-rw-  1 root   wheel        0 Jul 29 12:40 devd.pipe=
srw-rw-rw-  1 root   wheel        0 Jul 29 12:40 devd.seqpacket.pipe=
drwxr-xr-x  2 root   wheel      512 Jul 21 02:13 dhclient/
-rw-r--r--  1 root   wheel        5 Jul 29 12:41 dhclient.igb0.pid
-rw-r--r--  1 root   wheel    21227 Jul 29 12:40 dmesg.boot
-rw-r--r--  1 root   wheel        6 Jul 29 12:41 filterlog.pid
-rw-------  1 root   wheel        6 Jul 29 12:41 flowd.pid
-rw-r--r--  1 root   wheel        5 Jul 29 12:41 flowd_aggregate.pid
-r--r--r--  1 root   wheel      256 Jul 29 12:40 ld-elf.so.hints
-r--r--r--  1 root   wheel      129 Jul 29 12:40 ld-elf32.so.hints


Here's the top part of /usr/local/etc/ddclient.conf

root@router:/var/run # cat /usr/local/etc/ddclient.conf
syslog=yes                  # log update msgs to syslog
pid=/var/run/ddclient.pid   # record PID in file.
ssl=yes

[...]



Here's output from /var/log/ddclient-XXXX.log


<29>1 2022-07-29T11:48:29-06:00 <router> ddclient[16312] 18364 - [meta sequenceId="1"] WARNING:  file /var/tmp/ddclient.cache, line 3: Invalid Value for keyword 'ip' = ''
<29>1 2022-07-29T11:48:29-06:00 <router> ddclient[16312] 22387 - [meta sequenceId="2"] WARNING:  skipping update of <<mydomain>> from <nothing> to 69.92.0.184.
<29>1 2022-07-29T11:48:29-06:00 <router> ddclient[16312] 22387 - [meta sequenceId="3"] WARNING:   last updated <never> but last attempt on Fri Jul 29 11:48:11 2022 failed.
<29>1 2022-07-29T11:48:29-06:00 <router> ddclient[16312] 22387 - [meta sequenceId="4"] WARNING:   Wait at least 5 minutes between update attempts.
<29>1 2022-07-29T11:52:14-06:00 <router> ddclient[98251] 99829 - [meta sequenceId="1"] WARNING:  file /var/tmp/ddclient.cache, line 3: Invalid Value for keyword 'ip' = ''
<29>1 2022-07-29T11:52:14-06:00 <router> ddclient[98251] 2371 - [meta sequenceId="2"] WARNING:  skipping update of <<mydomain>> from <nothing> to 69.92.0.184.
<29>1 2022-07-29T11:52:14-06:00 <router> ddclient[98251] 2371 - [meta sequenceId="3"] WARNING:   last updated <never> but last attempt on Fri Jul 29 11:51:04 2022 failed.
<29>1 2022-07-29T11:52:14-06:00 <router> ddclient[98251] 2371 - [meta sequenceId="4"] WARNING:   Wait at least 5 minutes between update attempts.

Ultimately, I'm trying to switch from No-Ip to Cloudflare. I just setup No-Ip again in os-ddclient and I was able to update No-Ip fine. To me, it's looking like the current ddclient plugin Cloudflare settings just don't work.

If anyone runs across this post with the same issues, the ultimate solution was to switch back to the legacy DDNS plugin. It's pretty obvious the ddclient plugin is not ready for prime time and hopefully the opnsense devs change course and leave the old plugin in for the foreseeable future.

I also have Cloudflare for DDNS testing.
Works as it should.
Have you set up a Api Token with Zone Permisson?


Hello,

I just wanted to say that I encountered the same issue.

My opnsense is updated to the last version OPNsense 22.7.2-amd64 at the moment of writing.

I was using dyndns and duckdns.

The service just refused to start.


Going back to the previous dyndns client worked perfectly.

My opnsense is updated to the last version OPNsense 22.7.4-amd64 at the moment of writing.

I am using xxx.dyndns.org, but the ddclient refuses to start.

Installed ddclient on my piHole RPi4 and it worked first time.