Zum Inhalt

Konfiguration für Synology (NAS)

Wichtig

Damit du DynDNS benutzen kannst MUSS erst ein DNS-API-Benutzer anhand der Anleitung (Benutzer im Kundenportal erstellen) erstellt sein!

Für alle Domain-Kunden bieten wir einen DynDNS-Dienst an, welcher über die Servercow DNS-API mit den Servercow-Nameservern kommuniziert.

Im Folgenden lernst du, wie du dein Synology NAS mit der DynDNS-Schnittstelle von Servercow verbinden kannst, um den DynDNS-Dienst zu nutzen und so direkten Zugriff per FQDN auf dein NAS zu erhalten.

Über Externen Zugriff (UI) - Nur IPv4!

Geänderte API-Syntax

Bitte beachte die Änderung der DynDNS URL Syntax für diese Konfigurationsart zu der unten gezeigten, neben deinen neuen DNS-API-Zugangsdaten.

Achtung

Obwohl diese Möglichkeit die bequemste Methode für Synology NAS darstellt, ist diese nur für IPv4 ausgelegt. IPv6 ist nur in der manuellen Variante über CLI möglich! Siehe dazu: Über Bash Skript (CLI) – Dual-Stack-fähig (IPv4 & IPv6)

  1. Öffne dein Synology NAS im Browser und melde dich mit einem Admin-Benutzer an.

    Hinweis

    Kennst du die IP deines NAS nicht, nutze am besten den Synology Assistant, um dein NAS im Netzwerk zu finden.

  2. Öffne die Einstellungen für externen Zugriff auf deinem NAS:

    Systemsteuerung > Konnektivität > Externer Zugriff > DDNS
    

  3. Klicke dort auf Anbieter anpassen.

  4. Trag in die Felder Serviceanbieter & Query URL folgende Informationen ein:

    • Serviceanbieter: Servercow
    • Query URL:
      https://__USERNAME__:__PASSWORD__@api.servercow.de/nic/update?hostname=__HOSTNAME__&myip=__MYIP__
      

    Synology NAS DynDNS Anbieter Optionen

    Vorsicht

    Bitte fülle die Platzhalter zwischen den Unterstrichen (__) nicht aus! Dein NAS erkennt die Platzhalter automatisch und füllt sie aus.

  5. Füge einen neuen DynDNS Login hinzu, indem du auf DDNS > Hinzufügen klickst. Trag dort bitte die Informationen wie folgt ein:

    • Serviceanbieter: Servercow
    • Hostname: Deine Subdomain/Domain, welche per DynDNS aktualisiert werden soll (bspw. dyndns.deinedomain.de)
    • Benutzername/E-Mail: dein DNS-API-Benutzer
    • Kennwort/Schlüssel: dein DNS-API-Benutzer-Passwort
    • Externe Adresse (IPv4): Die öffentliche IPv4-Adresse deines Anschlusses. (Meist automatisch erkannt)

    Synology NAS DynDNS Hinzufügen Menü. Formular mit Beispieldaten ausgefüllt

    Erfolg

    Hast du alles korrekt eingestellt, sollte sich der Status bei Verbindung testen auf "Normal" setzen und grün leuchten.

    Synology NAS DynDNS Hinzufügen Menü. Verbindung testen erfolgreich. Status: Normal


Über Bash Skript (CLI) - Dual Stack (IPv4 & IPv6)-fähig

Hinweis

