基于 DNSPod 开发文档写了个 DDNS 脚本

继上次写过一篇 Cloudflare DDNS 脚本的文章 之后,我便一直有写一个 DNSPod DDNS 脚本的想法。虽然 DNSPod 提供了一个 DDNS 的 API 接口,但是并不是很好用,比如由于其 API 不是双栈的导致无法进行 IPv6 的 DDNS,这就很让人不爽(

于是,这个脚本应运而生,用以解决 DNSPod 在 IPv6 环境下无法 DDNS 的问题

按照惯例,先来推广一下我这个项目的仓库地址,虽然不知道会不会有大佬来提 PR

  • GitHub:https://github.com/Leao9203/dnspod-api-ddns

  • Gitee:https://gitee.com/Leao9203/dnspod-api-ddns

用法

请提前装好必备的环境,例如 BASH cURL

下载

通过 GitHub 下载

通过 Gitee 下载(国内体验较好)

通过 jsDelivr 下载

参数

顺带一提,脚本在初次运行时会自动在当前用户的目录下的 .config/dnspod-ddns 生成一个保存 IP 的文件,来判断 IP 是否更新。如果目录不存在会自动创建。

设置 crontab 自动更新

频率为每分钟检查一次 IP 是否更新,如果觉得太频繁可以把 1 改为其他数值(小于 60 的整数)

其他用法

除了通过附加参数来使用,也可以直接修改脚本内的一些变量来使用,脚本内已经加了注解,修改第 4 行至第 22 行的变量内容即可。

创建 DNSPod 的 Token 教程

在看了上面的用法之后,可能有部分人士仍对用法有一些疑惑,这里进行一次演示

打开 DNSPod 的 Token 管理页面

https://console.dnspod.cn/account/token/token

点击 创建密钥,并进行相应的身份验证

然后给新创建的密钥取一个响当当的名字

将新创建的 ID 和 Token 值保存下来,并勾选 温馨提示 的内容

之后,按照上面的用法使用即可

天哪,我的老伙计,我都说的这么详细了,我敢打赌,你一定会用的,我向圣母玛利亚保证。如果你还是不会,我保证,我一定用皮靴狠狠地踢你的屁股

LICENSE相关

为了爱与和平,为了便于本脚本的传播及造福群众,脚本的版权 LICENSE 设置为了非常宽松的 MIT 许可证,希望能给各位有需要的小伙伴做出一些绵薄的贡献吧

后记

说起来,我要写一个 DNSPod 的 DDNS 脚本的 Flag 都已经立下了快一年了,现在才写出来,真的笑嘻辽

咕王的实力.jpg

下一步的计划应该是给阿里云的 DNS 写一个 DDNS 的 Shell 脚本,前提是如果没别的大佬写过的话(

参考

  • https://segmentfault.com/a/1190000020994793

  • https://cloud.tencent.com/developer/article/1459279

  • https://www.jianshu.com/p/59418b7423e0

  • https://blog.csdn.net/sdujava2011/article/details/83827343

  • https://www.shellcheck.net/wiki/SC2220

  • Ghost-in-the-shell busters: your guide to using ShellCheck for top quality scripts

  • https://www.zhihu.com/question/52397798/answer/2011618645

  • https://docs.dnspod.cn

  • https://www.cnblogs.com/sunyubo/archive/2011/10/17/2282047.html

  • https://blog.csdn.net/ARPOSPF/article/details/103381621

  • https://developer.aliyun.com/article/334493

  • https://blog.happyhack.io/2020/07/16/upgrade-bash-on-macOS

  • https://www.ruanyifeng.com/blog/2019/09/curl-reference.html

  • https://blog.csdn.net/weixin_31643625/article/details/116630442

  • https://cloud.tencent.com/developer/article/1071300

  • https://www.runoob.com/linux/linux-comm-grep.html

  • https://www.runoob.com/linux/linux-shell-variable.html

  • https://www.runoob.com/linux/linux-comm-sed.html

  • https://www.runoob.com/linux/linux-comm-cat.html

本文首发于我的博客:https://blog.ascn.site/post/20220912222454/

资源下载:

 

发布日期: