使用ddns-go实现自动配置IPv6的DDNS
Danileaf_Guo 2024-10-02 17:05:01 阅读 83
正文共:888 字 17 图,预估阅读时间:1 分钟
前面说到通过PPPoE拨号获取到的IPv6地址没有发生变化(企业路由器配置IPv6家用宽带的PPPoE拨号示例),结果说完就打脸了。中间家里停了一次电,路由器重新拨号,获取到的IPv6地址就变了。虽然我们前面配置了GRE over IPv6的隧道(配置GRE over IPv6隧道),但是因为地址变化也就失效了。
随即我就想到了之前IPv4配置的DDNS(拨号有公网Ip地址了,肯定要通过DDNS用起来啊!),但发现没有解析,查阅H3C官网资料发现IPv6域名解析不支持DDNS。
当然,也不是完全不支持,目前有一些开源的DDNS方案,如GitHub上的开源项目ddns-go就可以支持,那应该是还没有域名厂商开放这个服务吧,毕竟花生壳连IPv4的DDNS服务都停止注册了。
GitHub上ddns-go项目的链接如下:
https://github.com/jeessy2/ddns-go
如简介所说,该项目的功能还是很强悍的,可以支持ARM和x86架构,能够支持主流的macOS、Windows、Linux系统,可以对接主流的域名服务商,如阿里云、腾讯云、华为云、百度云、Dnspod、Cloudflare、Callback、Porkbun、GoDaddy、Namecheap、NameSilo和Dynadot等厂商(可惜没有天翼云)。
今天,我们以Ubuntu系统为例,简单操作一下。
首先,确认网卡的IPv6配置为Automatic自动获取,以能成功获取到IPv6地址。
查看接口获取到的IPv6地址信息。
竟然有两个IPv6地址,如果从命令行我们能看到差异,
上面的IPv6地址是零时动态地址,地址有效期比另一个短一半。
接下来,我们下载合适的程序文件。
下载链接如下:
https://github.com/jeessy2/ddns-go/releases/download/v6.6.9/ddns-go_6.6.9_linux_x86_64.tar.gz
下载完成后解压得到ddns-go文件。
ddns-go文件的可执行命令如下所示:
-c:自定义配置文件路径,默认为/root/.ddns_go_config.yaml。
-cacheTimes:间隔N次与服务商比对。
-dns:自定义DNS服务器,比如8.8.8.8。
-f:DDNS同步的间隔时间(秒)。
-l:管理页面的监听地址,默认为9876。
-noweb:不启动web服务。
-resetPassword:重置密码。
-s:配置ddns-go服务的安装、卸载与重启。
-skipVerify:跳过证书验证。
-u:更新ddns-go的版本至最新。
-v:查看ddns-go的版本信息。
所以,我们可以通过以下命令安装ddns-go,实现每60秒检查一次本地IPv6地址变化,且每30分钟对比一下IPv6变化:
./ddns-go -s install -f 60 -cacheTimes 30
访问http://192.168.1.85:9876进行配置。
登录之后,需要选择DNS服务商,并配置AccessKey ID和AccessKey Secret。
如果没有AccessKey ID和AccessKey Secret,需要到阿里云官网的AccessKey控制台进行配置,点击创建即可一键生成。注意,AccessKey只在创建时提供Secret,后续不可再进行查询,所以请在展示页面及时保存或下载CSV文件,避免无法查询。
关闭掉IPv4功能,仅启用IPv6部分,获取IP方式选择“通过网卡获取”,并在Domains处配置要解析的域名。
最后点击页面底部的“保存”按钮。
之后,ddns-go开始执行任务,成功新增域名解析,解析值为接口的第一个IPv6地址,并开始执行定时任务。
在云解析DNS控制台,可以看到新增的AAAA记录。
测试通过域名进行访问。
解析成功且能正常访问,测试成功。
长按二维码
关注我们吧
配置PPPoEv6服务器为终端分配IPv6地址
企业路由器配置IPv6家用宽带的PPPoE拨号示例
H3C MSR NAT66配置指北
配置GRE over IPv6隧道
IPsec over GRE over IPv6配置案例
如何在Ubuntu 23.10部署KVM并创建虚拟机?
通过命令行配置调整KVM的虚拟网络
将iStoreOS部署到VMware Workstation
将iStoreOS部署到VMware ESXi变成路由器
在Ubuntu系统手撸一个自动创建SSL证书的SHELL脚本
ufw命令简介
与CentOS用户态完全兼容的TencentOS你用过没?
在Ubuntu系统手撸一个自动搭建openVPN服务端的SHELL脚本
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。