当你手里面有一个闲置的域名,有一个漂浮不定的外网 ip,你又想在外网 ip 变更后自动解析到域名上,此情此景此脚本可能会帮上你。
chmod +x aliyun-ddns-shell/src/aliyun/aliyun-ddns.sh
> aliyun-ddns.sh (mac: > bash aliyun-ddns.sh)
1.配置并执行脚本
2.仅配置
3.仅执行脚本
4.恢复出厂设置
5.清理日志文件
0.退出
- 带参数运行:
aliyun-ddns.sh -config -run 配置并执行脚
aliyun-ddns.sh -run 执行脚本(前提需要有配置文件)
aliyun-ddns.sh -config 仅配置信息
aliyun-ddns.sh -restore 恢复出厂设置(会清除配置文件等)
aliyun-ddns.sh -clearn 清理日志文件
aliyun-ddns.sh -version 显示脚本说明及版本信息
crond -V
有输出版本号即已安装。yum install vixie-cron crontabs -y
如有疑问请自行查找资料解决 service crond status # 查看服务运行状态
service crond start # 启动服务
service crond stop # 停止服务
service crond restart # 重启服务
service crond reload # 不中断服务,重新载入配置
crontab -e # 编辑配置文件
crontab -l # 列出某个用户的任务计划
- 配置任务定时任务
- 建议不要把任务执行频率设置小于等 10,因为域名解析记录生效时间最短理论上是 10 分钟,往往都会超过 10 分,建议 15-20 分钟。
- 开始配置
crontab -e
# 按 i 进入标记模式
# 输入:
*/20 * * * * XXXXXX/aliyun-ddns-shell/src/aliyun/aliyun-ddns.sh -run >> XXXX/aliyun-ddns-shell/src/aliyun/crontab-log.log
# 说明:
# */20 * * * * :每 20 分钟执行一次 需要执行都脚本全路径 >> 执行日志输出位置全路径
# 按 esc 后 输入:wq 回车 保存并退出
- 重新加载配置:`service crond reload`
- 注意观察任务是否成功执行,如有疑问请自行百度
版权声明:本文为 ByteBlogs 博主「 risfeng 」的原创文章。
原文链接: https://www.byteblogs.com/article/488
1
koolpass 2020-03-30 15:59:42 +08:00
感谢 已经加星
|
3
chwhsen 2020-03-30 16:07:05 +08:00
如果路由器是 openwrt 或者 lede 的话,没必要做定时任务;把脚本放在 hotplug 文件夹下就行了;有奇效
|
4
goodryb 2020-03-30 16:08:03 +08:00
强烈建议使用子账号,只授予 DNS 解析配置权限。
主账号风险太高了 |
6
syuraking 2020-03-30 16:55:06 +08:00
建议添加 IPV6 支持
|
8
frlee 2020-04-02 17:40:38 +08:00
优点是他确实可以用,缺点是。。。
臃肿庞大 修改 shell 几个配置就好 还搞什么配置文件 配置文件目录在 debian 下目录是这样的 : /home/xxx/'~' 看起来很迷惑 再者,不需要先判断 ip 是否为新获取的吗,ip 不更新时每次运行脚本请求阿里云返回'The DNS record already exists' 你先判断为接口请求失败 最后又提示记录更新成功。。。 感觉刚需的功能没做好 一大堆没用的东西倒是加不少 |