用AliDDNS脚本实现动态域名

用AliDDNS脚本实现动态域名Aliyunddns脚本实现动态域名安装1.yum安装必须的软件[root@VM_0_16_centos~]#yuminstall-ywgetcurlcronie2.下载脚本至/usr/sbin/文件夹[root@VM_0_16_centos~]#wget-O/usr/sbin/aliddns.shhttps://bitbucket.org/ilemonrain/aliddns/downloads/AliDDNSv3-Build20181113-PreviewBuil

大家好,又见面了,我是你们的朋友全栈君。

条件

  • 只能用于linux系列主机,我用的centos。
  • 主机在哪里都行,但要能上网并有外网地址
  • 域名要在阿里云,也就是以前的万网。
  • 因为阿里云的权限太丰富,所以使用子账户,精准授权会比较安全,后面会说到。

安装

1.首先yum安装要用到的软件

[root@VM_0_16_centos ~]# yum install -y wget curl cronie

2.下载脚本至/usr/sbin/文件夹

将名字命名为“aliddns.sh”是一个小坑,因为脚本中经常念叨自己的名字,使用AliDDNSv3.sh才行,这里不改了。

[root@VM_0_16_centos ~]# wget -O /usr/sbin/aliddns.sh https://bitbucket.org/ilemonrain/aliddns/downloads/AliDDNSv3-Build20181113-PreviewBuild.sh

加个运行权限。

[root@VM_0_16_centos ~]# chmod +x /usr/sbin/aliddns.sh
[root@VM_0_16_centos ~]# /usr/sbin/aliddns.sh

3.根据提示依次填写内容就OK了。

 作者: iLemonrain <ilemonrain@ilemonrain.com>
 Telegram: @ilemonrain
 Telegram频道: @ilemonrain_channel


  主菜单 >

===== AliDDNS 模块 =====
 1. 配置并运行 AliDDNSv3
 2. 仅配置 AliDDNSv3
 3. 仅运行 AliDDNSv3
 4. AliDDNSv3 模块设置

===== ServerChan 模块 =====
 5. 配置 ServerChan

=====全局设置=====
 6. 清理配置文件及重置环境
 7. 安装/卸载/恢复出厂设置
 8. 关于 AliDDNSv3
 9. 求捐赠 OwO
 0. 退出

 请输入你的选择[0-9]:

选择1.

AliDDNSv3 配置向导 (1/6) - 阿里云AccessKey ID
==================================================

阿里云AccessKey ID/AccessKey Secret是阿里云DDNS在工作过程中的重要参数(以下简称为AKID/AKSC或AK/SK).
AliDDNS的很多组件和功能和组件都将依赖于AK/SK. 填写到配置中的AK/SK正确与否, 将直接决定到AliDDNSv3能否正确运行.

如果你不知道你的AK/SK的话, 请前往这里获取你的AK/SK:
https://usercenter.console.aliyun.com/#/manage/ak

<注意> 阿里云的AK/SK, 是阿里云识别用户身份的唯一途径. 请不要将你的AK/SK透露给任何人, 阿里云的工作人员不会主动要求你提供AK/SK,
任何伪造官方人员要求你提供AK/SK的行为, 请不要轻易相信! 如果不幸泄露, 请立即前往阿里云官网删除泄露的AK/SK, 来阻止阿里云账号被他人控制的风险!

你得到的阿里云的AccessKey ID, 应该是以LT 开头的, 由大小写字母和数字组成的16位字符串.
建议通过复制粘贴的方式, 将这些内容输入其中:

请输入你的阿里云AccessKey ID:

4.回头去阿里云找自己的账户

https://ram.console.aliyun.com/users
在这里插入图片描述已经有账户了,只要添加权限。
在这里插入图片描述点击进入这个子用户名。
在这里插入图片描述再创建阿里云AccessKey ID,也可以在创建子账户时同时创建。
在这里插入图片描述现在回到主机上 ,继续设置脚本。忽略AccessKey 长度提醒,输入AccessKey Secret。
下一步输入域名,注意是二级域名,不是子域名。

AliDDNSv3 配置向导 (3/6) - 域名
==================================================

域名由两部分组成: 域名(Domain)和子域名(SubDomain).

