首先,这里的动态域名用的是自己购买的顶级域名
再者,SAE指http://sae.sina.com.cn
不会将自己域名绑定dnspod的,自行百度吧,
绑定好后,添加A刻录,指向乱写,因为后面会通过dnspod的接口来修改
最后,记下,帐号,密码,A记录的域名:如ip.qinyang.me
接下来,通过sae来创建更新域名指向的应用,其它用其它的支持php空间也行,为什么用sae呢?(因为sae速度快,接近免费,稳定)。
在sae下创建应用,并上传php代码:dnspodupdate
如申请的应用为dnspodupdate.sinaapp.com.cn
dnspodupdate.php就放在应用根目录,则访问此php的网址为http://dnspodupdate.sinaapp.com.cn/dnspodupdate.php
最后,动态更新域名:
dnspodupdate.php的用法为:http://dnspodupdate.sinaapp.com.cn/dnspodupdate.php?username=******&password=******&domain=ip@qinyang.me&myip=1.1.1.2
如果执行成功,就可以在dnspod里刚刚添加的A记录已经变成了1.1.1.2,现在就是要把外网IP更新到dnspod上去了。
得到IP地址:可以访问http://www.3322.org/dyndns/getip得到,
脚本:
IPVAL=`curl http://www.3322.org/dyndns/getip 2>/dev/null`
更新脚本:
curl "http://dnspodupdate.sinaapp.com.cn/dnspodupdate.php?username=******&password=******&domain=ip@qinyang.me&myip=$IPVAL"
脚本上传下吧:myip
将域名中的用户名(NAMEVAL),密码(PASSWDVAL),子域名(DOMAINVAL),改为你自己的就OK啦,
NAMEVAL=mail@qinyang.me
PASSWDVAL=123456
DOMAINVAL=ip@qinyang.me
IPVAL=`curl http://www.3322.org/dyndns/getip 2>/dev/null`
curl "http://kqyu.netne.net/dnspodupdate.php?username=$NAMEVAL&password=$PASSWDVAL&domain=$DOMAINVAL&myip=$IPVAL"
echo OK
执行结果:
root@wangqinyang:~/shell# chmod 755 myip.sh
root@wangqinyang:~/shell# ./myip.sh
{"msg":"\u8bb0\u5f55\u4e0d\u9700\u8981\u66f4\u65b0"}OK
在crontab中加入执行计划就OK了
root@wangqinyang:~/shell# crontab -l
*/20 * * * * /root/shell/myip.sh