Python實現(xiàn)修改阿里云DNS域名解析
當公網(wǎng)IP
是浮動的時候,用一個域名去實時解析,才不會那么糟糕,本文將介紹使用python
修改阿里云dns
域名解析。
安裝依賴
pip3 install requests pip3 install aliyun-python-sdk-core-v3 pip3 install aliyun-python-sdk-alidns==2.0.6
部署
git clone https://github.com/wangli2025/aliyunDnsUpdateRecord.git cd aliyunDnsUpdateRecord chmod +x main.py sudo ln -s $(pwd)/main.py /usr/local/bin/aliyunDnsUpdateRecord
部署完成后,可以使用aliyunDnsUpdateRecord --help
查看幫助
$ aliyunDnsUpdateRecord --help usage: aliyunDnsUpdateRecord [-h] [-c CONFIGPATH] [-d DOMAINNAME] [-r RR] [-t TYPE] [-v VALUE] ? 阿里云修改域名解析命令行工具 ? options: -h, --help show this help message and exit -c CONFIGPATH, --configPath CONFIGPATH 配置文件 -d DOMAINNAME, --DomainName DOMAINNAME 域名 -r RR, --RR RR 主機 -t TYPE, --Type TYPE 解析類型 -v VALUE, --Value VALUE 解析值 $
使用
配置秘鑰
使用配置文件
cat .alidns.json { "AliDNS_AccessKey_ID": "阿里云ID", "AliDNS_Access_Key_Secret": "阿里云key", "AliDNS_region_id": "區(qū)域" }
使用環(huán)境變量
export AliDNS_AccessKey_ID=阿里云ID export AliDNS_Access_Key_Secret=阿里云key export AliDNS_region_id=區(qū)域
秘鑰讀取順序為:配置文件 --> 環(huán)境變量。若讀取到配置文件的內(nèi)容了,則不會再獲取環(huán)境變量配置。
腳本執(zhí)行
配置秘鑰后,使用如下命令即可更新解析。
$ aliyunDnsUpdateRecord -d example.com -r www -t A -v 127.0.0.10
如果使用的是配置文件方式,且文件路徑不是執(zhí)行命令所在的./.alidns.json
,則需要單獨使用-c
單獨指定。
$ cat c.json { "AliDNS_AccessKey_ID": "阿里云ID", "AliDNS_Access_Key_Secret": "阿里云key", "AliDNS_region_id": "區(qū)域" } $ $ aliyunDnsUpdateRecord -c c.json -d example.com -r www -t A -v 127.0.0.10
如果正確修改,會輸入如下內(nèi)容:
解析修改成功 example.com www 127.0.0.10
如果想將域名解析修改為本機所在的公網(wǎng)地址,則不用添加-v
即可。
$ aliyunDnsUpdateRecord -d example.com -r www -t A
如上默認會獲取本機所在的公網(wǎng)地址,并且修改example.com
的www
主機上的A
記錄值。
報錯信息
秘鑰配置出錯
ERROR:root:獲取[域名]域名解析失敗: HTTP Status: 404 Error:InvalidAccessKeyId.NotFound Specified access key is not found.
請檢查秘鑰配置是否正確。
找不到域名
ERROR:root:獲取[域名]域名解析失敗: HTTP Status: 400 Error:InvalidDomainName.NoExist The specified domain name does not exist. Refresh the page and try again.
請檢查域名配置是否正確。
RAM權(quán)限配置出錯
ERROR:root:獲取[域名]域名解析失敗: HTTP Status: 403 Error:Forbidden.RAM User not authorized to operate on the specified resource, or this API doesn't support RAM.
請檢查RAM權(quán)限配置是否正確,如果沒有配置更加細化的自定義策略,則應(yīng)該添加 AliyunDNSFullAccess 系統(tǒng)策略。
解析記錄為找到
未找到該域名解析記錄,請檢查是否被添加,[域名信息]
未找到解析記錄,請檢查是否已經(jīng)被添加了。
以上就是Python實現(xiàn)修改阿里云DNS域名解析的詳細內(nèi)容,更多關(guān)于Python修改阿里云DNS域名解析的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
python在openstreetmap地圖上繪制路線圖的實現(xiàn)
這篇文章主要介紹了python在openstreetmap地圖上繪制路線圖的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07簡單的Python動態(tài)可視化神器,編程小白也能上手
這篇文章就來介紹簡單的Python動態(tài)可視化神器,最近發(fā)現(xiàn)了一個寶藏動態(tài)可視化庫,非常簡單,即使是小白也能輕松上手。這個庫就是motionchart,它能夠用 pandas 的 dataframe 數(shù)據(jù)直接創(chuàng)建交互式的動態(tài)圖表,下面來簡單看一下如何使用。2021-10-10Python簡單實現(xiàn)兩個任意字符串乘積的方法示例
這篇文章主要介紹了Python簡單實現(xiàn)兩個任意字符串乘積的方法,結(jié)合實例形式分析了Python針對字符串、列表的切片、轉(zhuǎn)換、遍歷等相關(guān)操作技巧,需要的朋友可以參考下2018-04-04微軟開源最強Python自動化神器Playwright(不用寫一行代碼)
這篇文章主要介紹了微軟開源最強Python自動化神器Playwright(不用寫一行代碼),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01