0%

Padavan 添加 GoDaddy DDNS 服务

04-04 更新,将历史 ip 保存在本地,不通过 api 获取(国内访问 Godaddy 太慢了)。

  1. 到 DNS 管理中新增一条 A 记录,“指向” 随便填;

  2. https://developer.godaddy.com/keys 创建并记录 key 和 Secret;

  3. 创建 shell 脚本和本机记录文件,通过 GoDaddy 的 api 更新 ip 地址:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    #!/bin/bash

    mydomain="填域名"
    myhostname="填刚才那条A记录的名称"
    gdapikey="填 key:secret 不要忘记中间冒号"

    myip=`curl -s "https://api.ipify.org"`
    oldip=$(tail -n 1 /path/iprecord.txt)

    if ["$oldip" == "$myip"]; then
    echo "Nothing happened."
    exit 0
    fi
    echo "$myip" > /path/iprecord.txt
    echo "IP has changed."
    curl -s -X PUT "https://api.godaddy.com/v1/domains/${mydomain}/records/A/${myhostname}" -H "Authorization: sso-key ${gdapikey}" -H "Content-Type: application/json" -d "[{\"data\": \"${myip}\"}]"
    exit 0
  4. chmod 777 ,然后在本机上测试下;

  5. 进入路由器管理页面启用 SSH 服务;

  6. sftp 连接路由器把脚本文件放到 /etc/storage 目录下;

  7. 路由器管理界面 系统管理 -> 恢复/导出/上传设置 -> 保存 /etc/storage/ 内容到闪存,点击后没有反馈是正常的,右上角 log 里有执行情况;

  8. 路由器管理界面 系统管理 -> 服务 -> 计划任务:

    1
    2
    */10 * * * * /etc/storage/yours.sh
    #每十分钟执行

    点击 应用本页设置 完成。