v2ex有个帖子说用Dnspod的API可以一行搞定,不过我既然买的是阿里云的域名还是想尽量用阿里云的API,感觉比较安全,另外修改解析记录后也会自动发邮件通知,所以还是调用阿里云的API吧。阿里云的API需要做加密工作,用shell反而不太好写,还是用java写吧。

阿里云官方java SDK

如果用java6、7、8的话,还是直接用官方的SDK比较方便:

maven依赖:

        <dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-core</artifactId>
<version>2.4.4</version>
</dependency> <dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-alidns</artifactId>
<version>2.0.6</version>
</dependency>

maven仓库:

     <repositories>
<repository>
<id>sonatype-nexus-staging</id>
<name>Sonatype Nexus Staging</name>
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>

然后几句java代码即可操作DNS解析:

        DefaultProfile profile = DefaultProfile.getProfile("<regionId>", "<accessKeyId>", "<secret>");
DefaultAcsClient client = new DefaultAcsClient(profile); // 获取域名解析列表
DescribeDomainRecordsRequest request = new DescribeDomainRecordsRequest();
request.setDomainName(domainName); // 写你的域名,例如xxx.com
DescribeDomainRecordsResponse domainRecordsResponse = client.getAcsResponse(request);
List<DescribeDomainRecordsResponse.Record> domainRecords = domainRecordsResponse .getDomainRecords(); // 获取第一个域名解析记录,假设是A记录
DescribeDomainRecordsResponse.Record record = domainRecords.get(0); // 修改DNS解析记录
UpdateDomainRecordRequest request = new UpdateDomainRecordRequest();
request.setRecordId(record.getRecordId());
request.setRR(record.getRR());
request.setType(record.getType());
request.setValue(ip); // 修改为路由器的ip
acsClient.getAcsResponse(request);

极路由设置阿里云DDNS

但是没办法啊,mipsel架构上只能装jamvm用java 1.5,jamvm安装教程在这里:极路由安装java教程

改官方源码也比较麻烦,因为它也有maven依赖,这些依赖包也是java6以上的,要改源码的话连依赖包也得改,更麻烦。

那没办法,只能看一下阿里云SDK的源码,然后用java1.5重写一套精简的咯。

使用教程和代码参见github: aliyun_ddns

免编译jar包下载:

链接:https://pan.baidu.com/s/1ggiedEz 密码:ptpg

运行这个jar包后,如果域名解析记录和公网ip不一样则会自动修改域名解析记录的值为公网ip:

极路由4pro(HC5962)设置阿里云DDNS的更多相关文章

  1. 极路由4pro交叉编译c、c++的代码

    首先在官方文档中下载SDK 极路由4pro是mtmips架构,即32位mips,小端的,因此下载这个 防止官方的下载链接失效,特意上传到百度网盘: 链接:https://pan.baidu.com/s ...

  2. 基于nodejs的阿里云DDNS服务,支持多网卡绑定

    前段几天写的,自用. 想着也许有和我一样需求的同学,所以开源发出来了. 提供阿里云的DDNS设置,支持多网卡多域名绑定. 特性 支持阿里云DDNS设置 支持针对多个线路多个网卡单独设置域名 支持IPv ...

  3. [Java] Spring boot 的maven设置阿里云仓库

    Spring boot 的maven设置阿里云仓库 打开根目录下的 pom.xml 文件,在对应为止出加入如下 红色 代码: <build> <plugins> <plu ...

  4. 树莓派4B踩坑指南 - (5)设置阿里云的源及解决apt提示依赖

    解决树莓派apt升级/安装提示依赖问题: 注意!!buster是根据系统版本(cat /etc/os-release)来写的,如果是jessie或者stretch要改为buster.参考解决树莓派ap ...

  5. Ubuntu 18.04 安装 docker, 设置阿里云加速

    1.卸载旧的 docker 环境 sudo apt-get remove docker docker-engine docker.io containerd runc 2.设置仓库 更新索引 sudo ...

  6. 极路由4pro(HC5962)安装python

    基本配置 其实极路由4.极路由4 pro.极路由B70都是一个型号的(HC5962) CPU:MT7621AT + MT7612EN + 7603EN 内存:256MB DDR3 RAM 闪存:128 ...

  7. Maven国内源设置阿里云地址

    Maven国内源设置 目前国外的maven源访问非常慢,作为一个Java开发者,是一件很痛苦的事,而国内的maven源,oschina已经关闭,目前最好的方式,就是使用阿里云的镜像: <mirr ...

  8. CentOS 6.9设置阿里云源/163源

    阿里云: 1.备份 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 2.下载新的CentOS ...

  9. Ubuntu 最新设置阿里云更新源

    可将 http://cn.archive.ubuntu.com/ubuntu/ 替换为下列任意服务器: Ubuntu 官方(欧洲,国内较慢,无同步延迟) http://archive.ubuntu.c ...

随机推荐

  1. linux网络监控脚本

    http://www.51testing.com/html/92/77492-828434.html

  2. ASP.NET--Razor-model-compare属性用法

    学习使用model中的compare属性来判断两个密码之间是否相同 [Required] [StringLength(100, ErrorMessage = "The {0} must be ...

  3. 初学JavaScript之推測new操作符的原理

    本文是一篇原理推測的文章,假设有不准确的地方请指正, 原文:http://blog.csdn.net/softmanfly/article/details/34833931 JavaScript中构造 ...

  4. [BZOJ 3884][欧拉定理]上帝与集合的正确使用方法

    看看我们机房某畸形写的题解:http://blog.csdn.net/sinat_27410769/article/details/46754209 此题为popoQQQ神犇所出,在此orz #inc ...

  5. android 九宫格(16宫格)控件

    public class NineRectView extends ViewGroup { private Context ctx; private int wSize,hSize,row,colum ...

  6. Python 对Twitter tweet的元素 (Word, Screen Name, Hash Tag)的词汇多样性分析

    CODE: #!/usr/bin/python # -*- coding: utf-8 -*- ''' Created on 2014-7-3 @author: guaguastd @name: tw ...

  7. clipper库使用的一些心得

    clipper sourceforge官网:http://sourceforge.net/projects/polyclipping/ 1. 版本号差异 之前project里面使用4.8.6,近期升级 ...

  8. (LeetCode)二叉树中和为某一值的路径

    原体例如以下: Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that addin ...

  9. 2015.04.20,外语,读书笔记-《Word Power Made Easy》 11 “如何辱骂敌人” SESSION 30

    1.brothers and sisters, wives and husbands Frater: brothers; soror: sister; uxor: wife; maritus: hus ...

  10. WebRTC开源项目一览之二

    .Kurento视频直播系统4.1  应用实例搞视频会议就会涉及一对多.多对多.广播.转码.混音.合屏.录制,这就需要用到流媒体服务器,而kurento就具有这些功能.他主要用来作为webrtc的流媒 ...