找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 13900|回复: 27

即时更新DNSpod上的域名A记录

[复制链接]
本帖最后由 99010 于 2017-3-31 21:29 编辑

搬运工教程(只适用有公网IP)
在DNSpod添加要更新域名的A记录。

下载https://github.com/anrip/ArDNSPod脚本,放到路由上任意目录,本例为/root/dnspod。
修改dns.conf的Token认证为你自己的,添加要更新的域名。
  1. # 安全起见,不推荐使用密码认证
  2. # arMail="test@gmail.com"
  3. # arPass="123"

  4. # 推荐使用Token认证
  5. # 按`TokenID,Token`格式填写
  6. arToken="12345,7676f344eaeaea9074c123451234512d"

  7. # 每行一个域名
  8. arDdnsCheck "test.com" "www"
复制代码
执行一下命令(注意:脚本需要完整的wget,如没有须先opkg install wget)
  1. sh /root/dnspod/ddnspod.sh
复制代码
然后在DNSpod网站看下IP有没有更新,如更新正常,继续。。。


在/etc/ppp/ip-up.d目录新建一个文件autoddns.sh,权限0755,内容如下:

  1. #/bin/sh

  2. sh /root/dnspod/ddnspod.sh >> /tmp/log/dnspod.log 2>&1 &
复制代码
只要wan口发生变化,就会执行脚本去DNSpod更新A记录的IP。

简单测试一下:/etc/init.d/network restart
这个要是能做个LUCI界面配置就更好了   能加下QQ不  我QQ号57159905
回复

使用道具 举报

不错,支持!!
回复

使用道具 举报

本帖最后由 缘亦如此1 于 2017-1-13 22:40 编辑

谢谢
多拨显示两个IP,不能用
echo $extip | cut -d' ' -f1 好了
回复

使用道具 举报

本帖最后由 缘亦如此1 于 2017-1-14 12:13 编辑

楼主为啥直接在putty里执行脚本没有问题,而设置好后自动更新就不行。

Linux
hostIP: XXX.XXX.XX.XXX
lastIP:
wget: unrecognized option `--output-document=-'
Usage: wget [options] <URL>
Options:
        -4                                Use IPv4 only
        -6                                Use IPv6 only
        -q                                Turn off status messages
        -O <file>                        Redirect output to file (use "-" for stdout)
        -P <dir>                        Set directory for output files
        --user=<user>                        HTTP authentication username
        --password=<password>                HTTP authentication password
        --user-agent|-U <str>                Set HTTP user agent
        --post-data=STRING                use the POST method; send STRING as the data
        --spider|-s                        Spider mode - only check file existence
        --timeout=N|-T N                Set connect/request timeout to N seconds
        --proxy=on|off|-Y on|off        Enable/disable env var configured proxy

HTTPS options:
        --ca-certificate=<cert>                Load CA certificates from file <cert>
        --no-check-certificate                don't validate the server's certificate
回复

使用道具 举报

本帖最后由 缘亦如此1 于 2017-1-14 12:14 编辑

加入环境变量,可以了。

  1. #!/bin/sh
  2. # wan ifup
  3. PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
  4. export PATH
  5. [ $ACTION = "ifup" -a $INTERFACE = "wan" ]
  6. sh /root/dnspod/ddnspod.sh >> /tmp/log/dnspod.log 2>&1 &
复制代码


回复

使用道具 举报

缘亦如此1 发表于 2017-1-13 21:19
谢谢
多拨显示两个IP,不能用
echo $extip | cut -d' ' -f1 好了

echo $extip | cut -d' ' -f1 放到哪里?
回复

使用道具 举报

本帖最后由 缘亦如此1 于 2017-2-1 22:27 编辑
gavin219 发表于 2017-2-1 00:17
echo $extip | cut -d' ' -f1 放到哪里?

ddnspod.sh
  1. case $(uname) in
  2.   'Linux')
  3.     echo "Linux"
  4.     arIpAddress() {
  5.         local extip
  6.         extip=$(ip -o -4 addr list | grep -Ev '\s(docker|lo)' | awk '{print $4}' | cut -d/ -f1 | grep -Ev '(^127\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$)|(^10\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$)|(^172\.1[6-9]{1}[0-9]{0,1}\.[0-9]{1,3}\.[0-9]{1,3}$)|(^172\.2[0-9]{1}[0-9]{0,1}\.[0-9]{1,3}\.[0-9]{1,3}$)|(^172\.3[0-1]{1}[0-9]{0,1}\.[0-9]{1,3}\.[0-9]{1,3}$)|(^192\.168\.[0-9]{1,3}\.[0-9]{1,3}$)')
  7.         if [ "x${extip}" = "x" ]; then
  8.                 extip=$(ip -o -4 addr list | grep -Ev '\s(docker|lo)' | awk '{print $4}' | cut -d/ -f1 )
  9.         fi
  10.         echo $extip
  11.     }
复制代码


替换
  1. echo $extip
复制代码

回复

使用道具 举报


已经搞定。谢谢
回复

使用道具 举报

成功,感谢分享!可以去掉oray了
回复

使用道具 举报

神龟雄起!~~~~~~~
回复

使用道具 举报

#自动更新 dnspod 域名 A 记录
思考啦
回复

使用道具 举报

请问,出现如下提示:
Linux
Updating Domain: xxx.test.com
hostIP: 123.194.50.182
Get Record Info Failed!

这是什么原因?
回复

使用道具 举报

认证接口改了。
回复

使用道具 举报

不错,回家试试
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-5-21 16:24

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表