例如 www.google.com , 在这里面, google.com 即为域名, www 为子域名.
例如 aaa.bbb.ccc.example.com, 在这里面, example.com 即为域名, aaa.bbb.ccc 为子域名.

在这一步中, 你需要填写你的域名. 在填写之前, 请确保你的域名解析已经迁移到阿里云云解析下:
一般情况下, 如果你域名所使用的域名服务器为 hichina*.aliyun.com, 或者为 vip*.aliyun.com,
即为域名解析已经迁移到阿里云云解析旗下. 如果你是刚刚发起的域名服务器更换请求, 请耐心等待24-72小时
后, 待解析完全生效后再使用AliDDNSv3工具.

请输入你的域名: 666.com

然后才是子域名(三级及以上)。

AliDDNSv3 配置向导 (4/6) - 子域名
==================================================

域名由两部分组成: 域名(Domain)和子域名(SubDomain).

例如 www.google.com , 在这里面, google.com 即为域名, www 为子域名.
例如 aaa.bbb.ccc.example.com, 在这里面, example.com 即为域名, aaa.bbb.ccc 为子域名.

<注意> 如果你需要直接解析域名 (比如 example.com), 请在子域名中输入@ !

在这一步中, 你需要填写你的子域名. 在填写之前, 请确保你的域名解析已经迁移到阿里云云解析下:
一般情况下, 如果你域名所使用的域名服务器为 hichina*.aliyun.com, 或者为 vip*.aliyun.com,
即为域名解析已经迁移到阿里云云解析旗下. 如果你是刚刚发起的域名服务器更换请求, 请耐心等待24-72小时
后, 待解析完全生效后再使用AliDDNSv3工具.

请输入你的子域名: tx

[Info] 检测到已存在的解析记录:
[Info] 完整域名: tx.666.com
[Info] 解析记录: [A] 131.232.555.666 (TTL=600)
[Info] 域名状态: ENABLE

确定要使用此域名作为DDNS域名么? (y/N)

Y 确定。
选择检测模式,这个作用是测试你的外网地址有没有变化,核心功能。

同样的AliDDNS工作模式并不是适合所有的环境.

<注意> 这是一个测试版的功能, 如果你不愿意调整此参数, 请直接按下回车键跳过配置.

目前提供三种AliDDNS工作模式:
模式一: 使用阿里云云解析API, 通过调用API来获取当前域名的解析记录 (默认工作模式).
模式二: 使用腾讯云HttpDNS, 通过HttpDNS获取域名解析记录 (AliDDNS 2.0工作模式).
模式三: 使用传统域名解析, 通过nslookup命令获取域名解析记录 (AliDDNS 1.0工作模式)

模式会在遇到错误时,自动按照 1->2->3 的顺序自动切换到备用模式。
根据自己的环境, 选择一个最合适的工作模式, 会提高AliDDNS的工作效率, 降低错误率/误报率.

请选择工作模式 (1-3):

根据个人喜好,我选择3.

AliDDNSv3 配置向导 - 正在完成配置向导
==================================================

即将完成配置向导, 请确认你输入的参数是否正确

DDNS域名: tx.666.com
设定TTL值: 600
工作模式: 3

AccessKey ID: LTAI4*****************JyNqEw
AccessKey Secret: QP1M*********************WyOG

请确认以上信息是否正确, 如确认正确, 请输入Y以结束配置向导并写入配置文件.
如有误, 请输入N以重新开始配置流程.

所有参数是否正确 ? (y/N)

最后确认。

AliDDNSv3 - 正在进行DDNS工作
==================================================

正在进行DDNS工作, 请稍后...

