aliyun-dns-ddns
Version:
阿里云动态DNS自动更新库
79 lines (50 loc) • 1.96 kB
Markdown
# 阿里云动态DNS自动更新库 aliyun-dns-ddns
这是一个使用 TypeScript 编写的动态DNS(DDNS)自动更新库,基于阿里云新版SDK `@alicloud/alidns20150109` 实现。它可以定时检测当前公网IP地址,并自动更新阿里云DNS解析记录,适合用于公网IP经常变化的场景。
## 功能特点
- 使用阿里云官方新版SDK,支持TypeScript,类型安全。
- 通过访问 `https://myip.ipip.net` 获取当前公网IP,支持国内访问。
- 支持更新主域名(根域名)或任意子域名的A记录。
- 使用 `node-schedule` 实现定时任务,每小时自动检测并更新IP。
- 详细的日志输出,方便调试和监控。
## 环境要求
- Node.js 16 及以上版本
- npm 包管理器
## 安装
```bash
npm install aliyun-dns-ddns
```
## 使用示例
```typescript
import { AliyunDDNS } from 'aliyun-dns-ddns';
const ddns = new AliyunDDNS(
'你的AccessKeyId',
'你的AccessKeySecret',
'你的域名',
'A', // 记录类型
'@', // 主域名用 '@',子域名用对应的名称
'cn-hangzhou' // 地域ID
);
// 启动定时任务,默认每小时执行一次
// 你也可以传入自定义的Cron表达式
// ddns.startSchedule('*/5 * * * *'); // 每5分钟执行一次
ddns.startSchedule();
```
## 反馈与支持
如果您在使用过程中遇到任何问题,或者有功能建议,欢迎通过GitHub Issues提交反馈。
我们会尽快处理并持续改进。感谢您的支持!
项目地址: [https://github.com/ArvZhou/aliyun-ddns](https://github.com/ArvZhou/aliyun-ddns)
## 注意事项
- 请确保您的阿里云账号有操作DNS的权限。
- 请确保服务器可以访问 `https://myip.ipip.net` 以获取公网IP。
- 如果需要更改定时任务频率,请调用 `startSchedule` 方法时传入自定义的 Cron 表达式。
## 许可证
MIT
如果您有任何问题或建议,欢迎反馈!