NameSilo的DDNS动态域名解析脚本,支持IPv6




NameSilo DDNS是一个用于NameSilo的动态域名解析服务,适用于家庭宽带,它能自动检测家庭宽带的IP变动,并自动更新域名的解析。

GitHub项目地址

https://github.com/Charles94jp/NameSilo-DDNS

项目语言是python3

项目特性:

  • 安装、启动简单,且有丰富的可配置项

  • 日志记录和滚动

  • 具有邮件提醒功能,可及时报告各种信息

  • 支持docker运行,docker pull即可完成安装

  • 支持同时更新多个域名

  • 支持IPv6



一、背景

内网一映一射,内网一穿一透,在外访问家里的机器的方案

IPv4

目前运营商给家庭宽带的IP都是动态的,庆幸的是虽然IP地址不固定,但分配到家庭路由器的却是一个实实在在的公网IP,所以我们只需设置光猫为桥接模式 + 使用路由器拨号 + 设置路由器NAT映射即可在公网访问家庭的设备。我们路由器映射22端口就能远程家里的linux,映射445+3389端口就能用win10自带远程桌面远程家里的windows。如下图

为解决公网IP的变动,可以购买一个域名,使用DDNS(Dynamic Domain Name Server,动态域名服务)将域名解析到宽带的IP。这样就可以在家搭建各种服务并通过访问固定的域名来访问,而无需租用昂贵的公网服务器

想实现这个目的,你需要购买一个域名,且有一台一直运行的电脑来运行此DDNS程序

IPv6

IPv6就简单了,运营商目前都给宽带配备了IPv6地址,只需在路由器上开启IPv6功能,电脑上确保有IPv6地址和DNS服务器地址即可使用IPv6联网。如果开了全局代理记得测试时关掉。

只要路由器的防火墙策略未限制外网流量访问内网,则无需NET映射,就能通过IPv6地址访问内网机器!



1.1 域名商推荐

域名商除了给我们一个域名,还负责给我们提供DNS解析,绑定域名到对应IP

我这里推荐NameSilo,第一个原因是他不需要备案,而阿里云、腾讯云等国内域名商是要走备案程序的,比较麻烦,博主前几年备案记得是需要在收到阿里云寄给我的幕布后,拍手持身份证照片,然后才能备案,域名过期后还要注销备案,不然别人拿你域名去干坏事...

二是他有api开放,能通过api来更新域名状态

三是他虽是国外域名商,但是可以通过微信支付,无需境外银行卡



二、其他DDNS方案推荐

都是用到了curl发送请求,把响应保存到文件中 ,再用脚本处理字符串。单个文件就能解决,不过脚本语言特别是Windows的batch语法不是很友好,一般做运维的可能比较熟悉脚本语言。

Windows :https://www.v2ex.com/t/274392
Linux       :https://github.com/pztop/namesilo_ddns

还有一个Windows powershell脚本实现的

https://www.ctrol.cn/post/freesource/domain-host/05-25-cartev-4719.html



posted @ 2020-12-11 12:50  云牧青  阅读(5581)  评论(0编辑  收藏  举报