DDNS Updater 2, DDNS und Script

RalfPeter

Benutzer
Mitglied seit
02. Apr 2014
Beiträge
384
Punkte für Reaktionen
40
Punkte
34
Hallo,
zunächst mal ist die IPv4 Adresse keine, die du per DynDNS nutzen kannst. Sie ist mehreren Kunden zugewiesen. Wie es genau funktioniert, weiß sicher ein Netzwerktechniker. Für dich: mit der IPv4 von Glasfaser kannst du nicht viel anfangen.

Bei einem Reconnect der Fritte wird dir manchmal eine neue IPv6 vergeben. Das hatte ich bisher 2 mal in 2 Jahren. Ob es dann eine neue IPv4 gibt, habe ich nicht beobachtet, da es mir uninteressant erschien.

Bei Strato musst du nur die IPv6 updaten. Die IPv4 für DynDNS setze ich erst gar nicht, da es sonst zu Problemen kommt, wenn du versuchst aus dem Internet auf dein NAS zuzugreifen.

Die Ports gebe ich gezielt je Gerät für die jeweilige IPv6 frei. Zusätzlich habe ich die Firewall in der Synology aktiv, mit der ich dann genau nur die freigegebenen Ports in der Fritte auch zur Nutzung zulasse. IPv6 heißt ja nicht (nach meinem Verständnis), dass es keine Ports mehr gibt. Wenn du im Browser eine IPv6 mit Port benutzen möchtest, musst du folgende Notation benutzen: http://[1fff:0:a88:85a3::ac1f]:8001/index.html

Mittlerweile benutze ich einen Docker Container: ddns_updater. Schau mal hier: https://registry.hub.docker.com/r/qmcgaw/ddns-updater/ Das sieht erstmal verwirrend aus, ist aber recht einfach einzurichten. Die Anwendung im Docker Container überprüft die (externe) IP deiner NAS auf Änderung und gibt diese Änderung dann an deinen Domain Provider weiter. Dazu bekommst du auch eine Web-Anwendung am PC, mit der du die Änderungen überprüfen kannst.

Insgesamt fand ich es zu Anfang meines Glasfaser Anschlusses verwirrend, Mittlerweile habe ich es (zwar nur in Teilen aber immerhin) soweit verstanden, dass ich mir helfen kann. Positivster Nebeneffekt: die Angriffe auf mein NAS durch fremde IPs (China, Russland, Brasilien, ...) sind seither auf NULL zurückgegangen. Da IPv6 erst seit 1998 gibt, wundert man sich, dass es noch so selten benutzt wird.

Was du beachten musst: dein Provider für dein Handy muss auch IPv6 anbieten, sonst kommst du nicht mit den DS Apps auf dein NAS. Auch bei Roaming (insbesondere AT) musst du darauf achten, dass der Provider dir eine öffentliche IPv6 zuweist.

@ALL: wer noch Tipps hat, gerne her damit. Ich bin immer auf der Suche nach neuem Wissen für mich, zum Thema IPv6.

VG
 

plang.pl

Benutzer
Contributor
Sehr erfahren
Mitglied seit
28. Okt 2020
Beiträge
15.028
Punkte für Reaktionen
5.402
Punkte
564
Wie es genau funktioniert
Im Grunde genommen hat der Provider vereinfacht gesagt einen Router vor deinem Router. Dein Router geht also über die IPv4 des Provider Router nach extern. Dein Router hat hierbei eine private IP-Adresse (im Netzwerk des Provider). Wenn du nun versuchst, von extern auf die IPv4 loszugehen, endet der Weg entweder am Router des Providers (weil der ja kein Portforwarding auf deinen Router eingerichtet hat) oder er findet das Ziel nicht (falls du die IP deines Routers nimmst).
 
  • Like
Reaktionen: RalfPeter

Clamsy

Benutzer
Mitglied seit
31. Mrz 2022
Beiträge
69
Punkte für Reaktionen
6
Punkte
8
@RalfPeter
Mittlerweile benutze ich einen Docker Container: ddns_updater. Schau mal hier: https:// registry. hub. docker. com/r/qmcgaw/ddns-updater/ Das sieht erstmal verwirrend aus, ist aber recht einfach einzurichten. Die Anwendung im Docker Container überprüft die (externe) IP deiner NAS auf Änderung und gibt diese Änderung dann an deinen Domain Provider weiter. Dazu bekommst du auch eine Web-Anwendung am PC, mit der du die Änderungen überprüfen kannst.
Ich habe das jetzt auch mal aktiviert, aber irgendwie muss ich noch was übersehen. Laufen tut das ganze, aber er bekommt keine IPv6 die er speichern könnte.

2024/03/20 20:28:23,stdout,"2024-03-20T20:28:23+01:00 [91mERROR[0m IPv6 is not supported on this system: after 3 tries, errors were: dial tcp6 [1620:119:35::35]:853: connect: cannot assign requested address, Get \"https://ipv6.seeip.org\": dial tcp [1602:fed3:2:b75e:ecd:7ec4:6bcb:c6d3]:443: connect: cannot assign requested address, dial tcp6 [1606:4700:4700::1111]:853: connect: cannot assign requested address

Hast Du einen Tipp was ich evtl. falsch mache? Was übersehe ich?
 

Clamsy

