
正常域名的 dns 执行会被缓存到运营商每级的服务器内,更新域名的 ip 指向,都有一个生效时间,短则几分钟,长的几天,而 ddns ip 发生变化的时候,怎么保证立即生效的?因为家庭宽带一旦发生改变,需要里面体现出来的!
1 blogfeng 2020-02-13 09:44:52 +08:00 via Android 没有什么好办法。一般就是搞个定时器不停查最新的,发生变化就改。 |
2 chenluo0429 2020-02-13 09:48:20 +08:00 跟 TTL 有关的吧,TTL 越短,生效越快。 |
3 elfive 2020-02-13 09:54:01 +08:00 via iPhone 1. 能不用域名的时候不用域名 2. 本地或路由器能用 host 的时候用 host |
5 blueboyggh 2020-02-13 10:00:34 +08:00 没啥好办法,你告诉 dns 服务商更改后的 ip 以后,只能等待各个 dns 去刷新,几秒钟,几分钟甚至几十分钟都有可能,dns 刷新也不是你能控制的 |
6 RainyH2O 2020-02-13 10:03:04 +08:00 TTL 设置短一点不就得了么,缓存服务器记录超时失效了,这个时候你再一改不就得直接请求权威服务器了 |
7 herozzm OP @RainyH2O 运营商都遵守 TTL 超时时间吗? 就怕你这儿设置了很短,运营商那变老不刷新啊,用户开网站就是 404 |
10 JamesR 2020-02-13 10:49:49 +08:00 我是每天四点半自动重拨下,如果获得新 IP,早上起来已经全球服务器广播好了。 |
11 geekvcn 2020-02-13 10:57:59 +08:00 via iPhone @herozzm 可用性要求高,又舍不得花钱的小厂小作坊或者个人用户,建议还是加钱,加钱最少的就是买高级版域名解析服务,最短可以 1 分钟 TTL,然后配合每天早上 5 点低谷期自动重新获取 ip 比如重启路由器,通过解析服务商 api 主动刷新 dns 解析,别无他法。另外建议想好好跑业务,就老老实实租服务器,你把时间花在这种无聊的事情上和因此带来的一系列问题上,你同样的时间多挣点钱不香吗 |
12 geekvcn 2020-02-13 11:01:47 +08:00 via iPhone @herozzm 另外主流运营商 DNS 和 114 之类的第三方 DNS 解析没必要给你的域名解析提高 ttl,这样变相降低自己服务的可靠性,你用户半年不刷新缓存是因为他们本地的缓存策略,比如 dnsmasq 之类的 |
13 geekvcn 2020-02-13 11:03:25 +08:00 via iPhone 你无法控制用户的 dns 缓存,所以老老实实加钱,你的问题无解,只能缓解,最佳方案就是我上面给你的 |
14 LU35 2020-02-13 11:12:49 +08:00 via Android @geekvcn 现在使用的 cloudflare 管理域名,并使用脚本做 ddns 更新,为何切换 ip 记录后用其他不同网络设备测试大概也就 1 分钟不到记录就切换了。 |
15 locoz 2020-02-13 11:15:32 +08:00 via Android 缓存问题基本无解,你可以用 DNS over HTTP 或 HTTP DNS 来变相解决自己客户端这边的缓存问题,但对别人就没办法了。 还有一个对别人有效的办法就是自建 DNS,但是首先你要有一台能开端口的服务器。 或者如果你对域名经常变动无感的话,可以选择每次更换 IP 都随机换一个域名去更新,这样也能避开下级 DNS 的缓存。 |
16 locoz 2020-02-13 11:17:45 +08:00 via Android @RainyH2O #6 以阿里云为例,TTL 即使设置到 1,它也不会真的按 1 来。之前提工单,人家说如果设置太低的话,后台会默认提高一些 TTL。(也不知道给个这个选项是干嘛… |
18 Debuger94 2020-02-13 11:22:14 +08:00 既然用家庭宽带来做域名解析就要承担相应的风险,用户量大或者做实时在线服务的话用家庭宽带肯定不行的 |
20 gqbre 2020-02-13 11:26:00 +08:00 很快的,不放心的话建议半夜更换 |
21 tankren 2020-02-13 11:27:49 +08:00 家宽哪来的用户????? |
22 herozzm OP |
23 geekvcn 2020-02-13 11:39:20 +08:00 via iPhone 你自己设备 |
26 CEBBCAT 2020-02-13 11:59:49 +08:00 via Android 家宽不是查得很严吗?架网站有被掐网线的案例 |
27 mattx 2020-02-13 12:03:52 +08:00 via iPhone 自己小打小闹可以,上正常的业务会有很多问题。 |
29 liukanshan 2020-02-13 16:12:32 +08:00 你这个转发方案带宽跑不满不说 成本也上去了 我使用 ddns 有好几年了 真正在使用而 dns 更新延迟 很少遇到 你要先确认下这个需求是不是伪需求 ddns 到目前为止 针对家庭私有云 是最完美的方案 其次是 p2p 再其次是转发。 |
30 txydhr 2020-02-13 17:11:24 +08:00 via iPhone 10 分钟检查一次,ttl 设置成 10 分钟,够用了。 |
31 newmlp 2020-02-13 17:21:20 +08:00 hook 掉 dns 查询,然后自己实现 |
32 LU35 2020-02-13 19:45:41 +08:00 via Android @locoz 恩,仔细看了阿里云 dns 的网站帮助,企业旗舰版可以设置 1 秒、但是和你说的并不一样 ,他的确生效时间为 1 秒。 |
33 locoz 2020-02-13 19:57:30 +08:00 @LU35 #32 没啊,我即使去请求阿里云自己的 DNS,也还是会有缓存问题,需要等待 1-10 分钟不等。之前工单那人也是跟我说建议设成分钟级的。难道说现在改了? |
34 kljsandjb 2020-02-14 04:56:23 +08:00 via iPhone |
35 INTEL2333 2020-02-15 22:38:47 +08:00 via Android 没办法,没生效但是网络变化了只能靠路由本身回报,你试试弄个通过邮件或者 WeChat 给你发变化信息咯,像梅林的 server 酱插件一样 |