失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 在Ubuntu上搭建DDNS动态域名解析服务

在Ubuntu上搭建DDNS动态域名解析服务

时间:2018-12-24 15:46:41

相关推荐

在Ubuntu上搭建DDNS动态域名解析服务

文章目录

一、前置条件二、具体步骤2.1 下载脚本程序2.2 修改配置文件2.3 运行脚本进行测试2.4 设置cron定时任务三、参考文章

一、前置条件

1、已经在腾讯云上申请了dnspod的域名。

2、已经给域名创建了秘钥(API Token),成功获取到了ID和Token。

二、具体步骤

2.1 下载脚本程序

下载dnspod-shell客户端程序并上传到ubuntu服务器下。/rehiy/dnspod-shell

2.2 修改配置文件

需要修改dns.conf文件中arTokenarDdnsCheck这2个字段,按需修改成你自己的id、token和域名即可。

# 1. Combine your token ID and token together as followsarToken="123456,de11003453a1f0123ac26d8c9fc4b8bcdefg"# 2. Place each domain you want to check as follows# you can have multiple arDdnsCheck blocksarDdnsCheck "" "www"

ddnspod.shIPtype字段默认的1就是大家通用的环境,获取你所在局域网出口wan ip,因此我这里不修改。

第4个Local-WAN模式(一般用不到):Local-WAN是指路由器作为一个大局域网的子网,某些场景下需要获取当前路由器的WAN IP,这些WAN IP一般仍然是一个子网IP。

IPtype=1 #1.WAN 2.LAN 3.IPv6 4.Local-WAN

2.3 运行脚本进行测试

xiaozhang@ubuntu:~/ddns-shell/ArDNSPod-master$ ./ddnspod.sh Type: AOS: LinuxAddress: 111.1.53.68Updating Domain: hostIP: 111.1.53.68lastIP: 111.1.53.68Last IP is the same as current, no action.

如此可以发现,我当前的出口wan IP和域名中最后记录的ip是同一个,所以无需更新,证明脚本是好用的。

2.4 设置cron定时任务

因为家用宽带的wan ip会不定时的变化,可能一天、两天、三天,因此我需要在ip变化后的第一时间能够将最新的ip地址更新到域名上,因此需要利用Linux的cron定时任务来实现实时更新,我设置的是每5分钟运行一次脚本。

使用crontab -e命令在最后一行添加:

*/5 * * * * cd /home/xiaozhang/ddns-shell/ArDNSPod-master && ./ddnspod.sh

使用crontab -l命令查看是否添加成功。

另外还可以查看/var/log/cron.log日志,查看脚本是否已经每隔5分钟就在运行了,我们发现的确如此。

xiaozhang@ubuntu:~/ddns-shell/ArDNSPod-master$ tail -f /var/log/cron.logOct 5 23:50:04 ubuntu CRON[32607]: (CRON) info (No MTA installed, discarding output)Oct 5 23:55:01 ubuntu CRON[32716]: (xiaozhang) CMD (cd /home/xiaozhang/ddns-shell/ArDNSPod-master && ./ddnspod.sh)Oct 5 23:55:03 ubuntu CRON[32714]: (CRON) info (No MTA installed, discarding output)Oct 6 00:00:02 ubuntu CRON[32933]: (xiaozhang) CMD (cd /home/xiaozhang/ddns-shell/ArDNSPod-master && ./ddnspod.sh)Oct 6 00:00:05 ubuntu CRON[32932]: (CRON) info (No MTA installed, discarding output)Oct 6 00:05:01 ubuntu CRON[33021]: (xiaozhang) CMD (cd /home/xiaozhang/ddns-shell/ArDNSPod-master && ./ddnspod.sh)Oct 6 00:05:04 ubuntu CRON[33020]: (CRON) info (No MTA installed, discarding output)Oct 6 00:09:45 ubuntu crontab[33097]: (xiaozhang) LIST (xiaozhang)Oct 6 00:10:01 ubuntu CRON[33099]: (xiaozhang) CMD (cd /home/xiaozhang/ddns-shell/ArDNSPod-master && ./ddnspod.sh)Oct 6 00:10:03 ubuntu CRON[33098]: (CRON) info (No MTA installed, discarding output)

三、参考文章

/imkiimki/article/details/83794355

如果觉得《在Ubuntu上搭建DDNS动态域名解析服务》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。