301 from update.dedyn.io?

any suggestions? thanks.

I’m using a raspberry pi on Raspbian GNU/Linux 11 (bullseye)

My ddclient config:

Configuration file for ddclient generated by debconf

/etc/ddclient.conf

protocol=dyndns2
use=web, web=dyndns
server=update.dedyn.io
login=1497.dedyne.io
password=‘XXXXX’
1497.dedyn.io

output of sudo ddclient -verbose -foreground -force :

CONNECT: checkip.dyndns.org
CONNECTED: using HTTP
SENDING: GET / HTTP/1.0
SENDING: Host: checkip.dyndns.org
SENDING: User-Agent: ddclient/3.9.1
SENDING: Connection: close
SENDING:
SENDING:
RECEIVE: HTTP/1.1 200 OK
RECEIVE: Date: Wed, 12 Jul 2023 12:34:47 GMT
RECEIVE: Content-Type: text/html
RECEIVE: Content-Length: 104
RECEIVE: Connection: close
RECEIVE: Cache-Control: no-cache
RECEIVE: Pragma: no-cache
RECEIVE:
RECEIVE: Current IP CheckCurrent IP Address: 76.126.73.11
INFO: forcing update of 1497.dedyn.io.
INFO: setting IP address to 76.126.73.11 for 1497.dedyn.io
UPDATE: updating 1497.dedyn.io
CONNECT: update.dedyn.io
CONNECTED: using HTTP
SENDING: GET /nic/update?system=dyndns&hostname=1497.dedyn.io&myip=76.126.73.11 HTTP/1.0
SENDING: Host: update.dedyn.io
SENDING: Authorization: Basic [REDACTED]
SENDING: User-Agent: ddclient/3.9.1
SENDING: Connection: close
SENDING:
SENDING:
RECEIVE: HTTP/1.1 301 Moved Permanently
RECEIVE: Server: nginx
RECEIVE: Date: Wed, 12 Jul 2023 12:34:47 GMT
RECEIVE: Content-Type: text/html
RECEIVE: Content-Length: 162
RECEIVE: Connection: close
RECEIVE: Location: https://update.dedyn.io/nic/update?system=dyndns&hostname=1497.dedyn.io&myip=76.126.73.11
RECEIVE:
RECEIVE:
RECEIVE: 301 Moved Permanently
RECEIVE:
RECEIVE:

301 Moved Permanently


RECEIVE:
nginx
RECEIVE:
RECEIVE:

Hi zanderz,

Thanks for your message, and welcome to deSEC! :slight_smile:

What you are observing is that our server redirects all http:// requests to https://. To avoid this (and to benefit from HTTPS security), you should be making update requests directly via HTTPS.

This can be achieved by adding ssl=yes to the configuration (see Configuring your dynDNS Client — deSEC DNS API documentation).

Stay secure,
Peter

ah yes, I did see that recommendation in the documentation, but it was described as an extra security measure, not a critical step without which it won’t work.

It does use ssl if I add that but then I get 401 unauthorized:

INFO: forcing update of 1497.dedyn.io.
INFO: setting IP address to 76.126.73.11 for 1497.dedyn.io
UPDATE: updating 1497.dedyn.io
CONNECT: update.dedyn.io
CONNECTED: using SSL
SENDING: GET /nic/update?system=dyndns&hostname=1497.dedyn.io&myip=76.126.73.11 HTTP/1.0
SENDING: Host: update.dedyn.io
SENDING: Authorization: Basic XXXXXXXXXXXXXXXXXXXXXX==
SENDING: User-Agent: ddclient/3.9.1
SENDING: Connection: close
SENDING:
SENDING:
RECEIVE: HTTP/1.1 401 Unauthorized
RECEIVE: Server: nginx
RECEIVE: Date: Wed, 12 Jul 2023 18:01:21 GMT
RECEIVE: Content-Type: text/plain
RECEIVE: Content-Length: 7
RECEIVE: Connection: close
RECEIVE: WWW-Authenticate: Token
RECEIVE: Allow: GET, HEAD, OPTIONS
RECEIVE: Vary: origin
RECEIVE: Strict-Transport-Security: max-age=31536000
RECEIVE:
RECEIVE: badauth

I tried deleting the old token and making a new one but got the same result. Interestingly, it did seem to work when I did:

curl -v -u 1497.dedyn.io:XXXXXXXXXX https://update.dedyn.io/nic/update?system=dyndns&hostname=1497.dedyn.io&myip=76.126.73.11

So it seems there is still something wrong with my ddclient config? any other ideas there?
Thanks for the prompt reply.

protocol=dyndns2
use=web, web=dyndns
server=update.dedyn.io
login=1497.dedyne.io
password=‘XXXXX’
1497.dedyn.io

That dedyne.io typo is only here or actually in your config?

I havent used ddclient in quite a while but i still have my config and for deSEC it looks like this:

protocol=dyndns2,
server=update.dedyn.io,
login=example.dedyn.io,
password=XXX
example.dedyn.io

that would explain it, ha ha, sorry about that, thanks again. Seems to work now.

it dosen’t work for me,