hosting.de #371

Open
opened 2025-11-20 04:23:16 -05:00 by saavagebueno · 9 comments
Owner

Originally created by @halgorvan on GitHub (Feb 13, 2024).

curl -v -I -X GET "https://<user>:<password>@ddns.hosting.de/nic/update?hostname=<domain>&myip=1.2.3.4"

Support page: https://www.hosting.de/helpdesk/produkte/dns/dynamic-dns/
Unfortunately it's only in German.

Originally created by @halgorvan on GitHub (Feb 13, 2024). ``` curl -v -I -X GET "https://<user>:<password>@ddns.hosting.de/nic/update?hostname=<domain>&myip=1.2.3.4" ``` Support page: https://www.hosting.de/helpdesk/produkte/dns/dynamic-dns/ Unfortunately it's only in German.
saavagebueno added the Category: New provider 🆕 label 2025-11-20 04:23:16 -05:00
Author
Owner

@qdm12 commented on GitHub (Feb 19, 2024):

  1. Does it support wildcard updating?
  2. Does it support Ipv6? With the same myip paramater?

Note for the time being, you can use the custom provider with your url (see the docs/custom.md page)

@qdm12 commented on GitHub (Feb 19, 2024): 1. Does it support wildcard updating? 2. Does it support Ipv6? With the same `myip` paramater? Note for the time being, you can use the custom provider with your url (see the docs/custom.md page)
Author
Owner

@halgorvan commented on GitHub (Feb 20, 2024):

  1. Pretty sure. I update only my domain, but no subdomains. And all subdomains get redirected to my public IP. And for my DNS server (at hosting.de) I configured this record: *.simmy.org CNAME Wildcard DNS record simmy.org
  2. I asked the support there. I have no idea. What I can tell you right now, that the myip parameter is optional. Without the parameter, hosting.de will take the IP address from the host that is sending the request.
  3. Thanks for the hint, I was always looking for "custom". However, I'm using truecharts (on TrueNAS) and somehow they didn't implement this.
@halgorvan commented on GitHub (Feb 20, 2024): 1. Pretty sure. I update only my domain, but no subdomains. And all subdomains get redirected to my public IP. And for my DNS server (at hosting.de) I configured this record: *.simmy.org CNAME Wildcard DNS record simmy.org 2. I asked the support there. I have no idea. What I can tell you right now, that the myip parameter is optional. Without the parameter, hosting.de will take the IP address from the host that is sending the request. 3. Thanks for the hint, I was always looking for "custom". However, I'm using truecharts (on TrueNAS) and somehow they didn't implement this.
Author
Owner

@halgorvan commented on GitHub (Feb 22, 2024):

I received the answer from my provider. hosting.de supports IPv6.
And for the parameter they were writing: it is ip6addr instead of ipaddr. I am not sure if they were referencing to the DynDNS service or the DNS service.

@halgorvan commented on GitHub (Feb 22, 2024): I received the answer from my provider. hosting.de supports IPv6. And for the parameter they were writing: it is ip6addr instead of ipaddr. I am not sure if they were referencing to the DynDNS service or the DNS service.
Author
Owner

@qdm12 commented on GitHub (Feb 25, 2024):

However, I'm using truecharts (on TrueNAS) and somehow they didn't implement this.

Ask them to bump it to version 2.6 🤔 Or just version 2 and it should get newer versions automatically

Pretty sure. I update only my domain, but no subdomains.

Can you try curling with the *.domain.com to see if updates the wildcard A record correctly? Thanks!

@qdm12 commented on GitHub (Feb 25, 2024): > However, I'm using truecharts (on TrueNAS) and somehow they didn't implement this. Ask them to bump it to version 2.6 🤔 Or just version 2 and it should get newer versions automatically > Pretty sure. I update only my domain, but no subdomains. Can you try curling with the `*.domain.com` to see if updates the wildcard A record correctly? Thanks!
Author
Owner

@halgorvan commented on GitHub (Feb 26, 2024):

I don't know what you mean with curling *.domain.com. Maybe I am on the wrong track, but I have several subdomains, like vault.simmy.org or hwiki.simmy.org, but I only update simmy.org and all subdomains point automatically to my public IP. That should qualify for wildcard updating. I haven'T created any subdomains on the DNS server.

@halgorvan commented on GitHub (Feb 26, 2024): I don't know what you mean with curling *.domain.com. Maybe I am on the wrong track, but I have several subdomains, like vault.simmy.org or hwiki.simmy.org, but I only update simmy.org and all subdomains point automatically to my public IP. That should qualify for wildcard updating. I haven'T created any subdomains on the DNS server.
Author
Owner

