Linux纯Shell实现DNSPod动态域名

**开发背景:**

公司有台嵌入式拨号上网设备,内置busybox和完整wget命令(支持https协议),但没有curl、python、ruby、php等扩展工具可用。网上现有基于DNSPod实现的Linux脚本无法在该设备上运行,于是写了个Shell版动态域名客户端(ddnspod),现在发布出来希望能给需要的朋友带来一些方便。

**项目源码:**

https://github.com/anrip/dnspod-shell

**DnsPod官方文档**

https://support.dnspod.cn/Support/api

**功能介绍:**

– 优雅的函数封装,灵活的更新策略
– 基于DNSPod最新用户API实现动态域名客户端
– 支持基于系统计划任务实现更新,防止脚本意外终止
– 可运行于多数类unix系统中,包括部分嵌入式小型系统
– 依赖sed/wget/nslookup命令,wget也可使用curl替代

**更新说明:**

2015年7月7日
– 使用D+服务获取域名解析

2013年8月9日
– 修正一处笔误

2013年8月8日
– 默认DNS查询服务器更换为114.114.114.114

2013年5月23日
– [[]]替换为[],防止一些嵌入设备无此命令

2013年4月1日
– 完善说明文档
– 优化全局变量定义
– 刚发现DnsPod官方API示例已收录本文

2013年3月29日
– 从dns服务器获取子域名IP
– 实现仅IP变更后才提交更新

2013年3月28日
– 现在是13年3月,故而第一个版本就定为v3.3吧
– 使用APIv4.6实现简单的动态更新功能

**常见问题:**

record line invailid 将脚本保存为utf-8格式即可
Record id invalid 检查账号权限、是否冲突等