Benutzer
Mitglied seit
31. Mrz 2022
Beiträge
69
Punkte für Reaktionen
6
Punkte
8
PS - by the Way. Weiß jemand wann ich mal Links posten kann? Ich habe den Error gepostet (darin ist eine URL, dort musste ich den Link entfernen) - Das Zitat aus RalfPeters beitrag hatte auch eine URL drin, da konnte ich die URL nicht einfach entfernen, hier musste ich nicht nur die URL entfernen und die URL zerstückeln das es keine URL mehr ist.
Ist schon echt schade das man nach 45 Beiträgen und Mitglied seit 2 Jahren immer noch keine Links posten kann. :-(
 

RalfPeter

Benutzer
Mitglied seit
02. Apr 2014
Beiträge
384
Punkte für Reaktionen
40
Punkte
34
Auf der DSM: Systemsteuerung->Netzwerk->Netzwerkschnittstelle. Was steht da? Ist IPv6 aktiviert?

Zwischenablage_03-21-2024_01.jpg

Zwischenablage_03-21-2024_02.jpg
 
Zuletzt bearbeitet:

Clamsy

Benutzer
Mitglied seit
31. Mrz 2022
Beiträge
69
Punkte für Reaktionen
6
Punkte
8
Hi,
ja IPv6 ist aktiviert und die Werte sind alle da. Daher wundert es mich.

Erst habe ich mir einen Portainer Stack mit dem DDNS gebaut, da bin ich genauso weit gekommen wie jetzt. Danach habe ich das direkt über den Docker Containerdienst auf der NAS gemacht, gleiche Ergebnis.

Kann es mit meinen Ports zusammenhängen? Port 8000 ist belegt bei mir, daher habe ich bei den Ports gebastelt, kann das der Grund sein?

Ich hänge mal meine Settings rein.

Bildschirmfoto 2024-03-21 um 19.44.32.pngBildschirmfoto 2024-03-21 um 19.45.04.png
Bildschirmfoto 2024-03-21 um 19.45.24.png
meine config.json sieht so aus:


JSON:
{
    "settings": [
      {
        "provider": "strato",
        "domain": "meineurl.eu",
        "host": "meinesubdomain",
        "password": "meinPasswort",
        "ip_version": "ipv6",
        "ipv6_suffix": "",
        "provider_ip": true
      }
    ]
  }

vielleicht kannst du das mal mit deinen Settings vergleichen.
 

RalfPeter

Benutzer
Mitglied seit
02. Apr 2014
Beiträge
384
Punkte für Reaktionen
40
Punkte
34
Ich sende dir mal meine config Datei:

Code:
{
  "settings": [
    {
      "provider": "strato",
      "domain": "xxxxxxxxxxx.eu",
      "host": "@",
      "password": "xxxxxssssswwwwweeeee",
      "ip_version": "ipv6",
      "provider_ip": true
    },
    {
      "provider": "strato",
      "domain": "fotos.xxxxxxxxxxx.eu",
      "host": "@",
      "password": "xxxxxssssswwwwweeeee",
      "ip_version": "ipv6",
      "provider_ip": true
    }
  ]
}

1711092668007.png

Den Port zu ändern, sollte kein Problem sein. Du musst aber auch in den Einstellungen den Port angeben (?)
 

Clamsy

Benutzer
Mitglied seit
31. Mrz 2022
Beiträge
69
Punkte für Reaktionen
6
Punkte
8
Oh mann,
ich hab den Fehler....

Es lag gar nicht an meinen Settings die ich gepostet hatte.

Ich habe als Netzwerk "bridge" aktiviert gehabt und nicht "host" in der Bridge hat er ja eine virtuelle IP ohne IPv6, daher muss ich ja das Host-Netzwerk verwenden um die IPv6 zu erhalten.

Jetzt läuft das Ding.
 
  • Like
Reaktionen: RalfPeter

Clamsy

Benutzer
Mitglied seit
31. Mrz 2022
Beiträge
69
Punkte für Reaktionen
6
Punkte
8
Übrigens geht das auch wunderbar als Portainer Stack ;-)

Ordner anlegen.
In diesem Beispiel auf Volume 1 - in der Freigabe Docker den Ordner ddns-updater anlegen.
Innerhalb von ddns-updater den Ordner data anlegen.
In den Ordner data das config.json hochladen mit den zu updatenden Hosts.

Folgenden Portainer Stack ausführen.

version: "3.7" services: ddns-updater: image: qmcgaw/ddns-updater container_name: ddns-updater network_mode: host # für die externe IP Adresse ports: - 8100:8100/tcp volumes: - /volume1/docker/ddns-updater/data:/updater/data # Hier den entsprechenden Ordner angeben anstelle "/volume1/docker/ddns-updater/data" environment: - CONFIG= - PERIOD=10m - UPDATE_COOLDOWN_PERIOD=10m - PUBLICIP_FETCHERS=all - PUBLICIP_HTTP_PROVIDERS=all - PUBLICIPV4_HTTP_PROVIDERS=all - PUBLICIPV6_HTTP_PROVIDERS=all - PUBLICIP_DNS_PROVIDERS=all - PUBLICIP_DNS_TIMEOUT=3s - HTTP_TIMEOUT=10s - TZ=Europe/Berlin # Web UI - LISTENING_ADDRESS=:8100 - ROOT_URL=/ # Backup - BACKUP_PERIOD=240h # 0 to disable - BACKUP_DIRECTORY=/updater/data # Other - LOG_LEVEL=info - LOG_CALLER=hidden restart: always
 

gpunktak

Benutzer
Mitglied seit
19. Jun 2019
Beiträge
6
Punkte für Reaktionen
1
Punkte
3
Hallo,
vielen Dank für das Script. Nachdem ich lange gesucht habe, wie ich die IPv6 von meinem NAS an Selfhost weitergeben kann, habe ich das hier gefunden. Echt super! Ich habe das Script an die Selfhost Update URL angepasst und es funktioniert einwandfrei.
 
  • Like
Reaktionen: RalfPeter


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat