我是代码可乐,分享一下 Mac 配置 DDNS 动态解析域名,更新本地 IPv6 地址。
主要方式是使用本地 Docker 服务 + jeessy2/ddns-go + Docker compose 配置编排。
环境准备
- Mac 本地已安装 Docker Desktop。我的版本:4.34.3 (170107)
配置 Docker 支持 Host 网络模式
修改 Docker Desktop,开启 Host 网络模式,重启 Docker。
构建本地 Docker Compose
创建 compose 目录 my-home-mac-ddns 和 compose.yml 文件,参考:
% tree my-home-mac-ddns
my-home-mac-ddns
└── compose.yml
compose.yml 文件,参考
services:
my-home-mac-ddns:
container_name: my-home-mac-ddns # 容器名称
image: jeessy/ddns-go # 指定 Docker 镜像
restart: always # 重启策略
network_mode: "host" # 使用 Host 网络模式
volumes:
- ./root:/root # 挂载 root 目录
创建和启动容器
my-home-mac-ddns % docker compose up -d
[+] Running 1/1
✔ Container my-home-mac-ddns Started
更新 ddns--go 域名解析配置
参考官方文档:github.com/jeessy2/ddn…
- 打开 http://localhost:9876/ 初始化。
- 根据提示,初始化登录密码.
- 配置 DDNS 服务商,我用的 Cloudflare 服务。
- 配置 IPv6 获取方式,我用的通过外网站点接口获取。接口地址:speed.neu6.edu.cn/getIP.php
参考配置截图:
ping6 解析和日志验证
ping6 解析域名正常。
% ping6 xxx.xxx.com
PING6(56=40+8+8 bytes) xxxx:xxxx:xxxx:xxxx:84c5:xxxx:xxxx:xxxx --> xxxx:xxxx:xxxx:xxxx:84c5:xxxx:xxxx:xxxx
16 bytes from xxxx:xxxx:xxxx:xxxx:84c5:xxxx:xxxx:xxxx, icmp_seq=0 hlim=64 time=0.189 ms
16 bytes from xxxx:xxxx:xxxx:xxxx:84c5:xxxx:xxxx:xxxx, icmp_seq=1 hlim=64 time=0.205 ms
^C
查看日志域名解析正常。
全文完。