ddns-go 会定时把本机的公网 IP 报给域名服务商,家庭宽带重新拨号换了地址之后,域名依然指得对。这里用 Docker 跑一份,解析放在 Cloudflare。
把容器跑起来
docker run -itd \
--name ddns-go \
--restart=always \
--net=host \
-v /volume1/docker/ddns-go:/root \
jeessy/ddns-go
--net=host 让它直接用宿主机网络,取到的就是本机出口 IP;配置存在挂载出来的 /root 里,容器重建不会丢。
启动后访问 http://主机IP:9876:

以 Cloudflare 为例
- 填入 Token(Token 的获取可以参考另一篇文章:跳转)
- IPv4:勾选启用,获取 IP 方式选「通过接口获取」,Domains 填入已经购买的域名

有 IPv6 地址的话,IPv6 那一栏也可以勾上启用。

这个页面会暴露到外网,公网访问直接禁止就行。

Webhook 是可选操作,IP 变化时向外回调一次。这里用的是 bark 的免费推送,对 bark 感兴趣的可以参考另一篇文章:跳转。
点 Save 就配置完了,页面右侧会显示更新结果:

最后一步:端口转发
要让外网通过域名访问,还得在入户路由器上做端口转发。家庭宽带运营商普遍封 80 和 443,转发时避开这两个端口:

最终效果:

评论
还没有人留言。