提供一个 ddns 更新的思路

2022-05-18 19:07:16 +08:00
 cloudsigma2022

RT ,

最近 cf 更新似乎有点问题,每次重启光猫或路由器,要尝试很多次才能更新 ddns 。

正好,手里有个 n1 , 安装 openwrt ,在 op 上 安装 docker 版的 nodered + homeassisstant 。

所以,利用 ha 的集成 dnsip 去更新 ddns ,一旦发现 ip 变化,会自动更新。

bbs.hassbian.com/forum.php?mod=viewthread&tid=16149

s2.loli.net/2022/05/18/jrXOlPgykVhw5zo.png

2493 次点击
所在节点    宽带症候群
14 条回复
gam2046
2022-05-18 19:39:26 +08:00
先 openwrt ,在 home assisstant ,最后就为了一个 ddns 是不是太重了。

试试这个,虽然写的丑,但是能用

https://gist.github.com/Lua12138/eee59d5f2a04e1d238303d9c2337c25e

一共接受 4 个参数 CF_API_TOKE 、CF_DOMAIN 、CF_DNS_DOMAIN 、CHECK_CYCLE

需要依赖 jq curl bash
i3x
2022-05-18 23:45:31 +08:00
@gam2046 +1 。。。。
另外我有一个精简的 ddns 只有 7 行,只支持 dnspod 。3322 取 ip 。当然我这移动就算公网 ip 也不能用。会错误检测出电信 ip 。
大佬这个代码怎么发的我也来一发
cloudsigma2022
2022-05-19 06:46:34 +08:00
@gam2046
@i3x
两位,shell 脚本的有,看第二行描述,要尝试很多次才能更新。
这个思路是给有 ha 和 nr 环境下的
lovelylain
2022-05-19 09:16:47 +08:00
我也是用 nr 做的,走 dnspod 的 api ,定期检查有没有公网 ip 以及 ip 有没有变化,没有公网 ip 就恢复为云主机 ip 。宽带最开始没有公网 ip ,后来自动变公网了,就折腾了这些,结果没用几天又变回内网 ip 了。现在还能用的部分功能是 frp 跑 xtcp 模式后,微信发指令修改 ip 为 xtcp visitor.
neroxps
2022-05-19 13:02:26 +08:00
ddns 这种希望稳定运作的服务我是不可能放在 homeassistant 上的。homeassistant 折腾的话有可能会折腾出问题。
我总结经验就是,主路由不应该折腾,我是买了个 ROS 路由器,将 vpn ddns 期望稳定的服务我都放上面跑。下面的网络,系统,如何折腾,如何搞,都不会影响这些服务。
wkmike
2022-05-19 14:27:18 +08:00
要不试试 dnsomatic ?
sunnysab
2022-05-19 17:51:23 +08:00
我这边考虑到 dnspod 免费版的 TTL 最低只能设置为 60, 上个月研究了半天自己在云服务器上建了个 DNS 服务器跑 DDNS...
TTL 随心设置...为的是切 IP 的时候能马上恢复 :D
i3x
2022-05-19 23:03:25 +08:00
@cloudsigma2022 既然能跑 ha 。。。更底层的系统跑 ddns 脚本不是更稳定? windows 的话用计划任务,类 unix 用 shell 。这种底层的基建侵入 ha 之类的有什么优势呢?
你说是尝试很多次更新,可能就是 DNS 缓存的问题。如果你觉得不爽,可以改成更新后就另外邮件什么的各种方式实时通知喽
i3x
2022-05-19 23:06:59 +08:00
@sunnysab dnspod 有 ddns api ,通过此 api ttl 强制=10 。虽然很良心,但是没什么用,运营商有 dns 缓存。各大公共 dns 服务器好像也不怎么遵循这个 ttl 。github 看过好几款都不是用 ddns 专用的 api ,而是普通修改 a 记录的。


@neroxps 我也是。存储、网络都不虚拟化。不搞 all in boom 。。。不过。我会在专门的虚拟机折腾,然后迁移到特定的生产环境。不会折腾 boom 。不知道大家有没有这样还是直接每次都直接折腾生产环境。
neroxps
2022-05-20 07:57:41 +08:00
@i3x 哈哈,家里条件不允许,在生产环境配置主路由的时候大概脑子里都有清晰的配置思路,基本上排除了配置错误导致 vpn 流量被 drop 的情况。只要主路由 vpn 还能用,基本就能恢复。
461da73c
2022-05-20 23:35:23 +08:00
我用 go 写了个 阿里云的,很好用,在 N1 上跑了几个月了,从来没出过问题。
missdeer
2022-05-21 11:56:22 +08:00
我也是用 go 自己写了一个简单的 https://github.com/missdeer/ddnsclient
v2tudnew
2022-05-21 19:49:18 +08:00
公共 DNS 服务器,基本上最低 TTL60 ,不过可以设置半夜重拨倒也没啥区别。
fat00119
2022-05-23 02:16:08 +08:00
@i3x 分享一下?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/853774

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX