DIY

梅林koolshare改版固件DDnspod和Aliddns插件无法更新域名解决办法

koolshare 改版梅林固件软件中心有两大 DDNS 插件使用比较普遍,一个是腾讯的 DDnspod,一个是阿里的 Aliddns(其实狗爹的 DDNS 也还可以)。我开始用 Aliddns 一直显示更新成功,但实际上域名解析地址并不变,后来改成 DDnspod,自动更新就完美了。
但最近几天发现 DDnspod 无法及时更新 IP,运行状态那里一直是空白。我还以为路由器固件出了问题,然后格式化 JFFS,恢复出厂设置,甚至降级路由器固件版本,搞了一圈还是不行。我后来又换成 Aliddns,依然是不行,非常恼火。
搜了下,原来是腾讯的 DNSPOD API 更新了,不再支持 TLS v1.2 之前的协议,而目前最新的梅林固件 7.9.1 版本的 wget 是 1.16 版本,不支持新协议,从而导致无法更新域名解释。
关于ddnspod失效的解决办法(包括官改固件)
而 Aliddns 无法更新则是因为软件中心提供的版本不对:修了下aliddns,有兴趣的试试看,应该可以用了,这个是 2018年10月更新的。

DDnspod 解决办法

  1. 找一个 U盘,格式化成 ext4 格式插进路由器Windows 下可用 DiskGenius 格式化),这个 U盘不是临时,而是要一直插在路由器上
  2. 记得先关闭 DDnspod,通过 SSH 连接进路由器输入命令:

    cd /jffs
    entware-setup.sh

    显示如下:

    [email protected]:/tmp/home/root# cd /jffs
    [email protected]:/jffs# entware-setup.sh
    Info:  This script will guide you through the Entware installation.
    Info:  Script modifies "entware" folder only on the chosen drive,
    Info:  no other data will be changed. Existing installation will be
    Info:  replaced with this one. Also some start scripts will be installed,
    Info:  the old ones will be saved on Entware partition with name
    Info:  like /tmp/mnt/sda1/jffs_scripts_backup.tgz
    
    Info:  Looking for available partitions...
    [1] --> /tmp/mnt/sda
    =>  Please enter partition number or 0 to exit
    Info:  /tmp/mnt/sda selected.

    选择 1 回车开始安装
    等一袋烟的功夫,下载安装完成后,再输入以下命令,等待安装完成:

    opkg install wget
    opkg install curl

    3. 编辑 DDnspod 插件:
    可直接通过 SSH vi 命令修改,也可通过 winscp 软件打开 .sh 文件直接编辑:

    vi /jffs/.koolshare/ddnspod/ddnspod.sh

    在文件中找到以下两处 wget 开头的代码,把 wget 改成 /opt/bin/wget

# 查询域名地址
# 参数: 待查询域名
arNslookup() {
local inter="http://119.29.29.29/d?dn="
/opt/bin/wget --quiet --output-document=- $inter$1
}

# 读取接口数据
# 参数: 接口类型 待提交数据
arApiPost() {
local agent="AnripDdns/5.07([email protected])"
local inter="https://dnsapi.cn/${1:?'Info.Version'}"
\if [ "x${arToken}" = "x" ]; then # undefine token local param="login_email=${arMail}&login_password=${arPass}&format=json&${2}"
else
local param=\"login_token=${arToken}&format=json&${2}"\
fi
/opt/bin/wget --quiet --no-check-certificate --output-document=- --user-agent=$agent --post-data > \$param $inter
}

4. 进入软件中心打开 DDnspod 设置,提交后重启路由。

Alidns 插件解决办法

  1. 下载压缩包,通过离线安装,也可以通过 SSH 和 SCP 安装(具体方法可参考这里)。
    百度云链接 提取码: 6rtk
  2. 安装完成后不要点更新,设置 aliyun 的 app key 和 secret。获取 IP 命令修改如下:
    curl -s whatismyip.akamai.com

    上面是我成功的设置,之前我用 ifconfig 获取设置尝试过下面的几种都不成功:

    curl -s --interface ppp0 whatismyip.akamai.com
    curl -s --interface vlan whatismyip.akamai.com
    curl -s --interface vlan1 whatismyip.akamai.com
微信扫一扫,向我赞赏

微信扫一扫,向我赞赏

回复

  1. zhensjoke zhensjoke
    Firefox 66 10

    我也是为了远程管理,怕一个3322和oray的免费版不稳定。。

    于是折腾了这个ddnspod,但是发现修改curl和这个均不生效。。现在也是醉了。。

  2. Sam.Z Sam.Z
    Chrome 72 10

    妳家是用什麼路由器刷的梅林固件,相比下openWrt如何,我是極路由s1,好多年了,也想折騰下。

    1. harry harry
      Chrome 73 10

      我用的网件的R7000,梅林固件好像能刷的都是华硕的同型号CPU。我觉得openwrt也挺好的,刚刚买的蜗牛矿渣板我已经刷了用了几周了。之前斐讯k2我刷的Padavan固件也很稳定,有极s1的

      1. harry harry
        Chrome 73 10

        https://www.right.com.cn/forum/thread-161324-1-1.html

This is just a placeholder img.