用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,氮素不是我设置的,也许配置时自动生成的,去检查一下。

完活

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • VUE控制台报错

    VUE控制台报错

  • 转 pages validateRequest =”false「建议收藏」

    转 pages validateRequest =”false「建议收藏」二、注意1、在web.config中system.web节加入:否则会出现如下错误:从客户端(Content=”说明:请求验证过程检测到有潜在危险的客户端输入值,对请求的处理已经中止。该值可能指示危及应用程序安全的尝试,如跨站点的脚本攻击。通过在Page指令或配置节中设置validateRequest=false可以禁用请求验证。但是,在这种情况下,强烈建议应用程序显式检查所有输入。异常详细信息:System.Web.HttpRequestValidationE

  • java缓存技术的介绍

    java缓存技术的介绍一、什么是缓存1、Cache是高速缓冲存储器一种特殊的存储器子系统,其中复制了频繁使用的数据以利于快速访问2、凡是位于速度相差较大的两种硬件/软件之间的,用于协调两者数据传输速度差异的结构,均可称之为Cache二、缓存的分类1、基于web应用的系统架构图2、在系统架构的不同层级之间,为了加快访问速度,都可以存在缓存操作系统磁盘缓存->减少磁盘机械操作

  • Mysql锁死解决「建议收藏」

    Mysql锁死解决「建议收藏」经常遇到mysql锁死,如alterxx语句就经常锁死数据表怎么解决?1.showprocesslist;可以看到有Waitingfortablemetadatalock字眼;如果有其他类似字眼可以解决掉冲突的进程命令:killpidpid就是图片第一列的id,如果还是无法解决且看第二条2.select*frominformation_schema.innodb_trx;此条即查到未结束的事务,可以酌情杀死冲突事务一般都可解决锁死。如未解决可谨慎

  • 超百个免费api接口,分享给你「建议收藏」

    超百个免费api接口,分享给你「建议收藏」API(应用程序编程接口)API(ApplicationProgrammingInterface,应用程序接口)是一些预先定义的函数,或指软件系统不…

  • 【最佳网页宽度及其实现】「建议收藏」

    1.设计网页的时候,确定宽度是一件很苦恼的事。以minifun…

发表回复

您的电子邮箱地址不会被公开。

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