Docker stellt ddns-go bereit, eine dynamische IPv6-Adresse für die Auflösung von Domänennamen im öffentlichen Netzwerk
ddns-go ruft automatisch die IPv4- oder IPv6-Adresse Ihres öffentlichen Netzwerks ab und löst sie in den entsprechenden Domänennamendienst auf.
Denken Sie, dass IPv6-Adressen zu schwer zu merken sind? Um ddns zu lösen, verwenden Sie die IPv6-Adresse des öffentlichen Netzwerks zu Hause!
Vorwort
Warum brauchen Sie DDNS?
Da die von normalen Heim- oder Geschäftsbenutzern erhaltene WAN-IP nicht festgelegt ist, sondern sich von Zeit zu Zeit ändern kann, wird der Klasse-A-Auflösungseintrag unseres Domainnamens für die IP ungültig, sodass wir DDNS (Dynamic Domain Name Resolution Service) benötigen. , in Den Wert unseres Domänennamenauflösungsdatensatzes automatisch ändern, wenn sich die IP ändert.
ddns-go-Projektadresse:
GitHub-Adresse: https://github.com/jeessy2/ddns-go
Gitee-Adresse: https://gitee.com/OtherCopy/ddns-go
Videoadresse
Dieses Tutorial wird durch ein Video ergänzt, Link: https://www.bilibili.com/video/BV1S24y1q79Z
Vorbereitung
Öffentliche IP
Zunächst muss sichergestellt werden, dass das Haus über eine IP-Adresse im öffentlichen Netzwerk verfügt. Mittlerweile verfügen die meisten Häuser über dynamische IPv6-Adressen im öffentlichen Netzwerk.
Wir können den Befehl in der Konsole eingeben, um die IP der aktuellen Maschine zu überprüfen
- Windows:
ipconfig
- Linux:
ip addr
Suchen Sie den entsprechenden Netzwerkadapter und überprüfen Sie die IP. Wenn es sich um ein öffentliches Netzwerk IPv6 handelt, weist es die folgenden Eigenschaften auf:
Operator | Besonderheit |
---|---|
Telekommunikation | 240e Anfang |
Umzug | Beginnend mit 2409 |
China Unicom | Beginnend mit 2408 |
Als nächstes besuchen wir diese Websitehttps ://ipw.cn/ipv6ping/Dies ist eine Website zum Testen, ob die IPv6-Adresse gepingt werden kann. Wenn Ihre IPv6-Adresse gepingt werden kann, bedeutet dies, dass sie als If verwendet werden kann Wenn eine öffentliche Netzwerk-IP verwendet wird, kann der Schritt der Überprüfung der Firewall übersprungen werden.
Überprüfen Sie die Firewall
Wenn Sie nicht gepingt werden, machen Sie sich keine Sorgen. Dies liegt an der komplexen Netzwerkumgebung zu Hause und den Firewalls, die möglicherweise in jedem Knoten vorhanden sind, sodass die IP möglicherweise nicht von außen gepingt wird. Überprüfen Sie zu diesem Zeitpunkt sorgfältig die optische Verbindung Modem, Router und Host zu Hause. Für Firewall-Einstellungen können Sie deren IP-Adressen einzeln in der Reihenfolge optisches Modem->Router->Host anpingen. Wenn ein Ping fehlschlägt, bedeutet dies, dass die obere Ebene Firewall ist nicht geschlossen.
Hier gebe ich ein Beispiel für das Ausschalten der Firewall:
- Lichtkatze: Deaktivieren
使能IPv6防火墙控制转发报文
- Router:
关闭防火墙
- Host:
关闭防火墙
win: Windows-Sicherheitscenter -> Firewall und Sicherheitsschutz -> Schließen Sie die Firewall des öffentlichen Netzwerks.
Linux:sudo ufw disable
Sicherheitsprobleme: Manche Leute fragen sich, ob es unsicher ist, die Firewall auszuschalten? Da sich die IPv6-Adresse des öffentlichen Netzwerks alle zwei bis drei Tage ändert, besteht für die meisten Menschen kein Grund zur Sorge, gewaltsam angegriffen zu werden. Wenn Sie jedoch sehr sicherheitsbewusst sind, können Sie ein internes Netzwerk steuern und öffnen IPs oder Ports selbst. Der Inhalt dieses Artikels steht jedoch nicht im Mittelpunkt. Bitte recherchieren Sie selbst.
Umgebungskonfiguration
Aus Gründen der Benutzerfreundlichkeit docker compose
wird die Bereitstellung übernommen, sodass Docker zuerst installiert werden muss
# 安装docker
curl -fsSL get.docker.com -o get-docker.sh
sudo sh get-docker.sh --mirror Aliyun
Tipps: Wenn kein Curl-Befehl vorhanden ist, führen Sie
sudo apt install curl
Curl aus, installieren Sie es und führen Sie dann die beiden oben genannten Befehle aus.
Installieren
Sie können eine der beiden Optionen auswählen docker compose
oder auswählen. Ich empfehle die Installation, die einfache Wartung und die Notwendigkeit, eine lange Liste von Parameterbefehlszeilen einzugeben.docker
docker compose
Docker Compose installieren
Wählen Sie ein Platzierungsverzeichnis aus, zum Beispiel ~/data/docker_data/
, und erstellen Sie einen neuen Ordner, um ddns-go zu platzieren
mkdir ddns-go
cd ddns-go
Erstellen Sie im Ordner ddns-go eine Datei docker-compose.yml
mit folgendem Inhalt:
version: "3.9"
services:
ddns-go:
image: jeessy/ddns-go
restart: always
network_mode: "host"
volumes:
- ./ddns-go_data:/root
ps: Führen Sie die folgenden Docker-bezogenen Befehle am besten unter dem Root-Benutzer aus. Da einige Dateivorgänge beteiligt sind, kann es zu Dateiberechtigungsproblemen kommen, wenn keine Root-Berechtigungen bereitgestellt werden.
docker compose up -d
Im Browser öffnen http://主机IP:9876
, Konfiguration ändern, Erfolg
Hinweis
Es wird empfohlen, Reverse-Proxy-Software wie Nginx zu verwenden, um den HTTPS-Zugriff zu ermöglichen, wenn Sie den öffentlichen Netzwerkzugriff aktivieren, um die Sicherheit zu gewährleisten.
Docker-Installation
Mounten Sie das Hostverzeichnis und verwenden Sie den Docker-Hostmodus. Sie können /opt/ddns-go
es durch ein beliebiges Verzeichnis Ihres Hosts ersetzen, und die Konfigurationsdatei ist eine versteckte Datei
docker run -d --name ddns-go --restart=always --net=host -v /opt/ddns-go:/root jeessy/ddns-go
Im Browser öffnen http://主机IP:9876
, Konfiguration ändern, Erfolg
verwenden
Aufbau
Nachdem die Installation abgeschlossen ist, können wir auf http://主机IP:9876
die ddns-go-Verwaltungsseite zugreifen.
Hier nehme ich als Beispiel den von Tencent DNSPod verwalteten Domänennamen und gebe 腾讯DNSPod账号中心
-> API密钥
-> DNSPod Token
-> ein创建密钥
Speichern Sie ID
und Token
, dies wird das Zertifikat für dns-go sein, um die DNS-Auflösung zu ändern, gehen Sie zurück zum Verwaltungsbereich von ddns-go, wählen Sie den DNS-Dienstanbieter aus, geben Sie Dnspod(腾讯云)
das entsprechende ID
und einToken
Konfigurieren Sie IPv6 entsprechend Ihren Anforderungen und Domains
konfigurieren Sie den Domänennamen in .
Andere Konfigurationen: Konfigurieren Sie nach Ihren eigenen Bedürfnissen, um den Zugriff auf öffentliche Netzwerke zu verhindern und sich mit Benutzername und Passwort anzumelden, um Manipulationen durch Angriffe zu verhindern.
Klicken Sie auf Save
Speichern.
Nach dem Erfolg sollten Sie den aktuellen Auflösungseintrag des Domänennamens in Ihrer eigenen DNS-Auflösung sehen können, die Website https://ipw.cn/ipv6ping/ erneut besuchen, diesen Domänennamen anpingen und fertig!
erneuern
docker compose pull
docker compose up -d
deinstallieren
docker compose down
stoppen
docker compose stop
neu starten
docker compose restart