@qdm12 commented on GitHub (Feb 29, 2024):

Can you create a wildcard subdomain, and then try:

curl -v -I -X GET "https://<user>:<password>@ddns.hosting.de/nic/update?hostname=*.yourdomain.com&myip=1.2.3.4"

To see if it works? Or is this not an option on their site 🤔

Slightly related, I just added a guide to add a new provider if you want to give it a try eventually: https://github.com/qdm12/ddns-updater/blob/master/.github/CONTRIBUTING.md#add-a-new-dns-provider

@qdm12 commented on GitHub (Feb 29, 2024): Can you create a wildcard subdomain, and then try: ```sh curl -v -I -X GET "https://<user>:<password>@ddns.hosting.de/nic/update?hostname=*.yourdomain.com&myip=1.2.3.4" ``` To see if it works? Or is this not an option on their site 🤔 Slightly related, I just added a guide to add a new provider if you want to give it a try eventually: https://github.com/qdm12/ddns-updater/blob/master/.github/CONTRIBUTING.md#add-a-new-dns-provider
Author
Owner

@halgorvan commented on GitHub (Feb 29, 2024):

I have a wildcard domain. And this is the command I use at the moment:
curl -v -I -X GET "https://not-so-secret-username:super-secret-password@ddns.hosting.de/nic/update?hostname=simmy.org"
I omit the parameter myip, because I send this command from my public IP address. It's working.
However, I will try your docker-compose.yml on my portainer in the evening. This is maybe a better option than using truecharts on TrueNAS.

@halgorvan commented on GitHub (Feb 29, 2024): I have a wildcard domain. And this is the command I use at the moment: curl -v -I -X GET "https://not-so-secret-username:super-secret-password@ddns.hosting.de/nic/update?hostname=simmy.org" I omit the parameter myip, because I send this command from my public IP address. It's working. However, I will try your docker-compose.yml on my portainer in the evening. This is maybe a better option than using truecharts on TrueNAS.
Author
Owner

@qdm12 commented on GitHub (Mar 1, 2024):

I have a wildcard domain.

Well it's a CNAME which acts the same, but could you add an A (or AAAA) wildcard record? For example *.test owner, A type, and simmy.org domain, then request with *.test.simmy.org to update it to check it works? Sorry to be paranoid on edge cases, but I've seen this not working for some dns registrars, despite them supporting wildcards via their web ui etc.

@qdm12 commented on GitHub (Mar 1, 2024): > I have a wildcard domain. Well it's a CNAME which acts the same, but could you add an A (or AAAA) wildcard record? For example `*.test` owner, A type, and simmy.org domain, then request with `*.test.simmy.org` to update it to check it works? Sorry to be paranoid on edge cases, but I've seen this not working for some dns registrars, despite them supporting wildcards via their web ui etc.
Author
Owner

@halgorvan commented on GitHub (Mar 1, 2024):

