Commit Graph
43 Commits
Author SHA1 Message Date
世界 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
neletorand世界 6fdd08ac2d Add support for ech retry configs 2026-01-17 05:44:26 +08:00
Gavin Luoand世界 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 Zhangand世界 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
安容and世界 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
caelansarand世界 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
iikiraand世界 39ef5ddde0 Fix UDP DNS server crash
Signed-off-by: iikira <i2@mail.iikira.com>
2025-07-08 13:12:31 +08:00
dyhkwongand世界 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
k9982874and世界 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