1
dcty 2022-06-18 19:50:22 +08:00 via Android
adg ,乐观缓存
|
2
JiaNa OP @dcty
我试一下。 Adguard Home Optimistic DNS > When the local DNS cache expires, Adguard Home can continue answer with the IP in the local cache results with 1 TTL, while a new DNS query is made to update the cache. If client can still connect to the server by using the old results, then that's great and reduces the time waiting for DNS query. And if not, after a short TTL, the new DNS result can be sent to client and reconnect again. > https://github.com/AdguardTeam/AdGuardHome/issues/2145 |
3
ByteCat 2022-06-18 23:44:14 +08:00 via iPhone
路由器不应该自带这种功能么,RouterOS 和 爱快 我看都有,自建可以用 AdguardHome 也可以的。
|
4
Buges 2022-06-18 23:55:36 +08:00 via Android
这个功能应该由终端的操作系统(或网络库)实现,在任何中间 dns 转发器和递归解析器中实现很容易导致各种错误。应用无法区分错误是网络问题,还是已过期 dns 导致的,因而无法专门为已过期 dns 实现对应的重试行为。
如果链路中多个 dns 转发器都开了这种功能,那情况就更复杂了。 |
5
v2tudnew 2022-06-19 00:06:39 +08:00
用了乐观缓存后,下游 DDNS 用户都说好,亲自上门送菜刀。
|
6
ladypxy 2022-06-19 06:09:00 +08:00 via iPhone
adguard home 即可
|
8
gdyan2001 2022-06-19 07:53:59 +08:00
mosdns
|
9
JiaNa OP @v2tudnew
我目前没有遇到问题。你遇到什么问题?对于过期的 DNS 记录,乐观缓存只返回 TTL 为 1 的 DNS 记录。下游有问题也只是 1 秒钟,等到 ADG 更新完之后,客户端再次请求,又是正确的了。 |
10
zhjits 2022-06-19 12:19:05 +08:00
|
11
v2tudnew 2022-06-19 12:56:53 +08:00
@JiaNa #9 有没有想过浏览器会强制 1TTL 缓存 60 秒?而且多子域名每个第一次打开都是上次的记录又要等 60 秒?
当然你可能没这么用。 |
12
JiaNa OP |
14
gdyan2001 2022-06-19 18:22:33 +08:00
|
15
bailliesun 2022-06-19 22:36:44 +08:00 via Android
NEXTDNS 有这个功能
|
16
yaott2020 2022-06-20 10:08:35 +08:00 via Android
mosdns 不错,我的方案是 mosdns+dnsmasq
|