备注1:被教程转载自https://wecode.host/server/ddns.html WeCode博客,脚本也来源于博主,在此说声感谢
备注2:使用此教程的前提是您拥有自己的域名(免费、收费均可,只要能够修改该域名的DNS解析服务器即可)
DNSPOD设置
添加域名
添加纪录,IP地址为你后台所提供的IP地址。
使用方法
ArDNSPod(Github项目地址)
基于DNSPod用户API实现的纯Shell动态域名客户端,适配网卡地址。
使用
复制dns.conf.example到同一目录下的dns.conf并根据你的配置修改即可。
执行时直接运行ddnspod.sh,支持cron任务。
配置文件格式:
弹出启动菜单:
# 安全起见,不推荐使用密码认证
# arMail="test@gmail.com"
# arPass="123"
# 推荐使用Token认证
# 按`TokenID,Token`格式填写
arToken="12345,7676f344eaeaea9074c123451234512d"
# 每行一个域名
arDdnsCheck "test.org" "subdomain"
作者:anrip
GoDNS
Github项目地址:https://github.com/timothyye/godns
git clone https://github.com/timothyye/godns.git
cd cmd/godns
go get -v
go build
$ ./godns -h
Usage of ./godns:
-c string
Specify a config file (default "./config.json")
-d Run it as docker mode
-h Show help
重命名为config.json
{
"provider": "DNSPod",
"email": "example@gmail.com",
"password": "YourPassword",
"login_token": "",
"domains": [{
"domain_name": "example.com",
"sub_domains": ["www","test"]
},{
"domain_name": "example2.com",
"sub_domains": ["www","test"]
}
],
"ip_url": "http://members.3322.org/dyndns/getip",
"log_path": "./godns.log",
"socks5_proxy": ""
}
还有很多开启方法,具体参见GitHub项目
cron 定时任务
*/15 * * * * curl -k -X POST https://dnsapi.cn/Record.Ddns -d 'login_email=登录邮箱&login_password=登录密码&format=json&domain_id=域名编号&record_id=记录编号&record_line=默认&sub_domain=子域名'
延伸教程
获取 login_token
DNSPOD > 用户中心 > 安全设置 > API Token
使用英文 , 将 ID 和 Token 连接起来即公共请求参数 login_token
获取 domain_id
curl 'https://dnsapi.cn/Domain.List' -d 'login_token=<your_login_token>&format=json'
根据响应中的 domains 得到域名对应的 domain_id
获取 record_id
curl 'https://dnsapi.cn/Record.List' -d 'login_token=<your_login_token>&format=json&domain_id=<your_domain_id>'
根据响应中的 records 得到子域名记录对应的 record_id
"record_line=默认" 无需修改