[Info] 正在读取配置文件 ...
[Info] 正在检查配置文件完整性 ...
[Info] 正在获取本机IP地址 ...
[Info] 本机IP地址: 132.232.555.555
[Info] 已启用工作模式3: 传统域名解析
[Info] 设置使用的DNS服务器: 223.5.5.555
[Info] 正在获取 tx.666.com 的解析记录 ...
[Info] tx.666.com -> 131.232.555.666
[Info] 本机IP (132.232.555.555) 与 tx.666.com的IP (131.232.555.666) 不同
[Info] 正在启动解析记录修改工作 ...
[Info] 正在获取 tx.666.com 的 RecordId ...
[Info] [云解析API] 正在初始化请求...
[Info] [云解析API] 正在发送请求...
[Info] [云解析API] 请求发送成功 !
[Info] tx.666.com -> RecordId: 19763010542794752
[Info] 正在修改 tx.666.com 的解析记录 ...
[Info] [云解析API] 正在初始化请求...
[Info] [云解析API] 正在发送请求...
[Info] [云解析API] 请求发送成功 !
[Success] 解析记录(tx -> [A]132.232.555.555, RecordID:19763010542794752) 修改成功 !
[Info] tx.666.com 解析记录修改成功 !
[Info] 正在验证修改结果 ...
[Info] [云解析API] 正在初始化请求...
[Info] [云解析API] 正在发送请求...
[Info] [云解析API] 请求发送成功 !
[Info] 验证结果和现在的解析记录一致 !
[Success] DDNS域名记录更新成功 !

正常工作的样子令人喜悦。

5.下一步是设置cron

先检查一下现有任务。

[root@VM_0_16_centos ~]# crontab -l
*/1 * * * * /usr/xxxxx.sh > /dev/null 2>&1 &
0 0 * * * /usr/xxxxx.sh > /dev/null 2>&1 &

*/10 * * * * nohup bash /usr/sbin/AliDDNSv3.sh run >/dev/null 2>&1

这里发现第三行已经有了Aliddnsv3.sh,氮素不是我设置的,也许配置时自动生成的,去检查一下。

完活

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/133801.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 手机上移动梦网中毒啦!病毒名字叫:程序管理 版本0.1.1 defwatch!找到删除它的简单方法!

    手机上移动梦网中毒啦!病毒名字叫:程序管理 版本0.1.1 defwatch!找到删除它的简单方法!我的手机型号:N70,S602rd上移动梦网中毒啦!病毒名字叫:程序管理版本0.1.1defwatch真是恶心啊,不知道是他们自己放的,还是别人放的?病毒名字叫:程序管理版本0.1.1def

    2022年7月2日
    35
  • “儿子,千万别帮老婆做家务!”爸爸写的这封信火了

    文 | 十二朵女王 · 主播 | 维维 儿子,明天就是你的婚礼了。 我必须提醒你,一旦结了婚,你就有了自己的新家,我和你妈不用你操心,你只用竭尽全力照顾好你自己…

    2021年6月21日
    84
  • 芯片开发工程师_如何成为芯片架构师

    芯片开发工程师_如何成为芯片架构师数字IC设计师/前端设计工程师/芯片架构师架构师和领域相关性较强,依赖于历史经验。网络芯片的架构师,你让他去做AI加速,可能也没办法一下子拿出成果来。芯片工程师年薪百万是极限,项目负责人和架构师可以拿到千万。IC设计又分为两个方向:数字和模拟数字方向通常包含四个岗位:前端设计,设计验证,DFT,后端。模拟可以分为两个大方向:模拟设计和模拟版图。在数字设计中,还有一个岗位是架构设计,这个职位对从业者的要求比较高,要么是博士毕业,要么是具有丰厚经验的前端设计工程师(15year

    2025年9月30日
    6
  • Qt实现简单的单例模式

    Qt实现简单的单例模式

    2021年9月11日
    65
  • linux 大总结[通俗易懂]

    linux 大总结[通俗易懂]1.Linux介绍Linux内核最初只是由芬兰人林纳斯·托瓦兹(LinusTorvalds)在赫尔辛基大学上学时出于个人爱好而编写的。Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Linux能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。目前市面上较

    2022年6月7日
    46
  • 闫学灿acwing_acm题

    闫学灿acwing_acm题在给定的 N 个整数 A1,A2……AN 中选出两个进行 xor(异或)运算,得到的结果最大是多少?输入格式第一行输入一个整数 N。第二行输入 N 个整数 A1~AN。输出格式输出一个整数表示答案。数据范围1≤N≤105,0≤Ai<231输入样例:31 2 3输出样例:3#include<bits/stdc++.h>using namespace std;const int N = 31e5 + 10;int trie[N][2],ctx,cnt[N];

    2022年8月9日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号