Diese Anleitung geht davon aus, dass dein NAS per SSH erreichbar ist. Sollte dies nicht der Fall sein, aktiviere den SSH-Zugriff auf dein NAS bitte anhand dieser Anleitung!

  1. Melde dich per SSH auf deinem NAS als Admin-Benutzer an.

    Hinweis

    Kennst du die IP deines NAS nicht, nutze am besten den Synology Assistant, um dein NAS in deinem Netzwerk zu finden.

  2. Wechsle zum Root-User, indem du sudo -i eingibst und authentifiziere dich mit dem Passwort des aktuellen Benutzers.

  3. Erstelle ein neues Bash-Skript in einem deiner erstellten Volumes, bspw. /volume1/daten, mit dem Namen ddns.sh und dem Inhalt:

    /volume1/daten/ddns.sh
    #!/bin/bash
    if [ -f /tmp/old_ip4 ]; then
    IP4_OLD=$(</tmp/old_ip4)
    else
        IP4_OLD=none
    fi
    
    IP4_NEW=$(curl -s ip4.mailcow.email)
    if [[ "${IP4_NEW}" != "${IP4_OLD}" ]]; then
        curl -s -X POST 'https://api.servercow.de/dns/v1/domains/DEINE_DOMAIN.tld' \
        -H 'X-Auth-Username: DEIN_API_BENUTZER' \
        -H 'X-Auth-Password: DEIN_API_PASSWORT' \
        -H 'Content-Type: application/json' \
        --data "{\"type\":\"A\",\"name\":\"subdomain\",\"content\":\"${IP4_NEW}\",\"ttl\":60}" -o /dev/null
    fi
    echo ${IP4_NEW} > /tmp/old_ip4
    
    if [ -f /tmp/old_ip6 ]; then
    IP6_OLD=$(</tmp/old_ip6)
    else
        IP6_OLD=none
    fi
    
    IP6_NEW=$(curl -s ip6.mailcow.email)
    if [[ "${IP6_NEW}" != "${IP6_OLD}" ]]; then
        curl -s -X POST 'https://api.servercow.de/dns/v1/domains/DEINE_DOMAIN.tld' \
        -H 'X-Auth-Username: DEIN_API_BENUTZER' \
        -H 'X-Auth-Password: DEIN_API_PASSWORT' \
        -H 'Content-Type: application/json' \
        --data "{\"type\":\"AAAA\",\"name\":\"subdomain\",\"content\":\"${IP6_NEW}\",\"ttl\":60}" -o /dev/null
    fi
    echo ${IP6_NEW} > /tmp/old_ip6
    
    /volume1/daten/ddns.sh
    #!/bin/bash
    if [ -f /tmp/old_ip ]; then
    IP_OLD=$(</tmp/old_ip)
    else
        IP_OLD=none
    fi
    
    IP_NEW=$(curl -s ip4.mailcow.email)
    if [[ "${IP_NEW}" != "${IP_OLD}" ]]; then
        curl -s -X POST 'https://api.servercow.de/dns/v1/domains/DEINE_DOMAIN.tld' \
        -H 'X-Auth-Username: DEIN_API_BENUTZER' \
        -H 'X-Auth-Password: DEIN_API_PASSWORT' \
        -H 'Content-Type: application/json' \
        --data "{\"type\":\"A\",\"name\":\"subdomain\",\"content\":\"${IP_NEW}\",\"ttl\":60}" -o /dev/null
    fi
    echo ${IP_NEW} > /tmp/old_ip
    
    /volume1/daten/ddns.sh
    #!/bin/bash
    if [ -f /tmp/old_ip ]; then
    IP_OLD=$(</tmp/old_ip)
    else
        IP_OLD=none
    fi
    
    IP_NEW=$(curl -s ip6.mailcow.email)
    if [[ "${IP_NEW}" != "${IP_OLD}" ]]; then
        curl -s -X POST 'https://api.servercow.de/dns/v1/domains/DEINE_DOMAIN.tld' \
        -H 'X-Auth-Username: DEIN_API_BENUTZER' \
        -H 'X-Auth-Password: DEIN_API_PASSWORT' \
        -H 'Content-Type: application/json' \
        --data "{\"type\":\"AAAA\",\"name\":\"subdomain\",\"content\":\"${IP_NEW}\",\"ttl\":60}" -o /dev/null
    fi
    echo ${IP_NEW} > /tmp/old_ip
    
    F: Warum erstellen wir die Datei nicht einfach im /root Verzeichnis oder wo anders?

    A: Bei einem Update des DSM kann es dazu kommen, dass alle Dateien, welche nicht explizit auf einem erstellten Speicherpool liegen, gelöscht werden. Bspw. nach einem Major Update.

  4. Mach die Datei ddns.sh ausführbar:

    chmod +x /volume1/daten/ddns.sh
    

  5. Öffne dein NAS im Webbrowser und logge dich mit einem Admin-Benutzer ein.

  6. Öffne den Punkt Aufgabenplaner in den Einstellungen:

    Systemsteuerung > Aufgabenplaner
    

  7. Erstelle dort eine Geplante Aufgabe > Benutzerdefiniertes Skript: Synology NAS Aufgabenplaner Tab Ausführen als Synology NAS Aufgabenplaner Tab Zeitplan Synology NAS Aufgabenplaner Tab Aufgabeneinstellungen

Erfolg

Wenn alles korrekt eingestellt ist, läuft der DDNS-Update-Job alle 10 Minuten. Bei Bedarf kannst du die Zeit bis zur nächsten Ausführung jederzeit verringern/erhöhen.