3、使用DDNS-GO配置DDNS,通過(guò)cloudflare api修改指定域名對(duì)應(yīng)的動(dòng)態(tài)ip
時(shí)間:2023-02-19 23:36:01 | 來(lái)源:建站知識(shí)
時(shí)間:2023-02-19 23:36:01 來(lái)源:建站知識(shí)
3、使用DDNS-GO配置DDNS,通過(guò)cloudflare api修改指定域名對(duì)應(yīng)的動(dòng)態(tài)ip:
一、背景
- 前邊文章我們通過(guò)手動(dòng)添加A記錄將@記錄解析到自己主機(jī)的公網(wǎng)ip,并且設(shè)置了邊緣節(jié)點(diǎn)的回源端口為2000,來(lái)避開(kāi)敏感端口。但是遺留了一個(gè)問(wèn)題:一但家里的路由器重新?lián)芴?hào),公網(wǎng)ip會(huì)發(fā)生變化,需要自己登錄到cloudflare手動(dòng)去修改解析的地址為新的公網(wǎng)ip,太不高效。
- 所以本節(jié)試圖在主機(jī)內(nèi)部署DDNS-GO docker容器,來(lái)實(shí)時(shí)監(jiān)控ip是否發(fā)生變化,倘若變化,則通過(guò)cloudflare api自動(dòng)修改指定域名解析的地址為新ip。
二、操作
2.1、安裝docker
- deepin社區(qū)提供了安裝docker的方法,這里就不贅述了,基本上跟docker官網(wǎng)的方式一致。
- docker部署好了之后,則可以使用docker命令部署容器,這里使用ddns-go鏡像及使用介紹。
docker run -d --name ddns-go --restart=always --net=host -v /home/改成自己的路徑/ddns-go:/root jeessy/ddns-go
- 因?yàn)榫W(wǎng)絡(luò)是host模式,所以容器會(huì)占用宿主機(jī)的9876端口,容器跑起來(lái)后,則可以通過(guò)瀏覽器訪問(wèn)管理頁(yè)面(http:局域網(wǎng)ip:9876)做配置了。
docker服務(wù)2.2、ddns-go dns服務(wù)商配置
- 選擇,CloudFlare,然后點(diǎn)擊藍(lán)色的“創(chuàng)建令牌->編輯區(qū)域DNS(使用模板)”跳轉(zhuǎn)到cloudflare token配置頁(yè)面。
選擇cloudflare創(chuàng)建dns令牌選擇自己的域名- 最終會(huì)得到一個(gè)token,然后將token填寫(xiě)到管理頁(yè)面的Token輸入框內(nèi)。
2.3、ipv4配置
- 選擇啟用,然后在Domains填寫(xiě)自己想更新ip的域名,也可以填多個(gè)。
ipv42.4、ipv6配置
- 這里根據(jù)自己家網(wǎng)絡(luò)能獲取到ipv6,以及是否要開(kāi)放ipv6訪問(wèn)來(lái)決定。
ipv6配置2.5、安全配置
- 這里最好禁用公網(wǎng)訪問(wèn),只讓通過(guò)局域網(wǎng)或者當(dāng)前主機(jī)進(jìn)行訪問(wèn),來(lái)提高安全性
- 用戶名+密碼也配上,增加安全性
安全配置2.6、Webhook
- 可以用來(lái)增加一些額外的自定義事件,比如釘釘、飛書(shū)的通知
webhook2.7、保存
- 保存后,ddns就會(huì)發(fā)起一次cloudflare接口請(qǐng)求,比較ip是否發(fā)生變化,頁(yè)面右側(cè)會(huì)有比較日志。
保存后,請(qǐng)求日常檢測(cè)- 至此,ddns的配置就完成了。
- 為了測(cè)試,此時(shí)可以把主機(jī)關(guān)機(jī),然后再開(kāi)機(jī),讓其進(jìn)行一次自動(dòng)撥號(hào)獲取最新的公網(wǎng)ip,然后自動(dòng)更新域名解析。因?yàn)閐ocker服務(wù)是開(kāi)機(jī)啟動(dòng)的,并且容器也配置了--restart=always參數(shù),會(huì)隨docker啟動(dòng)后自動(dòng)啟動(dòng),所以ddns-go檢測(cè)到ip變化會(huì)及時(shí)更新。
2.8、cloudflare ddns翻車(chē)了【捂臉】
- 從cloudflare接口返回的錯(cuò)誤來(lái)看:cloudflare不再支持.cf .ga .ml .tk 頂級(jí)域名(都是freenom提供的免費(fèi)域名),通過(guò)調(diào)用api的方式進(jìn)行配置了。只能登錄cloudflare 控制面板手動(dòng)配置。
cloudflare api報(bào)錯(cuò)- 所以,如果使用上述頂級(jí)域名,則無(wú)法使用cloudflare的ddns服務(wù)。
三、最后
- 雖然我們通過(guò)ddns-go工具完成了ddns的配置,但是cloudflare對(duì)免費(fèi)域名不再支持api更新,導(dǎo)致ddns無(wú)法使用,所以,下一步則嘗試修復(fù)這一問(wèn)題,目前感覺(jué)可行的方案有:1、花點(diǎn)小錢(qián)買(mǎi)個(gè)域名;2、換一家dns廠商,但是換了之后可能cloudflare的免費(fèi)cdn就得放棄了。
關(guān)鍵詞:對(duì)應(yīng),動(dòng)態(tài),指定,修改,配置,通過(guò),使用