Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dns/ddclient: no-ip broken #3017

Closed
3 tasks done
theepan007 opened this issue Jun 24, 2022 · 19 comments
Closed
3 tasks done

dns/ddclient: no-ip broken #3017

theepan007 opened this issue Jun 24, 2022 · 19 comments
Labels
help wanted Contributor missing

Comments

@theepan007
Copy link

theepan007 commented Jun 24, 2022

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:

Describe the bug
IP address changes to WAN interface are not detected and sent to No-IP service, and ddclient logs the following messages:

ddclient[43123]	60634 - [meta sequenceId="2"] WARNING: unable to determine IP address	
ddclient[43123]	59557 - [meta sequenceId="1"] WARNING: found neither ipv4 nor ipv6 address

Doesn't matter what combination of Check ip method and Interface to monitor I use:

Check ip method: Interface, Interface to monitor: WAN
Check ip method: noip-ipv4, Interface to monitor: WAN
Check ip method: noip-ipv4, Interface to monitor: none

I prefer the Interface/WAN method as this keeps detection local and only sends data to no-ip when there are changes.

The generated ddclient.conf is:

daemon=300
syslog=yes                  # log update msgs to syslog
pid=/var/run/ddclient.pid   # record PID in file.
verbose=yes
ssl=yes

use=if, if=vtnet1, \
protocol=noip, \
login=xxxx, \
password=yyyy \
my.no-ip-name.net

I started using ddclient late last year, and this has "always" been an issue for me.

To Reproduce
Steps to reproduce the behavior:

  1. Add a Noip service
  2. Choose Check IP method = Interface
  3. Choose Interface to monitor = WAN

As mentioned I have also tried using Check IP method = noip-ipv4, same result.

Expected behavior
The public IP is correctly detected, change sent to No-IP service if update is needed.

Relevant log files

ddclient[43123]	60634 - [meta sequenceId="2"] WARNING: unable to determine IP address	
ddclient[43123]	59557 - [meta sequenceId="1"] WARNING: found neither ipv4 nor ipv6 address

Workaround
Modifying the ddclient.conf as follows:

From:

use=if, if=vtnet1, \

To:

use=if, if=vtnet1

And restarting the service - but this only persists until next reboot or update.

Environment
OPNsense 22.1.9 (amd64, OpenSSL)
Proxmox VM
Host CPU pass-through: Intel(R) Core(TM) i3-8109U CPU @ 3.00GHz (2 cores, 2 threads)
Network: VirtIO

@ilikenwf
Copy link
Contributor

See the workaround I'm using in the above - I just modified the command called to use curl and icanhazip.com - checkip is the script that is failing for some reason.

@maxkratz
Copy link

maxkratz commented Aug 4, 2022

I was able to successfully update IPs for no-ip hostnames by configuring the service type 'custom'.
Screenshot_2022-08-04_19-05-34

@ilikenwf
Copy link
Contributor

ilikenwf commented Aug 4, 2022

Interesting. I may have to try it.

@theepan007
Copy link
Author

@maxkratz, nicely done, thank you.
Your workaround solved my issue as well - now my ddclient can detect the WAN IP address and update if needed.

@christian-schulze
Copy link
Contributor

I had this same issue, the problem was the python script /usr/local/opnsense/scripts/ddclient/checkip always returning None. This script calls the various services via curl, which is hard coded to timeout after 10 seconds. Updating the script to timeout after 15 seconds fixed the issue for me...

@fichtner
Copy link
Member

What does 10 to 15 seconds fundamentally change about this? This is something about your setup, maybe DNS timeout.

@christian-schulze
Copy link
Contributor

christian-schulze commented Aug 26, 2022

@fichtner its absolutely a timeout:

$ /usr/local/bin/curl -m 10 http://ip1.dynupdate.no-ip.com/
curl: (28) Resolving timed out after 10010 milliseconds

and with a longer timeout:

$ /usr/local/bin/curl -m 15 http://ip1.dynupdate.no-ip.com/
202.xx.xx.xxx

@fichtner
Copy link
Member

I don’t think this is a technical problem we can solve by fiddling with a timeout. 10 seconds is more than enough for a healthy connection.

@theepan007
Copy link
Author

The timeout wasn't my issue either, since I was using interface detection method.

So far the only thing that worked for me is described in the workaround section of the initial post, as well as changing 'Service' to 'Custom' as described by @maxkratz. The latter being what I ended up doing, since it survives a reinstall/reboot.

@christian-schulze
Copy link
Contributor

Fair enough. In my particular instance its a timeout issue, so adding to the collective knowledge in case it helps someone else.

@wholtii
Copy link

wholtii commented Sep 17, 2022

I was able to successfully update IPs for no-ip hostnames by configuring the service type 'custom'. Screenshot_2022-08-04_19-05-34

Worked for me!! Thanks

@Keldandorin
Copy link

same here solved by using custom config and interface as source for Ip opnsense 22.1.8 installed

@ilikenwf
Copy link
Contributor

In my case the new timeout field fixes it, also like having the use of icanhazip as it seems to resolve faster here.

@OPNsense-bot
Copy link

This issue has been automatically timed-out (after 180 days of inactivity).

For more information about the policies for this repository,
please read https://github.com/opnsense/plugins/blob/master/CONTRIBUTING.md for further details.

If someone wants to step up and work on this issue,
just let us know, so we can reopen the issue and assign an owner to it.

@OPNsense-bot OPNsense-bot closed this as not planned Won't fix, can't repro, duplicate, stale Dec 21, 2022
@OPNsense-bot OPNsense-bot added the help wanted Contributor missing label Dec 21, 2022
@francismiles1
Copy link

I know this timed out, but this is 'still' a problem. I have tried many different configurations, and cannot get no-ip to work.

@maxkratz
Copy link

maxkratz commented Sep 13, 2023

I have tried many different configurations, and cannot get no-ip to work.

Have you tried this way? For my setup, it worked.

@francismiles1
Copy link

I have tried many different configurations, and cannot get no-ip to work.

Have you tried this way? For my setup, it worked.

Yup. Still not happy.. Its a shame really, as duckdns works well, but my organisation block it on my work laptop unfortunately, so need no-ip for wireguard access.

@maxkratz
Copy link

Yup. Still not happy..

What exactly is the problem? Could you elaborate a bit more? The configuration above works fine for me since I posted it here.

@francismiles1
Copy link

francismiles1 commented Sep 13, 2023

Hmm, you have me second-guessing myself now. am 'actually' now not sure the service is 'Not' working.. The logs however tell me nothing of any relevance, and for sure, the updated IP address etc. is not being populated etc., but I think this is a known issue.
Will fiddle further; The No-Ip web interface does not help much either as it gives no real indication of any firm IP updates (ie login logs)

3
2
1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Contributor missing
Development

No branches or pull requests

9 participants