dnspod动态域名
获取相关参数
1、token是在 用户中心 -> 安全设置 -> API Token处查看
2、domain_id和record_id需要调用api才能获取,参见:
https://www.dnspod.cn/docs/domains.html#domain-list
https://www.dnspod.cn/docs/records.html#record-list
shell代码
#!/bin/bash
newip=$(curl -s 'http://members.3322.org/dyndns/getip')
oldip=$(cat 'ip.txt')
nice_date=$(date "+%Y-%m-%d %H:%M:%S")
if [ "$newip" = "$oldip" ]; then
echo "$nice_date nochange"
else
echo ${newip} > ./ip.txt
echo "$nice_date changed to ${newip}"
curl -X POST https://dnsapi.cn/Record.Modify -d "login_token=TOKEN&format=json&domain_id=DOMAIN_ID&record_
id=RECORD_ID&sub_domain=@&value=$newip&record_type=RECORD_TYPE&record_line_id=0"
fi
定时获取
新建一个ip.txt文件保存上次获取的ip地址
touch ip.txt
设置定时,我的是每隔十分钟一次
crontab -e
0,10,20,30,40,50 * * * * sh /dnspod.sh
注意
token的格式是id,token不是单纯的token