Dnspod域名设置(python脚本实现ddns)

家用宽带申请到公网ip后,ip地址是动态的,为了使用方便,需申请一个域名并设置ddns,这样就可以使用固定的域名来访问自己的服务器,不需要使用难记且经常变化的ip地址。

一、域名申请

有一些免费三级域名申请的地方,但是方便起见,我在腾讯云购买了一个 数字.xyz的域名,一年8块,也便宜。

使用免费的域名解析功能可以设置

  • 子域名级数5 级

  • 负载均衡2 条

  • url转发2条

  • 子域名数量不限

个人对域名没太大需求,目前只设置3级A类域名,免费解析足够用,ddns功能就需要自己编写脚本来实现了。

二、脚本编写

使用python编写,通过dnspod api获取个人域名内的dns解析记录,与外网地址比较,如果不同就更新dns记录,每隔5-10分钟运行一次脚本。

2.1 获取外网地址

访问https://myip.ipip.net就能得到自己的ip地址。

2.2 获得域名解析信息

使用dnspod api, 说明见腾讯云文档:https://docs.dnspod.cn/api/call-requency/

2.2.1 获取token

访问https://console.dnspod.cn/account/token/token,创建一个秘钥,

完成后程序中可以使用ID,TOKEN来访问api。

2.2.2 函数功能

实现了获取域名,添加域名,删除域名,获取记录,添加记录,删除记录,修改记录功能,都通过requests 的post方法访问对应网址即可。

  1. 获取记录函数需要参数为 域名

  1. 删除记录需要参数为 记录id和域名, 记录id通过获取记录函数获得。

  1. 修改记录需要参数为 域名,子域名,记录id,要修改的值, 记录类型, 线路类型。

  1. 添加记录如果仅能添加2个相同的子域名,原因是负载均衡的限制。

具体代码如下:

"""
访问和修改dnspod域名的类
get_domain无需参数,输出login_token对应的用户拥有的域名。
域名下包含记录,使用getrecord(domain_list)获取,每条记录对应一个子域名,也是最常用的。
对仅拥有一个域名一个公网ip的用户来说,日常使用
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值