Damit ihr euren Raspberry Pi auch von unterwegs über das Internet erreichen könnt, braucht ihr eine feste Adresse. Das Problem: Die meisten Internetanschlüsse haben eine dynamische IP-Adresse, die sich regelmäßig ändert. Mit einem DynDNS-Dienst bekommt der Pi trotzdem immer dieselbe Adresse.
Wie DynDNS funktioniert
Ein DynDNS-Dienst stellt euch einen Hostnamen zur Verfügung, z.B. meinpi.duckdns.org. Ein kleines Programm auf dem Pi prüft regelmäßig die aktuelle öffentliche IP-Adresse und aktualisiert den DNS-Eintrag automatisch. So zeigt der Hostname immer auf euren Pi – egal wie oft die IP wechselt.
DynDNS-Anbieter im Vergleich
| Anbieter | Kosten | Subdomains | Empfehlung |
|---|---|---|---|
| DuckDNS | Kostenlos | 5 (*.duckdns.org) | ⭐⭐⭐⭐⭐ Empfohlen |
| No-IP | Kostenlos (mit Einschränkungen) | 3 | ⭐⭐⭐ |
| Cloudflare | Kostenlos (eigene Domain nötig) | Unbegrenzt | ⭐⭐⭐⭐⭐ (Profis) |
| DynDNS.com | Kostenpflichtig | – | ⭐⭐ |
Methode 1: DuckDNS einrichten (empfohlen)
DuckDNS ist kostenlos, erfordert keine Kreditkarte und ist sehr einfach einzurichten.
1. Account erstellen und Subdomain anlegen
- Öffnet duckdns.org und meldet euch mit Google, GitHub oder Reddit an
- Gebt einen Subdomain-Namen ein, z.B.
meinpi→ ihr bekommtmeinpi.duckdns.org - Klickt auf add domain
- Notiert euch euren Token (erscheint oben auf der Seite)
2. Update-Script auf dem Pi einrichten
|
1 2 |
mkdir -p ~/duckdns nano ~/duckdns/duck.sh |
Folgendes einfügen (Token und Subdomain anpassen):
|
1 |
echo url="https://www.duckdns.org/update?domains=EURE-SUBDOMAIN&token=EUER-TOKEN&ip=" | curl -k -o ~/duckdns/duck.log -K - |
Script ausführbar machen und testen:
|
1 2 3 |
chmod 700 ~/duckdns/duck.sh ~/duckdns/duck.sh cat ~/duckdns/duck.log |
Wenn OK erscheint, funktioniert die Verbindung.
3. Automatisches Update per Cron einrichten
|
1 |
crontab -e |
Folgende Zeile hinzufügen (Aktualisierung alle 5 Minuten):
|
1 |
*/5 * * * * ~/duckdns/duck.sh >/dev/null 2>&1 |
Methode 2: ddclient (universell)
Wer verschiedene Anbieter unterstützen möchte oder No-IP nutzt, kann ddclient verwenden:
|
1 2 |
sudo apt update sudo apt install ddclient -y |
Die Konfigurationsdatei liegt unter /etc/ddclient.conf. Beispiel für DuckDNS:
|
1 2 3 4 5 6 7 |
daemon=300 ssl=yes use=web, web=checkip.dyndns.com protocol=duckdns login=nouser password=EUER-TOKEN EURE-SUBDOMAIN |
Dienst starten und aktivieren:
|
1 2 3 |
sudo systemctl enable ddclient sudo systemctl start ddclient sudo systemctl status ddclient |
Testen
Nach der Einrichtung könnt ihr testen, ob der Hostname korrekt aufgelöst wird:
|
1 |
nslookup meinpi.duckdns.org |
Die zurückgegebene IP-Adresse sollte eurer aktuellen öffentlichen IP entsprechen (prüfen via ifconfig.me).
Weiter in Teil 6
Im nächsten Teil richten wir Port Forwarding im Router ein, damit eingehende Verbindungen auf den Raspberry Pi weitergeleitet werden.
