Commit Graph

46 Commits

Author SHA1 Message Date
世界
82482741df Fix fake-ip address allocation 2026-03-03 21:37:24 +08:00
dyhkwong
28c1f2c51e Fix IPv6 local DNS on Windows 2026-03-01 12:30:43 +08:00
世界
f085917d8c Fix DNS transports 2026-01-17 05:48:41 +08:00
世界
9b7dc7f877 Revert "Stop using DHCP on iOS and tvOS" 2026-01-17 05:47:32 +08:00
世界
529f050a56 Use a more conservative strategy for resolving with systemd-resolved for local DNS server 2026-01-17 05:46:23 +08:00
世界
63a1edc0de Update quic-go to v0.55.0 2026-01-17 05:46:13 +08:00
世界
47392e55a2 Add support for kTLS
Reference: https://gitlab.com/go-extension/tls
2026-01-17 05:44:42 +08:00
世界
6f00a94eb9 Fix resolve using resolved 2026-01-17 05:44:29 +08:00
世界
958799e85e Stop using DHCP on iOS and tvOS
We do not have the `com.apple.developer.networking.multicast` entitlement and are unable to obtain it for non-technical reasons.
2026-01-17 05:44:28 +08:00
世界
ce778e569b Improve local DNS server on darwin
We mistakenly believed that `libresolv`'s `search` function worked correctly in NetworkExtension, but it seems only `getaddrinfo` does.

This commit changes the behavior of the `local` DNS server in NetworkExtension to prefer DHCP, falling back to `getaddrinfo` if DHCP servers are unavailable.

It's worth noting that `prefer_go` does not disable DHCP since it respects Dial Fields, but `getaddrinfo` does the opposite. The new behavior only applies to NetworkExtension, not to all scenarios (primarily command-line binaries) as it did previously.

In addition, this commit also improves the DHCP DNS server to use the same robust query logic as `local`.
2026-01-17 05:44:28 +08:00
世界
dd489ab415 Use resolved in local DNS server if available 2026-01-17 05:44:28 +08:00
neletor
6fdd08ac2d Add support for ech retry configs 2026-01-17 05:44:26 +08:00
Gavin Luo
e923f63606 Fix reset buffer in dhcp response loop
Previously, the buffer was not reset within the response loop. If a packet
handle failed or completed, the buffer retained its state. Specifically,
if `ReadPacketFrom` returned `io.ErrShortBuffer`, the error was ignored
via `continue`, but the buffer remained full. This caused the next
read attempt to immediately fail with the same error, creating a tight
busy-wait loop that consumed 100% CPU.

Validates `buffer.Reset()` is called at the start of each iteration to
ensure a clean state for 'ReadPacketFrom'.
2026-01-05 17:46:59 +08:00
世界
8179612f4d Fix trailing dot handling in local DNS transport 2025-10-16 21:43:12 +08:00
世界
869528acba Improve HTTPS DNS transport 2025-10-09 23:45:23 +08:00
世界
c525437256 Fix UDP exchange for local/dhcp DNS servers 2025-09-13 12:26:48 +08:00
世界
f0292d30ef Fix TCP exchange for local/dhcp DNS servers 2025-09-12 21:58:48 +08:00
世界
709cdc1f95 Fix DNS exchange 2025-09-12 18:05:02 +08:00
世界
71089ea924 Fix dhcp fetch 2025-09-12 11:03:13 +08:00
世界
f419d0ce5e Fix timeout check 2025-09-10 22:42:40 +08:00
世界
979b6df8d2 Fix DNS packet size 2025-09-08 09:12:30 +08:00
世界
5a401ea2bf Improve DHCP DNS server 2025-09-02 17:55:26 +08:00
世界
8d5f1ad310 Update golangci-lint to v2 2025-08-13 23:37:40 +08:00
Youfu Zhang
00dbe21d73 Fix libresolv initialization
Fixes: 76f7c003ca ("Update libresolv usage")

Signed-off-by: Youfu Zhang <zhangyoufu@gmail.com>
2025-08-10 20:06:28 +08:00
世界
b64231debe Fix UDP DNS buffer size 2025-07-18 12:20:33 +08:00
世界
c9064a4d34 Fix DNS reject check 2025-07-08 13:14:46 +08:00
世界
427804fe30 Fixed DoH server recover from conn freezes 2025-07-08 13:14:45 +08:00
世界
76f7c003ca Update libresolv usage 2025-07-08 13:14:45 +08:00
世界
ca912aa72f Add resolved service and DNS server 2025-07-08 13:14:41 +08:00
安容
3ee134a6ec Report invalid DNS address early 2025-07-08 13:12:34 +08:00
世界
a296b1da3f Fix DNS lookup 2025-07-08 13:12:33 +08:00
caelansar
80d3e7dd99 Fix callback deletion in UDP transport 2025-07-08 13:12:32 +08:00
世界
4f83e98736 Improve local DNS server 2025-07-08 13:12:32 +08:00
iikira
39ef5ddde0 Fix UDP DNS server crash
Signed-off-by: iikira <i2@mail.iikira.com>
2025-07-08 13:12:31 +08:00
dyhkwong
8fb559781c Fix DNS over QUIC stream close 2025-07-08 13:12:30 +08:00
世界
96f078e252 Explicitly reject detour to empty direct outbounds 2025-07-08 13:12:28 +08:00
世界
e41fdfe58a option: Fix marshal legacy DNS options 2025-07-08 13:12:26 +08:00
世界
cb56bdbfef Fix http3 DNS server connecting to wrong address 2025-07-08 13:12:25 +08:00
k9982874
fe2239266a Fix hosts DNS server 2025-07-08 13:12:24 +08:00
世界
f11a17ebd1 Fix UDP DNS server crash 2025-07-08 13:12:24 +08:00
世界
6cae3e54d1 Move predefined DNS server to rule action 2025-07-08 13:12:23 +08:00
世界
854ce0d574 Fix DNS fallback 2025-07-08 13:12:21 +08:00
世界
092c2919d8 documentation: Fix missing hosts DNS server 2025-07-08 13:12:20 +08:00
世界
2a623c4b2f Add fallback local DNS server for iOS 2025-07-08 13:12:18 +08:00
世界
1345ed2ff2 Get darwin local DNS server from libresolv 2025-07-08 13:12:18 +08:00
世界
f75ade1991 refactor: DNS 2025-07-08 13:12:14 +08:00