阿里云
阿里云多端小程序中小企业获客首选
发表主题 回复主题
  • 10611阅读
  • 2回复

[干货分享]AliyunDDNS Python版-利用Aliyun的修改解析记录API写的DDNS脚本

级别: 新人
发帖
7
云币
13
引用
本人在家中架了台Linux服务器,跑着动查询脚本,有时也用来搞搞开发(ssh的好处就在于用2G流量都能连),有时从外网连接没个固定IP超级不爽啊。 zA:q/i  
某日发现了Oray的花生壳,试用了一阵发现免费版极其坑爹,遂入阿里(不得不说阿里云真的是太好了,对象存储SDK就他家封装的最好,还不强制高版本.NET)。 zK{}   
然后玩了一阵发现阿里云的API很强大啊!于是写了个小脚本。
`&xdSH  
引用
也曾看到论坛里有位仁兄搞过类似的东西  -T-yt2h(  
可惜我是用 Debian的,不能用
Zk>m!F>,p  
扯远了。下面才是主要的: moh,aB#  
z"QXPIXPk  
介绍 i~R+ g3oi  
JG1q5j##]b  
?4Fev_5m  
Aliyun_DDNS &-JIXVd*R  
H\N} 0^ea  
使用效果 |W@Ko%om  
bAuiMw7!  
L~by`q N_  
Wa.!eAe}  
VGu(HB8n#  
Run with Python2.7 1 XJZuv,T:  
,j\uvi(Y  
利用Aliyun的修改解析记录API写的DDNS脚本 jO|`aUY Tf  
请自行修改程序中的APPID、APPSR、RID、Record、domain变量 {4f%UnSz(  
不要怪我用了GPLv3,因为想闭源使用的同志们一定Python水平比我这个才学了一个月的py渣要高,自己写一个根本不难。 1/qD5 *`Y  
QZa^Cng~  
为啥要写这么个玩意 Fi\) ka\u  
0Js5 ' 9}H  
真相是这样的,我自己搞了台小服务在家里跑着自动查图书馆的书是否超期等脚本,偶尔也要连上去看看,或者当个bridge使连RDP到台式机,网络环境是动态公网IP,一直用oray的DDNS。可惜这家现在越做越坑,还限制子域名数量,后来发现阿里云是个好东西,于是就有了这个脚本。 "wKJ8  
Cw kQhj?  
这个玩意怎么玩 ,1lW`Krx  
hE'7M;  
配置信息写好,把它写进crontab里,五分钟一次。 g 2'K3e?.%  
yy3`E}vX7  
关于如何修改程序中的RID
/Vx EqIK  
首先打开FireFox Upg8t'%{op  
打开域名控制台-解析设置 -Wre4 ^,v  
(如果没有的话)添加一条A记录,主机记录就是子域名,记录值随便填写一个 $8[JL \  
如下图,已经有一条记录了: mFd|JbW  
jz\>VYi(7  
rQTG-& ,  
然后Firebug打开,切到网络面板 {?3i^Q=V  
点击右侧的修改,然后直接点保存 'I2[} >mj2  
这时可以看到有一条POST 3u;0,:X&  
rvb@4-i>iI  
.n?i' 8  
点击左侧+号,选择Post选项卡,在param项里找到rrId,后面紧跟着带方括号的一串数字(标黄的)就是程序中应填写的RID了 'P%&*%  
byZj7q5&Q  
)}i2x:\|_  
[GitHub] https://github.com/XAS-712/Aliyun_DDNS   c/(Dg$DbX  
使用GPLv3协议开源 }me`(zp  
转载一定要记得写出处! ;H?tcb*  
(^<skx>  
)|Ka'\xr  
d zV2;  
/-=h|A#Kh  
[ 此帖被原同学在2017-06-27 20:22重新编辑 ]
级别: 新人
发帖
1
云币
1
只看该作者 沙发  发表于: 2017-09-27
ReAliyunDDNS Python版-利用Aliyun的修改解析记录API写的DDNS脚本
[root@localhost aliyun]# python AliDDNS.py * C*aH6*  
400 w@a|_?  
{"RequestId":"D8F10EC7-05C8-4E70-AC62-6876F288DFC9","HostId":"alidns.aliyuncs.com","Code":"InvalidParameter","Message":"The parameter value RecordId is invalid."} 2=naPTP(  
NezE]'}  
你好,运行提示上面信息,请问是什么原因呢?
级别: 新人
发帖
1
云币
1
只看该作者 板凳  发表于: 2018-05-27
ReAliyunDDNS Python版-利用Aliyun的修改解析记录API写的DDNS脚本
Traceback (most recent call last): +Y>oNX1KN  
  File "C:\Users\xigua\Desktop\Aliyun_DDNS-master\AliyunDDNS_NonSDK.py", line 181, in <module> "2PT]!  
    rc_value = my_ip()  C8} ;,  
  File "C:\Users\xigua\Desktop\Aliyun_DDNS-master\AliyunDDNS_NonSDK.py", line 115, in my_ip q&LCMnv"P  
    ip3 = my_ip_popen() ,z> w^_  
  File "C:\Users\xigua\Desktop\Aliyun_DDNS-master\AliyunDDNS_NonSDK.py", line 101, in my_ip_popen ? Q"1zcX  
    get_ip_responses = get_ip_method.readlines()[0]                                # 读取 HTTP 请求值 +HG*T[%/  
IndexError: list index out of range vr_Z0]4`C9  
w`gT]Rn  
兄dei 这是什么原因
发表主题 回复主题
« 返回列表上一主题下一主题

限100 字节
如果您提交过一次失败了,可以用”恢复数据”来恢复帖子内容
 
验证问题: 91 - 79 = ?
上一个 下一个
      ×
      全新阿里云开发者社区, 去探索开发者的新世界吧!
      一站式的体验,更多的精彩!
      通过下面领域大门,一起探索新的技术世界吧~ (点击图标进入)