347 Commits

Author SHA1 Message Date
世界
0329538ecd Fix "Fix auto_redirect dropping SO_BINDTODEVICE traffic" 2026-03-14 20:58:43 +08:00
世界
caaf8469e0 Fix auto_redirect dropping SO_BINDTODEVICE traffic
REDIRECT in the OUTPUT chain rewrites the destination to 127.0.0.1,
then ip_route_me_harder() reroutes with the socket's bound interface
constraint (flowi4_oif). Since 127.0.0.1 is only reachable via lo,
the routing lookup fails and the packet is silently dropped.

Add a fallback routing table with `local 127.0.0.1` entries for each
non-loopback interface. When the local table lookup fails due to OIF
mismatch, the fallback table provides a matching RTN_LOCAL route.
The kernel then overrides dev_out to loopback (route.c:2857), so the
packet is delivered locally to the redirect server as intended.

This fixes NetworkManager connectivity checks and other tools that
use SO_BINDTODEVICE (e.g. curl --interface).
2026-03-11 21:15:11 +08:00
世界
c81ce6d358 Fix darwin batch loop not exit on EBADF v0.8.2 2026-03-05 20:35:38 +08:00
wwqgtxx
90ea7a0b69 Fix udp/icmp not work on gso with mixed stack 2026-03-03 23:48:15 +08:00
世界
6ee3db839d Update dependencies v0.8.1 2026-03-02 06:50:15 +08:00
eronez
1fb8456021 Fix DNS not revert while close tun 2026-03-02 06:46:28 +08:00
世界
5715a3919a Fix nftablesCreateLocalAddressSets v0.8.0 v0.8.0-beta.18 2026-02-23 17:52:46 +08:00
wwqgtxx
2a33d64abc Fix logging maybe panic 2026-02-13 00:28:14 +08:00
wwqgtxx
3144f43fc2 Fix udp/icmp not work on gso with system stack 2026-02-13 00:27:34 +08:00
世界
635920688d Add back random iproute2 table index v0.8.0-beta.17 2026-02-02 14:15:26 +08:00
世界
2e21cd99ef Revert "Disable rp filter atomically"
This reverts commit 983b3caf40.
2026-02-02 14:15:10 +08:00
世界
983b3caf40 Disable rp filter atomically v0.8.0-beta.16 2026-02-01 10:46:55 +08:00
世界
1d02d635b9 Fix auto_redirect fallback rule v0.8.0-beta.15 2026-01-29 13:34:49 +08:00
世界
e88ed52dbc Fix auto_redirect on IPv6-only or IPv4-only servers v0.8.0-beta.14 2026-01-28 18:27:44 +08:00
世界
381bf9d40d Skip tun interface traffic in prerouting UDP/ICMP chain 2026-01-28 18:27:44 +08:00
世界
2377e62d4a Fix IPv6 ULA addresses excluded from local address set
The filter condition `IsGlobalUnicast() && !IsPrivate()` incorrectly
excluded ULA addresses (fc00::/7) from inet6_local_address_set,
causing DNS hijack to fail for IPv6 ULA addresses.

Fixes: sagernet/sing-box#3698
2026-01-17 20:42:31 +08:00
世界
a23b66f721 Skip strict routing on Windows versions below 10 v0.8.0-beta.13 2026-01-17 18:16:51 +08:00
世界
2f53768be2 Fix darwin batch read not exit on stop v0.8.0-beta.12 2026-01-15 02:08:56 +08:00
世界
9d97d95a9c Fix TUN interface restart fails with existing addresses 2026-01-15 02:08:55 +08:00
世界
525f783d00 Add EXP_ExternalConfiguration for Tailscale 2026-01-07 14:05:47 +08:00
世界
a5db80d710 Fix nfqueue fallback when kernel module unavailable 2025-12-31 03:47:36 +08:00
世界
a850c4f8a1 Add pre-matching support for auto redirect 2025-12-26 14:44:55 +08:00
世界
6516c2d8f1 Fix race condition in ReadPacket 2025-12-17 19:45:01 +08:00
wwqgtxx
e9e3fbf0c1 Apply ping destination filter for Windows 2025-12-01 08:47:38 +08:00
世界
20161f3059 redirect: Fix compatibility with /product/bin/su v0.8.0-beta.11 2025-10-21 20:41:16 +08:00
世界
b49e63f8ef Fix compatibility with MPTCP 2025-10-17 16:26:45 +08:00
世界
b42efe2516 Update golangci-lint 2025-09-22 12:51:12 +08:00
世界
09d1d97313 Update gVisor to v20250811.0 v0.8.0-beta.10 2025-09-15 23:55:16 +08:00
世界
67013b321e Fix race codes v0.8.0-beta.9 2025-09-12 18:02:59 +08:00
世界
0381a06643 ping: Add destination rewriter 2025-09-11 18:51:00 +08:00
世界
960457abba Update dependencies v0.8.0-beta.8 2025-09-10 22:52:15 +08:00
世界
7de8ff7f20 ping: Fix read ICMPv6 from gVisor 2025-09-09 23:22:25 +08:00
世界
a8cb01e6df Prevent panic when wintun dll fails to load 2025-09-09 18:04:19 +08:00
世界
b76e852f59 ping: Fix reject v0.8.0-beta.1 2025-08-27 20:29:08 +08:00
世界
d5865f2135 Fix gvisor loopback address 2025-08-27 16:35:53 +08:00
世界
ff49ece55d Fix checksum changes 2025-08-27 15:47:20 +08:00
世界
adc106bcf6 Improve checksum usages 2025-08-27 11:07:26 +08:00
wwqgtxx
f9bbb15bfb ping: Reduce the cost of readMsg 2025-08-27 08:45:12 +08:00
世界
4c43f4af12 ping: Fix not handling reject 2025-08-27 00:30:40 +08:00
世界
055fe13ec0 Revert "ping: Increate mapping capacity"
This reverts commit a24ab73aca.
2025-08-26 23:54:57 +08:00
世界
e8d7fc1bb2 ping: Do not use connected socket on macOS 2025-08-26 23:43:37 +08:00
世界
a24ab73aca ping: Increate mapping capacity 2025-08-26 14:41:14 +08:00
世界
b5f3fecc25 ping: Fix linux route rules 2025-08-26 14:30:21 +08:00
wwqgtxx
4fb5702443 ping: Add needFilter 2025-08-26 13:20:50 +08:00
wwqgtxx
6e4e045620 ping: Limit old requests 2025-08-26 11:47:14 +08:00
世界
79e2d3b56d ping: Clean old requests 2025-08-26 11:09:50 +08:00
世界
e6c64e3f18 Update icmp network name 2025-08-25 22:43:59 +08:00
世界
59e42c0d1f ping: Fix rewriter 2025-08-25 22:04:16 +08:00
世界
ce55929883 ping: Fix missing bind for unix socket 2025-08-25 21:28:11 +08:00
世界
144683d882 ping: Add filter to destination 2025-08-25 20:57:18 +08:00