Bildschirmfoto 2024-03-01 um 10 24 37
I tried it. I can't do it with AAAA, hence I don't have an IPv6 address. But an A record is ok.
It seems to work. This is what I get after trying to update:

  • Trying 134.0.26.158:443...
  • Connected to ddns.hosting.de (134.0.26.158) port 443 (#0)
  • ALPN: offers h2,http/1.1
  • TLSv1.3 (OUT), TLS handshake, Client hello (1):
  • CAfile: /etc/ssl/certs/ca-certificates.crt
  • CApath: /etc/ssl/certs
  • TLSv1.3 (IN), TLS handshake, Server hello (2):
  • TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
  • TLSv1.3 (IN), TLS handshake, Certificate (11):
  • TLSv1.3 (IN), TLS handshake, CERT verify (15):
  • TLSv1.3 (IN), TLS handshake, Finished (20):
  • TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
  • TLSv1.3 (OUT), TLS handshake, Finished (20):
  • SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
  • ALPN: server did not agree on a protocol. Uses default.
  • Server certificate:
  • subject: CN=ddns.hosting.de
  • start date: Jan 23 20:35:22 2024 GMT
  • expire date: Apr 22 20:35:21 2024 GMT
  • subjectAltName: host "ddns.hosting.de" matched cert's "ddns.hosting.de"
  • issuer: C=US; O=Let's Encrypt; CN=R3
  • SSL certificate verify ok.
  • using HTTP/1.x
  • Server auth using Basic with user 'ddnsneo'

GET /nic/update?hostname=test.simmy.org HTTP/1.1
Host: ddns.hosting.de
Authorization: Basic don't tell
User-Agent: curl/7.88.1
Accept: /

  • TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
  • TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
  • old SSL session ID is stale, removing
    < HTTP/1.1 200 OK
    HTTP/1.1 200 OK
    < server: nginx
    server: nginx
    < date: Fri, 01 Mar 2024 09:39:51 GMT
    date: Fri, 01 Mar 2024 09:39:51 GMT
    < transfer-encoding: chunked
    transfer-encoding: chunked
    < strict-transport-security: max-age=15768000
    strict-transport-security: max-age=15768000
    < x-content-type-options: nosniff
    x-content-type-options: nosniff

<

  • Excess found: excess = 17 url = /nic/update (zero-length body)
  • Connection #0 to host ddns.hosting.de left intact

I tested a little bit more. Despite the fact that I don't get an error message when I try to update, it doesn't update the record. A ping showed the truth. (my IP address is 85.195.229.42):
ping robert.test.simmy.org
PING robert.test.simmy.org (85.195.229.41) 56(84) bytes of data.
64 bytes from 85-195-229-41.fiber7.init7.net (85.195.229.41): icmp_seq=1 ttl=62 time=0.414 ms

I guess your paranoia is at the right place.

@halgorvan commented on GitHub (Mar 1, 2024): ![Bildschirmfoto 2024-03-01 um 10 24 37](https://github.com/qdm12/ddns-updater/assets/159942687/8f8d7f5d-c71f-422d-946c-ffa95069a465) I tried it. I can't do it with AAAA, hence I don't have an IPv6 address. But an A record is ok. It seems to work. This is what I get after trying to update: * Trying 134.0.26.158:443... * Connected to ddns.hosting.de (134.0.26.158) port 443 (#0) * ALPN: offers h2,http/1.1 * TLSv1.3 (OUT), TLS handshake, Client hello (1): * CAfile: /etc/ssl/certs/ca-certificates.crt * CApath: /etc/ssl/certs * TLSv1.3 (IN), TLS handshake, Server hello (2): * TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8): * TLSv1.3 (IN), TLS handshake, Certificate (11): * TLSv1.3 (IN), TLS handshake, CERT verify (15): * TLSv1.3 (IN), TLS handshake, Finished (20): * TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1): * TLSv1.3 (OUT), TLS handshake, Finished (20): * SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384 * ALPN: server did not agree on a protocol. Uses default. * Server certificate: * subject: CN=ddns.hosting.de * start date: Jan 23 20:35:22 2024 GMT * expire date: Apr 22 20:35:21 2024 GMT * subjectAltName: host "ddns.hosting.de" matched cert's "ddns.hosting.de" * issuer: C=US; O=Let's Encrypt; CN=R3 * SSL certificate verify ok. * using HTTP/1.x * Server auth using Basic with user 'ddnsneo' > GET /nic/update?hostname=test.simmy.org HTTP/1.1 > Host: ddns.hosting.de > Authorization: Basic don't tell > User-Agent: curl/7.88.1 > Accept: */* > * TLSv1.3 (IN), TLS handshake, Newsession Ticket (4): * TLSv1.3 (IN), TLS handshake, Newsession Ticket (4): * old SSL session ID is stale, removing < HTTP/1.1 200 OK HTTP/1.1 200 OK < server: nginx server: nginx < date: Fri, 01 Mar 2024 09:39:51 GMT date: Fri, 01 Mar 2024 09:39:51 GMT < transfer-encoding: chunked transfer-encoding: chunked < strict-transport-security: max-age=15768000 strict-transport-security: max-age=15768000 < x-content-type-options: nosniff x-content-type-options: nosniff < * Excess found: excess = 17 url = /nic/update (zero-length body) * Connection #0 to host ddns.hosting.de left intact I tested a little bit more. Despite the fact that I don't get an error message when I try to update, it doesn't update the record. A ping showed the truth. (my IP address is 85.195.229.**42**): ping robert.test.simmy.org PING robert.test.simmy.org (85.195.229.**41**) 56(84) bytes of data. 64 bytes from 85-195-229-41.fiber7.init7.net (85.195.229.**41**): icmp_seq=1 ttl=62 time=0.414 ms I guess your paranoia is at the right place.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/ddns-updater#371