Python实现修改阿里云DNS域名解析

 更新时间:2024年11月11日 08:35:23   作者:王李的博客  
当公网IP是浮动的时候,用一个域名去实时解析,才不会那么糟糕,本文将介绍如何使用python修改阿里云dns域名解析,感兴趣的小伙伴可以了解一下

当公网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": "区域"
}

使用环境变量

export AliDNS_AccessKey_ID=阿里云ID
export AliDNS_Access_Key_Secret=阿里云key
export AliDNS_region_id=区域

秘钥读取顺序为:配置文件 --> 环境变量。若读取到配置文件的内容了,则不会再获取环境变量配置。

脚本执行

配置秘钥后,使用如下命令即可更新解析。

$ aliyunDnsUpdateRecord -d example.com -r www -t A -v 127.0.0.10

如果使用的是配置文件方式,且文件路径不是执行命令所在的./.alidns.json,则需要单独使用-c 单独指定。

$ cat c.json 
{
    "AliDNS_AccessKey_ID": "阿里云ID",
    "AliDNS_Access_Key_Secret": "阿里云key",
    "AliDNS_region_id": "区域"
}
$ 
$ aliyunDnsUpdateRecord -c c.json -d example.com -r www -t A -v 127.0.0.10

如果正确修改,会输入如下内容:

解析修改成功 example.com www 127.0.0.10

如果想将域名解析修改为本机所在的公网地址,则不用添加-v 即可。

$ aliyunDnsUpdateRecord -d example.com -r www -t A

如上默认会获取本机所在的公网地址,并且修改example.comwww主机上的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权限配置出错

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权限配置是否正确,如果没有配置更加细化的自定义策略,则应该添加 AliyunDNSFullAccess 系统策略。

解析记录为找到

未找到该域名解析记录,请检查是否被添加,[域名信息]

未找到解析记录,请检查是否已经被添加了。

以上就是Python实现修改阿里云DNS域名解析的详细内容,更多关于Python修改阿里云DNS域名解析的资料请关注脚本之家其它相关文章!

相关文章

  • Pycharm 如何连接远程服务器并debug调试

    Pycharm 如何连接远程服务器并debug调试

    本文主要介绍了Pycharm 如何连接远程服务器并debug调试,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • Python实现我的世界小游戏源代码

    Python实现我的世界小游戏源代码

    这篇文章主要介绍了Python实现我的世界小游戏源代码,代码简单易懂,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • PYTHON EVAL的用法及注意事项解析

    PYTHON EVAL的用法及注意事项解析

    这篇文章主要介绍了PYTHON EVAL的用法及注意事项解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • 基于python pygame实现的兔子吃月饼小游戏

    基于python pygame实现的兔子吃月饼小游戏

    pygame是用来开发游戏的一套基于SDL的模板,它可以是python创建完全界面化的游戏和多媒体程序,而且它基本上可以在任何系统上运行,这篇文章主要给大家介绍了基于python pygame实现的兔子吃月饼小游戏的相关资料,需要的朋友可以参考下
    2021-09-09
  • Python使用PyMongo4.x操作MongoDB的教程分享

    Python使用PyMongo4.x操作MongoDB的教程分享

    PyMongo是一个Python编程语言中用于连接和操作MongoDB数据库的库,它提供了丰富的功能和API,使开发者能够在Python中轻松地进行MongoDB的数据交互和管理,本文给大家总结了Python如何使用PyMongo4.x操作MongoDB,需要的朋友可以参考下
    2023-09-09
  • pycharm为项目选择的python解释器无效问题及解决

    pycharm为项目选择的python解释器无效问题及解决

    解决PyCharm中项目选择的Python解释器无效的问题,只需在运行编辑配置中将Python解释器路径设置为项目所在目录下的venv\Scripts\python.exe即可
    2026-03-03
  • Python自定义函数实现求两个数最大公约数、最小公倍数示例

    Python自定义函数实现求两个数最大公约数、最小公倍数示例

    这篇文章主要介绍了Python自定义函数实现求两个数最大公约数、最小公倍数,结合实例形式分析了Python求解两个数最大公约数与最小公倍数相关原理与算法实现技巧,需要的朋友可以参考下
    2018-05-05
  • Windows下安装Scrapy

    Windows下安装Scrapy

    今天小编就为大家分享一篇关于Windows下安装Scrapy,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-10-10
  • Python集成开发环境pycharm配置git的实现步骤

    Python集成开发环境pycharm配置git的实现步骤

    本文主要介绍了Python集成开发环境pycharm配置git的实现步骤,文中通过图文的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-05-05
  • python实现搜索本地文件信息写入文件的方法

    python实现搜索本地文件信息写入文件的方法

    这篇文章主要介绍了python实现搜索本地文件信息写入文件的方法,涉及Python针对文件的遍历及属性操作相关技巧,需要的朋友可以参考下
    2016-02-02

最新评论