开发者社区> 问答> 正文

AliyunDDNS Python版-利用Aliyun的修改解析记录API写的DDNS脚本

原同学 2017-06-25 16:59:18 10945
本人在家中架了台Linux服务器,跑着自动查询脚本,有时也用来搞搞开发(ssh的好处就在于用2G流量都能连),有时从外网连接没个固定IP超级不爽啊。
某日发现了Oray的花生壳,试用了一阵发现免费版极其坑爹,遂入阿里云(不得不说阿里云真的是太好了,对象存储SDK就他家封装的最好,还不强制高版本.NET)。
然后玩了一阵发现阿里云的API很强大啊!于是写了个小脚本。

也曾看到论坛里有位仁兄搞过类似的东西
可惜我是用 Debian的,不能用

扯远了。下面才是主要的:

介绍


Aliyun_DDNS

使用效果




Run with Python2.7

利用Aliyun的修改解析记录API写的DDNS脚本
请自行修改程序中的APPID、APPSR、RID、Record、domain变量
不要怪我用了GPLv3,因为想闭源使用的同志们一定Python水平比我这个才学了一个月的py渣要高,自己写一个根本不难。

为啥要写这么个玩意

真相是这样的,我自己搞了台小服务器在家里跑着自动查图书馆的书是否超期等脚本,偶尔也要连上去看看,或者当个bridge使连RDP到台式机,网络环境是动态公网IP,一直用oray的DDNS。可惜这家现在越做越坑,还限制子域名数量,后来发现阿里云是个好东西,于是就有了这个脚本。

这个玩意怎么玩

把配置信息写好,把它写进crontab里,五分钟一次。

关于如何修改程序中的RID

首先打开FireFox
打开域名控制台-解析设置
(如果没有的话)添加一条A记录,主机记录就是子域名,记录值随便填写一个
如下图,已经有一条记录了:


然后Firebug打开,切到网络面板
点击右侧的修改,然后直接点保存
这时可以看到有一条POST


点击左侧+号,选择Post选项卡,在param项里找到rrId,后面紧跟着带方括号的一串数字(标黄的)就是程序中应填写的RID了


[GitHub] https://github.com/XAS-712/Aliyun_DDNS  
使用GPLv3协议开源
转载一定要记得写出处!




Web App开发 Linux API 网络安全 开发工具 对象存储 Python
分享到
取消 提交回答
全部回答(2)
  • 幽幽纸
    2018-05-27 18:45:12
    ReAliyunDDNS Python版-利用Aliyun的修改解析记录API写的DDNS脚本
    Traceback (most recent call last):
      File "C:\Users\xigua\Desktop\Aliyun_DDNS-master\AliyunDDNS_NonSDK.py", line 181, in <module>
        rc_value = my_ip()
      File "C:\Users\xigua\Desktop\Aliyun_DDNS-master\AliyunDDNS_NonSDK.py", line 115, in my_ip
        ip3 = my_ip_popen()
      File "C:\Users\xigua\Desktop\Aliyun_DDNS-master\AliyunDDNS_NonSDK.py", line 101, in my_ip_popen
        get_ip_responses = get_ip_method.readlines()[0]                                # 读取 HTTP 请求值
    IndexError: list index out of range

    兄dei 这是什么原因
    0 0
  • billy.shang
    2017-09-27 09:55:41
    ReAliyunDDNS Python版-利用Aliyun的修改解析记录API写的DDNS脚本
    [root@localhost aliyun]# python AliDDNS.py
    400
    {"RequestId":"D8F10EC7-05C8-4E70-AC62-6876F288DFC9","HostId":"alidns.aliyuncs.com","Code":"InvalidParameter","Message":"The parameter value RecordId is invalid."}

    你好,运行提示上面信息,请问是什么原因呢?
    0 0
添加回答

集结各类场景实战经验,助你开发运维畅行无忧

推荐文章
相似问题