Docker部署ddns-go,動態(tài)域名解析公網(wǎng)IPv6地址
ddns-go,自動獲得你的公網(wǎng) IPv4 或 IPv6 地址,并解析到對應(yīng)的域名服務(wù)。
嫌IPv6地址太難記?ddns來解決,將家里的公網(wǎng)IPv6地址用起來吧!
前言
為什么需要DDNS
因?yàn)橐话慵彝セ蚱髽I(yè)用戶所獲得的的廣域網(wǎng)ip并非固定,而是會時常變化,一旦變化,我們的域名針對ip的A類解析記錄就會失效,因此我們需要DDNS(動態(tài)域名解析服務(wù)),在ip變動時自動更改我們的域名解析記錄值。
ddns-go項(xiàng)目地址:
GitHub地址:https://github.com/jeessy2/ddns-go
Gitee地址:https://gitee.com/OtherCopy/ddns-go
視頻地址
本期教程輔以視頻,鏈接:https://www.bilibili.com/video/BV1S24y1q79Z
前置準(zhǔn)備
公網(wǎng)IP
首先,需要保證家里有公網(wǎng)IP地址,現(xiàn)在大多數(shù)家里是有動態(tài)公網(wǎng)IPv6地址的。
我們可以在控制臺輸入一下命令查看一下當(dāng)前機(jī)子的IP
- Windows:
ipconfig
- Linux:
ip addr
找到對應(yīng)的網(wǎng)絡(luò)適配器查看IP,若是公網(wǎng)IPv6會有以下特征:
運(yùn)營商 | 特征 |
---|---|
電信 | 240e開頭 |
移動 | 2409開頭 |
聯(lián)通 | 2408開頭 |
接下來,讓我們訪問這個網(wǎng)站https://ipw.cn/ipv6ping/,這是一個測試IPv6地址能否被ping通的網(wǎng)站,如果你的IPv6已經(jīng)能被ping通,那說明這已經(jīng)能當(dāng)一個公網(wǎng)IP使用了,可跳過檢查防火墻這一步。
檢查防火墻
若沒有被ping通,也不用著急,這是因?yàn)榧依飶?fù)雜的網(wǎng)絡(luò)環(huán)境,各個節(jié)點(diǎn)可能存在的防火墻,致使該ip可能在外面并不能被ping通,此時細(xì)心檢查家里光貓、路由器、主機(jī)的防火墻設(shè)置,具體可以按光貓->路由器->主機(jī)的順序逐一ping其ip地址,若有一ping不通則是上一級防火墻沒關(guān)。
這里我舉個以我這里關(guān)閉防火墻的例子:
- 光貓:取消勾選
使能IPv6防火墻控制轉(zhuǎn)發(fā)報文
- 路由器:
關(guān)閉防火墻
- 主機(jī):
關(guān)閉防火墻
win:Windows安全中心->防火墻與安全保護(hù)->關(guān)閉公用網(wǎng)絡(luò)防火墻
linux:sudo ufw disable
安全性問題:有人會擔(dān)心防火墻全關(guān)了是不是不安全了?對于大部分人而言,由于公網(wǎng)IPv6地址每隔個兩三天就會變一次,所以不用太擔(dān)心被暴力攻擊,但如果對安全性十分敏感,可以自行控制開放部分內(nèi)網(wǎng)IP或者端口,但本文章內(nèi)容重點(diǎn)并不在于此,請自行研究,
環(huán)境配置
為了方便使用,采用docker compose
部署,所以需要先安裝docker
# 安裝docker
curl -fsSL get.docker.com -o get-docker.sh
sudo sh get-docker.sh --mirror Aliyun
tips:若沒有curl命令,執(zhí)行
sudo apt install curl
安裝curl,再執(zhí)行上面兩條命令即可。
安裝
可以選擇docker compose
或docker
二選一,我比較推薦docker compose
安裝,維護(hù)簡單,且不用打一長串的參數(shù)命令行。
docker compose安裝
選擇一個放置目錄,比如~/data/docker_data/
,新建一個文件夾放置ddns-go
mkdir ddns-go
cd ddns-go
在ddns-go文件夾中創(chuàng)建docker-compose.yml
文件,內(nèi)容如下:
version: "3.9"
services:
ddns-go:
image: jeessy/ddns-go
restart: always
network_mode: "host"
volumes:
- ./ddns-go_data:/root
ps:以下有關(guān)docker的命令最好都在root用戶下執(zhí)行,由于涉及一些文件操作,不提供root權(quán)限可能存在文件權(quán)限問題。
docker compose up -d
在瀏覽器中打開http://主機(jī)IP:9876
,修改你的配置,成功
Note
建議在啟用公網(wǎng)訪問時,使用 Nginx 等反向代理軟件啟用 HTTPS 訪問,以保證安全性。
docker安裝
掛載主機(jī)目錄, 使用docker host模式??砂?/opt/ddns-go
替換為你主機(jī)任意目錄, 配置文件為隱藏文件
docker run -d --name ddns-go --restart=always --net=host -v /opt/ddns-go:/root jeessy/ddns-go
在瀏覽器中打開http://主機(jī)IP:9876
,修改你的配置,成功
使用
配置
安裝完成后,我們可以訪問http://主機(jī)IP:9876
進(jìn)入ddns-go管理頁面。
這里我以騰訊DNSPod管理的域名為例,進(jìn)入騰訊DNSPod賬號中心
->API密鑰
->DNSPod Token
->創(chuàng)建密鑰
保存下來ID
和Token
,這將是ddns-go修改dns解析的憑證,回到ddns-go的管理面板,DNS服務(wù)商選擇Dnspod(騰訊云)
,輸入對應(yīng)的ID
和Token
根據(jù)自身需求配置ipv6,在Domains
中配置域名。
其他配置:根據(jù)自己的需要配置下禁止公網(wǎng)訪問和登錄用戶名密碼,防止被攻擊篡改。
點(diǎn)擊Save
保存。文章來源:http://www.zghlxwxcb.cn/news/detail-782019.html
成功后,應(yīng)該能在自己的DNS解析處看到該域名當(dāng)前的解析記錄,并再次訪問https://ipw.cn/ipv6ping/網(wǎng)站,ping一下這個域名,大功告成!文章來源地址http://www.zghlxwxcb.cn/news/detail-782019.html
更新
docker compose pull
docker compose up -d
卸載
docker compose down
停止
docker compose stop
重啟
docker compose restart
到了這里,關(guān)于Docker部署ddns-go,動態(tài)域名解析公網(wǎng)IPv6地址的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!