Will be fixed soon
Some smoketests cannot pass
Iāll try and provide a perspective on what all are happening here:
TL;DR: Dual stack config has is partially implemented in ddclient 3.10. It works for some services, but not all. And interpretation of use=
, if=
, web=
have changed (deprecated).
@Viacheslav: your PRs were accurate back then (pre ddclient 3.10). The problem with having that option globally (instead of at per host level) is that there isnāt a way to have some configs with IPv4 while some with IPv6. One way to solve this would be to move the global config for IPv4/IPv6 to per host/protocol config. This will require modifying the config tree. I am working on a rewrite of this as part of https://vyos.dev/T5144. Hope you are okay with moving IPv4/IPv6 config from global scope to per-host scope.
As @Netboy3 pointed out use=if
, if=ethN
etc are indeed deprecated. ddclient.conf
internal doc comments are confusing and misleading
But then again, the IPv6 proposal document isnāt implemented for all protocols. Until then, weāll have to deal with special-casing on a per-protocol basis.
@debiansid new dynamic_dns.py
changes that are in VyOS build are for op_mode
, not conf_mode
. Did it work for you in the past? Dual-stack support for he.net
isnāt there in ddclient release 3.10 after all ā it is there in (unreleased) master
though.
I should add another service to update v4 separately?
Once you set ipv6-enable
globally, all individual service
configurations are iPv6 only. However, even if you chose to hand-edit the config file /run/ddclient/ddclient.conf
it is unlikely to work (havenāt verified though) for dns.he.net because of the way ddclient groups the configs. Notice that login
, password
, server
are part of the group key and he.net requires that you have same login/password for both A
record as well as AAAA
record if the hostname
is same.
Quick follow-up, I have raised a few PRs to make things slightly better, hopefully.
Not sure if this is related or notā¦
show configuration commands | match dynamic
set service dns dynamic interface eth1 service changeip host-name 'hostname'
set service dns dynamic interface eth1 service changeip login 'login'
set service dns dynamic interface eth1 service changeip password 'password'
set service dns dynamic interface eth1 service changeip server 'nic.changeip.com'
show log | grep ddclient | tail -12
May 23 15:08:22 ddclient[63286]: WARNING: skipping update of ***.changeip.co from <nothing> to 1.2.3.4.
May 23 15:08:22 ddclient[63286]: WARNING: last updated <never> but last attempt on Tue May 23 15:07:21 2023 failed.
May 23 15:08:22 ddclient[63286]: WARNING: Wait at least 5 minutes between update attempts.
May 23 15:10:22 ddclient[63293]: WARNING: skipping update of (.changeip.co from <nothing> to 1.2.3.4.
May 23 15:10:22 ddclient[63293]: WARNING: last updated <never> but last attempt on Tue May 23 15:09:22 2023 failed.
May 23 15:10:22 ddclient[63293]: WARNING: Wait at least 5 minutes between update attempts.
May 23 15:12:22 ddclient[63303]: WARNING: skipping update of ***.changeip.co from <nothing> to 1.2.3.4.
May 23 15:12:22 ddclient[63303]: WARNING: last updated <never> but last attempt on Tue May 23 15:11:22 2023 failed.
May 23 15:12:22 ddclient[63303]: WARNING: Wait at least 5 minutes between update attempts.
May 23 15:14:23 ddclient[63320]: WARNING: skipping update of ***.changeip.co from <nothing> to 1.2.3.4.
May 23 15:14:23 ddclient[63320]: WARNING: last updated <never> but last attempt on Tue May 23 15:13:22 2023 failed.
May 23 15:14:23 ddclient[63320]: WARNING: Wait at least 5 minutes between update attempts.
grep changeip /bin/ddclient
leads me to think Iām using the right settingsā¦
$ show dns dynamic status
Hostname IPv4 address IPv4 status IPv6 address IPv6 status Last update
--------------------- -------------- ------------- -------------- ------------- -------------------
***.changeip.co noconnect noconnect 1969-12-31 19:00:00
$ show version
Version: VyOS 1.4-rolling-202305210317
Release train: current
Built by: autobuild@vyos.net
Built on: Sun 21 May 2023 03:17 UTC
Build UUID: e6255891-3418-4fee-956d-7ae72dd875b8
Build commit ID: ee81a8a182c0e0
Architecture: x86_64
Boot via: installed image
System type: bare metal
This is unrelated. Looks like something strange happening with changeip. Since changeip uses dyndns2 protocol, can you please try overriding the protocol to dyndns2
(set service dns dynamic interface eth1 service changeip protocol
dyndns2`) and see what happens?
May 26 08:06:33 systemd[1]: Stopping ddclient.service - Update dynamic domain name service entries...
May 26 08:06:33 systemd[1]: ddclient.service: Deactivated successfully.
May 26 08:06:33 systemd[1]: Stopped ddclient.service - Update dynamic domain name service entries.
May 26 08:06:33 systemd[1]: ddclient.service: Consumed 1min 33.028s CPU time.
May 26 08:06:33 systemd[1]: Starting ddclient.service - Update dynamic domain name service entries...
May 26 08:06:34 systemd[1]: Started ddclient.service - Update dynamic domain name service entries.
May 26 08:06:34 ddclient[69498]: WARNING: skipping update of ***.changeip.co from <nothing> to 1.2.3.4.
May 26 08:06:34 ddclient[69498]: WARNING: last updated <never> but last attempt on Fri May 26 08:05:48 2023 failed.
May 26 08:06:34 ddclient[69498]: WARNING: Wait at least 5 minutes between update attempts.
Feels like itās going to be the sameā¦
I cannot see the command line⦠I think !
is a forceā¦
root@vyos-20230521:/var/run/ddclient# for i in `ls`; do echo $i; echo; cat -n $i; done
ddclient.cache
1 ## ddclient-3.10.0
2 ## last updated at Fri May 26 08:14:35 2023 (1685103275)
3 atime=0,host=***.changeip.co,mtime=0,status=noconnect,status-ipv4=noconnect,status-ipv6=noconnect,warned-min-error-interval=1685103275,warned-min-interval=0,wtime=30 ***.changeip.co
ddclient.conf
1 ### Autogenerated by dynamic_dns.py ###
2 daemon=1m
3 syslog=yes
4 ssl=yes
5
6 # ddclient configuration for interface "eth1"
7 use=if, if=eth1
8
9
10 # DynDNS provider configuration for changeip, ***.changeip.co
11 protocol=changeip,
12 max-interval=28d,
13 login=login,
14 password='password',
15 server=nic.changeip.com,
16 ***.changeip.co
17
ddclient.pid
1 69494
root@vyos-20230521:/var/run/ddclient# show configuration commands | match changeip
set service dns dynamic interface eth1 service changeip host-name '*.changeip.co'
set service dns dynamic interface eth1 service changeip login 'login'
set service dns dynamic interface eth1 service changeip password 'password'
set service dns dynamic interface eth1 service changeip protocol 'dyndns2'
set service dns dynamic interface eth1 service changeip server 'nic.changeip.com'
Looks like the dyndns2 didnāt make a changeā¦
fwiw, nic.changeip.com is the default server if none is defined⦠Iāve tried with and without that as well⦠made no difference that I could seeā¦
Thank you in advance.
Thank you @bcook for helping with triaging!
The following should work with VyOS 1.4-rolling-202306070317
which ships with a patched ddclient
:
set service dns dynamic address eth7 service changeip host-name '****.changeip.co'
set service dns dynamic address eth7 service changeip protocol 'changeip'
set service dns dynamic address eth7 service changeip password 'passsw00rd'
set service dns dynamic address eth7 service changeip username 'username'
NB: Note that CLI has changed slightly in the latest rolling release.