背景
之前,为了远程访问群晖应用,且为了不使用弱智的ip访问模式,在阿里云上买了域名,将自己的公网ip绑定到该域名上。但是呢,由于我使用了路由器拨号,且设置了每周一凌晨重启路由器,保证路由器的性能。因此,每次当路由器重启拨号时,电信都会重新为路由器分配一个新的公网ip,这就导致不得不在阿里云上更新域名绑定的ip。之前因为缺乏基本的网络知识,在网上看了一些博客,使用了博客上提供的脚本来自动更新阿里云上的ip。但是,在使用过程中可能由于脚本的编写问题(没有仔细看脚本,脚本使用php编写),只能更新www前缀的记录值,无法更新@前缀记录值,导致体验十分不好(意思是不够完美哈哈哈)。
今天早晨!我的群晖又无故断开公网了!我十分生气!现在我更强了,也更快了,更是务实的行动派!我决定自己写个定制的脚本来解决这个问题。
解决方案
当着手去研究该问题时,发现事情比我想象的要简单很多。阿里云在产品使用文档中提供了相应的api接口,在文档中详细地说明了使用方法,并且提供了多种语言的SDK,甚至还提供了示例。因此,我简单阅读了一下文档,很快就有了解决思路。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sZo0ihZS-1666584077179)(https://cdn.jsdelivr.net/gh/ColorlessCube/images@main/16350440598761635044059869.png)]
获取 access key
由于域名是在你的阿里云账户中购买的,为了获取更改你的账号信息的权限,首先需要获取access_key_id以及access_key。登录阿里云,点击右上角的头像,如图所示,点击AccessKey管理,跟着指示获取很简单就可以获取。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uRNMQsXT-1666584077183)(https://cdn.jsdelivr.net/gh/ColorlessCube/images@main/16350443766121635044376605.png)]
脚本
ok,假设你已经获取了access_key_id以及access_key,下面就可以根据阿里云的api文档完成脚本的编写工作了。
import json
from aliyunsdkcore.client import AcsClient
from aliyunsdkalidns.request.v20150109.DescribeDomainRecordsRequest import Describ

本文介绍了如何解决因路由器重启导致公网IP变化,从而需要手动更新阿里云域名绑定的问题。作者通过编写自定义Python脚本,并在群晖NAS上设置定时任务,实现了自动更新阿里云DNS记录,简化了操作流程。文章详细阐述了获取Access Key、编写脚本以及在群晖上设置任务的步骤。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



