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: empty ip send to dns provider & replace dyndns by dynu #4448

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

Meliox
Copy link

@Meliox Meliox commented Jan 5, 2025

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

Describe the bug
The current service to lookup external ip ( https://github.com/opnsense/plugins/blob/master/dns/ddclient/src/opnsense/scripts/ddclient/lib/address.py#L35) for dyndns times out (and has been doing so for ages):

curl https://checkip.dyndns.com/
curl: (28) Failed to connect to checkip.dyndns.com port 443 after 300103 ms: Timeout was reached

Subsequently no IP is displayed in GUI and no IP is send to the DNS provider.

The PR resolves two issues following this.

  1. Handle bug with empty IP string is send to DNS provider

The lookup returns no parse ip and extract_address returns and empty string. excute only checks for None, hence an empty string was passed to dns provider.

Following the change, a proper error message is displayed in the log files and more importantly it stops the dns update.

Account xxxxx [dynu - ] no global IP address detected, check config if warning persists
Account xxxxx [dynu - ] not modified
  1. Remove the deprentied service dyndns and add dynu ipv4 and ipv6. This will "break" lookup for some, and they will need to revist their dDNS config.

To Reproduce
Steps to reproduce the behavior:

  1. Go to Dynamic DNS
  2. Configure DDNS and use dynu as "Check ip method"
  3. "See error in logs and gui"

Expected behavior
DDNS lookup and population of IP working in GUI.

Screenshots
If applicable, add screenshots to help explain your problem.

Relevant log files
If applicable, information from log files supporting your claim.

Additional context
Add any other context about the problem here.

Environment
Software version used and hardware type if relevant.
e.g.:
OPNsense 24.7.11_2-amd64
Plugin: os-ddclient (installed) 1.26

@Meliox Meliox changed the title ddclient: does not handle timed out responses & deprenciate dyndns ddclient: does not handle timed out/empty responses & deprenciate dyndns Jan 5, 2025
@Meliox Meliox changed the title ddclient: does not handle timed out/empty responses & deprenciate dyndns ddclient: empty ip send to dns provider & replace dyndns by dynu Jan 5, 2025
@Meliox Meliox changed the title ddclient: empty ip send to dns provider & replace dyndns by dynu dns/ddclient: empty ip send to dns provider & replace dyndns by dynu Jan 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

1 participant