28 Commits

Author SHA1 Message Date
Jiahao Lu
45c10a17a6
Fix: DNS NCACHE TTL and OPT RRs (#2900)
* Fix: DNS NCACHE TTL and OPT RRs

1. DNS NCACHE was not correctly implemented.
2. OPT RRs must not be cached or forwarded.

Closes #2889.
2023-08-24 23:28:04 +08:00
Jiahao Lu
e1ec0d25a6
Fix: DNS cache max-age (#2850)
Regarding DNS cache, it's advisable to not rely on the TTL values
mentioned in the Ns and Extra sections. Otherwise, any DNS queries
that do not yield any results (such as for non-existent.example.com)
will be accidentally cached.

The need for the ACME challenge hack has been eliminated and as
such, it has been removed.
2023-07-29 13:18:12 +08:00
KaitoHH
257fcef0b8
Fix: adjust DNS TTL values based on minimum value (#2706)
This commit adds an updated function that adjusts
the TTL values of DNS records are based on the minimum TTL
the value found in the records list so that all records share the
same TTL value. This ensures consistency in the cache
expiry time for all records to prevent caching issues.
2023-04-30 12:18:20 +08:00
Jiahao Lu
8f9b39c62e
Fix: potential panic in putMsgToCache (#2634)
When the upstream DNS server returns a message that contains no
questions (i.e. QDCOUNT == 0), `putMsgToCache` will trigger an
out-of-range panic.

Issue: #2524
Comment: https://github.com/Dreamacro/clash/issues/2524#issuecomment-1477477601
2023-03-21 19:36:49 +08:00
ALICE
4a57917783
Chore: skip cache acme challenge dns msg (#2469) 2022-12-22 13:30:23 +08:00
Dreamacro
a3281712e2 Chore: reduce dhcp dns client cost 2022-08-24 21:36:19 +08:00
Skyxim
93400cf44d
Fix: ALPN should on DoH instead of DoT (#2232) 2022-07-25 12:41:22 +08:00
Hongqi Yu
c1285adbf8
Feature: can set custom interface for dns nameserver (#2126) 2022-06-01 10:50:54 +08:00
Dreamacro
81d5da51a3 Fix: unexpected proxy dial behavior on mapping mode 2021-10-18 21:08:27 +08:00
Dreamacro
f1cf7e9269 Style: use gofumpt for fmt 2021-10-10 23:44:09 +08:00
Dreamacro
b9d470cf79 Fix: dhcp client should request special interface 2021-10-05 13:31:19 +08:00
Kr328
a5b950a779
Feature: add dhcp type dns client (#1509) 2021-09-06 23:07:34 +08:00
Dreamacro
995aa7a8fc Fix: remove ClientSessionCache and add NextProtos for vmess to fix #1468 2021-07-03 20:34:44 +08:00
Dreamacro
f4de055aa1 Refactor: make inbound request contextual 2021-01-23 14:58:09 +08:00
Dreamacro
bc52f8e4fd Chore: return empty record in SVCB/HTTPSSVC on fake-ip mode 2020-10-13 00:15:49 +08:00
Dreamacro
59bda1d547 Change: local resolve DNS in UDP request due to TURN failed 2020-06-12 23:39:03 +08:00
Comzyh
b979ff0bc2
Feature: implemented a strategy similar to optimistic DNS (#647) 2020-05-07 15:10:14 +08:00
Texot
b1cf2ec837
Fix: dns tcp-tls X509.HostnameError (#638) 2020-04-17 11:29:59 +08:00
Kaming Chan
082847b403
Chore: support MarshalYAML to some config filed (#581) 2020-03-15 19:40:39 +08:00
Dreamacro
46edae9896 Fix: domain dns crash 2020-02-17 22:13:15 +08:00
Dreamacro
d75cb069d9 Feature: add default-nameserver and outbound interface 2020-02-15 21:42:46 +08:00
Comzyh
e68c0d088b Fix: upstream dns ExchangeContext workaround (#468) 2020-01-10 14:13:44 +08:00
Kirill Motkov
f4326daaa4 Chore: code style improvements (#361) 2019-10-14 17:13:23 +08:00
Dreamacro
bc3fc0c840 Feature: support DoH 2019-06-28 12:29:08 +08:00
Dreamacro
f352f4479e Feature: support fakeip 2019-05-03 00:05:14 +08:00
Dreamacro
ca5399a16e Fix: dns cache behavior 2019-02-23 20:31:59 +08:00
Dreamacro
f93d6aa294 Fix: crash when dns not set 2018-12-05 21:52:31 +08:00
Dreamacro
03c249ecb1
Feature: add custom DNS support (#56) 2018-12-05 21:13:29 +08:00