在DNSPod解析的域名如何設置DDNS(動態域名解析)
本教程僅適用於解析託管在DNSPod平台上的域名,其他平台託管的域名請自行通過搜尋引擎查找教程。
本教程前兩個步驟通用,通過第三方插件或NAS&路由器自帶插件設置可參考前兩步獲取Token&添加記錄。
2022年2月15日:補充群暉設置教程
獲取DNSPod Token
1、打開並登錄控制台-API密鑰
注意這裏一定要選擇”DNSPod Token”而非”騰訊雲API密鑰”。
2、點擊創建密鑰,這裏可能會進行安全驗證,按照提示驗證即可。
3、設置密鑰名稱,這裏根據需要隨便填就好。
4、記錄密鑰ID及Token
注意:Token僅在創建時展示一次,忘記的話請重新創建
如果用於DDNS請不要設置IP白名單
添加解析記錄
1、打開並登錄解析控制台
2、找到對應的域名點擊管理,這裏以oed.im為例
3、設置解析記錄
點擊添加記錄填寫對應訊息後點擊保存完成添加。
主機記錄:若直接解析主域名,請填@,若解析子域名,請填對應的值例如www。
記錄值:隨便填一個IPv4,例如127.0.0.1(若使用IPv6,請隨便填一個IPv6地址,例如fe80::0)
記錄類型:默認為A即可(若使用IPv6請選擇AAAA記錄)
線路類型:無特殊需求默認即可
權重:默認不用填
TTL:無特殊需要默認即可
設置DDNS
通過騰訊雲DDNS插件設置(OpenWrt)
1、登錄OpenWrt,找到系統(System)→軟件包(Software),將下方軟件包的地址放入從網絡安裝的輸入框中,點擊確認(ok)完成安裝。 ipk安裝地址:https://openwrt-tencentddns-1301800460.cos.ap-guangzhou.myqcloud.com/luci-app-tencentddns_0.1.0-1_all.ipk
如果安裝過程中報錯255,請通過ssh登錄OpenWrt執行以下命令,執行前請先前往軟件包安裝wget(wget-ssl)
1 | wget --no-check-certificate https://openwrt-tencentddns-1301800460.cos.ap-guangzhou.myqcloud.com/luci-app-tencentddns_0.1.0-1_all.ipk |
安裝或執行完成後即可在後台看到插件
2、勾選啟用,填寫相關訊息,並選擇相應配置,最後點擊保存並應用
3、應用後等待一會刷新,當看到UPDATED(x.x.x.x)後說明配置成功
群暉(Synology)NAS設置DDNS
DSM7.0及以上建議通過騰訊雲API設置DDNS並自動部署免費證書,具體可參考:群暉設置DDNS並實現騰訊雲免費SSL證書的自動申請與部署
打開控制面板
登陸後打開控制面板,點擊外部訪問→DDNS
新增DDNS
按提示填寫相關訊息後點擊測試聯機,正常情況下狀態會顯示“正常”,然後點擊確定保存即可
服務供應商:DNSPod.cn(若國際站選擇DNSPod.com)
主機名稱:填寫你要設置DDNS的域名
用戶名/電子郵件:填寫密鑰ID,參照教程第一節獲取
密碼或密鑰:填寫Token,參照教程第一節獲取
愛快設置DDNS教程
1、登錄愛快後台,點擊高級應用→動態域名→添加
2、按照界面提示填寫相關訊息
通過定時任務設置DDNS
通過定時任務+curl訪問接口設置DDNS,受接口限制,暫不支持IPv6
獲取域名ID
登錄控制台,找到並點擊對應的域名,在管理頁面找到並點擊域名設置獲取域名ID
獲取記錄ID
1)、通過控制台獲取
在管理頁面找到操作日誌,“值”後面括號內數字極為記錄ID
2)、通過記錄列表接口獲取
ssh連接伺服器通過curl請求接口獲取
1 | curl -X POST https://dnsapi.cn/Record.List -d 'login_token=LOGIN_TOKEN&format=json&domain_id=域名ID&sub_domain=子域名&record_type=A' |
LOGIN_TOKEN:是由 ID,Token 組合而成的,用英文的逗號分割。
若設置IPv6記錄,請將record_type=A改為record_type=AAAA
(暫不支持IPv6,先寫着,畢竟馬上就支持了)
例如:
1 | curl -X POST https://dnsapi.cn/Record.List -d 'login_token=TokenID,Token&format=json&domain_id=86025807&sub_domain=test&record_type=A' |
2、在返回數據中找到記錄ID
測試DDNS接口相關參數是否正確
ssh連接伺服器通過curl請求接口測試
1 | curl -X POST https://dnsapi.cn/Record.Ddns -d 'login_token=LOGIN_TOKEN&format=json&domain_id=域名ID&record_id=記錄ID&record_line=線路類型&sub_domain=子域名&lang=en' |
線路類型若無特殊需求默認即可
例如:
1 | curl -X POST https://dnsapi.cn/Record.Ddns -d 'login_token=TokenID,Token&format=json&domain_id=86025807&record_id=953765245&record_line=默認&sub_domain=test&=en' |
LOGIN_TOKEN:是由 ID,Token 組合而成的,用英文的逗號分割。
當返回狀態碼為1時說明操作成功。
設置定時任務
這裏以centos為例,其他系統除安裝方式外配置方式大體相同,大家可自行通過搜尋引擎查找。
安裝crontabs服務並設置開機自啟
1 | yum install crontabs |
配置定時規則
1 | vim /etc/crontab |
1 | */5 * * * * root curl -X POST https://dnsapi.cn/Record.Ddns -d 'login_token=TokenID,Token&format=json&domain_id=86025807&record_id=953765245&record_line=默認&sub_domain=test&=en' |
腳本內容根據實際情況填寫,上面只是示例
規則很簡單,從注釋中可以看到左到右分別是 分鐘(059)、小時(023)、天(131)、月(112)、星期(0~6)、用戶名、要定時執行的命令或者腳本。
每多長時間記得在前面加一個’*/‘如上面的示例
注意:不要忘記中間的空格
保存生效
1 | crontab /etc/crontab |
查看任務
1 | crontab -l |
查看結果
不出意外的話應該已經更新成功了,大家可以前往控制台查看效果。