# ddns.py
```bash
@author tinko
@version 0.1.0
```
ddns.py 是基于 [DNSPod](http://www.dnspod.cn/docs/records.html#dns) 服务的动态 DNS 脚本,用于检测 IP 变化并更新至 DNSPod,支持多域名解析。支持 Linux 设备,包括树莓派([Raspberry Pi](https://www.raspberrypi.org/))。不需要手动添加解析,也不需要人工获取 domain_id 和 record_id,只要跟着教程来,小白都可以很快上手(软件都不会安装的除外)。有些朋友的电脑上安装了多个版本的Python,特别是同时有Python2和Python3的朋友,请注意区分版本。
如果不想安装Python3的小伙伴请前往[ddns](https://github.com/dingguotu/ddns)。
---
## 关键词
1. domain 域名
2. sub_domain 二级域名,子域名
## 前置条件
1. Git
2. python 3
3. DNSPod 账号
## 使用方法
首先,确保已经安装 [git](https://git-scm.com/) 客户端以及 [python 3.*](https://www.python.org/downloads/),我使用的是python 3.8.0
---
通过本命令获取 ddns.py
```bash
git clone https://github.com/dingguotu/ddns-py3.git
```
---
接下来到DNSPod中创建API Token,具体步骤是:登录DNSPod -> 进入控制台 -> 用户中心 -> 安全设置 -> 开启API Token(已开启的点击查看) -> 创建API Token(**Token只会显示一次,以后将没办法查看已有的Token,请务必保管好自己的Token,如果不慎丢失,可以删除后重新创建,但是程序里也要及时修改,以免导致程序不能正常运行**)
---
如果域名是在阿里云或其他非腾讯云处购买的,还需要进入相对应的服务商控制台,修改域名的DNS地址为:
```bash
ns1.alidns.com
ns2.alidns.com
```
---
复制 `conf.sample.json` 文件,并重命名为 `conf.json`,根据您的DNSPod设置修改 `conf.json` 文件,填入以下内容:
```bash
{
"access_key": <api_token_id>,
"access_secret": <api_token>,
"domains": [
{
"name": <first_domain>,
"sub_domains": [<first_sub_domain_name>, <second_sub_domain_name>,...]
},
{
"name": <second_domain>,
"sub_domains": [<first_sub_domain_name>, <second_sub_domain_name>,...]
}
]
}
```
`domains`部分,想绑定几个就写几个,不需要多写,`sub_domains`通常写 `@` 和 `*` 就够了,二级子域名直接用 `*` 代替,然后在自己的代理服务器(IIS,nginx,Apache等)上面去进行绑定。domain 和 sub_domain 可以不需要事先手动绑定,本程序会自动识别
---
最后设置 crontab 定时任务,以便更新DNS记录:
```bash
sudo crontab -e
/30 * * * * python /home/pi/ddns/ddns.py
```
本教程的定时任务是Linux版本,`/30` 表示每隔30分钟运行一次,可以自行修改,本教程不做限定。`/home/pi/ddns/ddns.py` 是绝对路径,请根据实际情况进行修改
Windows版请自行学习[Windows 任务计划](https://jingyan.baidu.com/article/0964eca26a53b08285f536d2.html)
好家伙VCC
- 粉丝: 2391
- 资源: 9142
最新资源
- VB6 Mini(工程作业)
- 暑假社会实践活动调研登记表.docx
- 水生生物增殖放流工作监督表(放流现场计数时用表).docx
- 水生生物增殖放流工作监督表(运输前计数时用表)、巡查管护工作记录表.docx
- 小学各年级寒假体育锻炼计划表(1-6年级).docx
- 小学寒假体育寒假作业建议清单表格.docx
- 学生德行素质考评表.xls
- 学期考试学生成绩分析表.doc
- 学生健康饮食指导清单.docx
- 学生综合素质测评评分表(5个表格).xlsx
- 学术报告专题讲座审批表.doc
- 学院及专业(方向)中英文对照表.docx
- 学院用印申请签.docx
- 状态机业务总览.pdf
- MPC+NMPC模型预测控制从原理与代码实现组合装 MPC包括: mpc模型预测控制详细原理推导 matlab和c++两种编程实现 四个实际控制工程案例: 双积分控制系统 倒立摆控制系统 车辆运动学
- 人工智能与大数据综合设计报告 EMNISTBalanced 数据集的分类与分析
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