1
0
mirror of https://github.com/MetaCubeX/mihomo.git synced 2025-09-19 03:56:01 +08:00
Commit Graph

666 Commits

Author SHA1 Message Date
71a8705636 fix: remote dst parse 2025-05-31 22:57:05 +08:00
c0f452b540 chore: more unmap for 4in6 address 2025-05-29 10:14:06 +08:00
a1c7881229 chore: rebuild udp dns resolve
The DNS resolution of the overall UDP part has been delayed to the connection initiation stage. During the rule matching process, it will only be triggered when the IP rule without no-resolve is matched.

For direct and wireguard outbound, the same logic as the TCP part will be followed, that is, when direct-nameserver (or DNS configured by wireguard) exists, the result of the matching process will be discarded and the domain name will be re-resolved. This re-resolution logic is only effective for fakeip.

For reject and DNS outbound, no resolution is required.

For other outbound, resolution will still be performed when the connection is initiated, and the domain name will not be sent directly to the remote server at present.
2025-05-27 10:45:26 +08:00
88419cbd12 chore: better parse remote dst 2025-05-26 01:12:35 +08:00
b1d12a15db chore: proxy's ech should fetch from proxy-nameserver 2025-05-22 17:42:40 +08:00
dc958e6a39 feat: add ech-opts for hysteria/hysteria2/tuic outbound 2025-05-17 18:41:39 +08:00
8a5f3b8909 chore: simplify port hop costs 2025-05-17 17:06:38 +08:00
c6d7ef8cb8 feat: add ech-opts for anytls/shadowsocks/trojan/vmess/vless outbound 2025-05-17 13:53:21 +08:00
5cf0f18c29 feat: reality add support-x25519mlkem768, it only works with new version server 2025-05-15 14:54:43 +08:00
f91a586da8 fix: inline proxy provider's healthcheck not work 2025-05-13 19:00:32 +08:00
76e9607fd7 chore: move start healthcheck.process() from New to Initial in provider
avoid panic cause by build-in proxy have not set to tunnel
2025-05-13 01:12:06 +08:00
23e2d3a132 chore: rebuild provider load 2025-05-12 22:19:49 +08:00
2116640886 chore: the updateConfigs api also adds a check for SAFE_PATHS 2025-05-12 11:28:15 +08:00
26e6d83f8b chore: make select display the specified testUrl
for https://github.com/MetaCubeX/mihomo/issues/2013
2025-05-07 18:21:21 +08:00
9e57b298bf chore: update dependencies 2025-05-03 15:06:13 +08:00
7e7016b567 chore: removed routing-mark and interface-name of the group, please set it directly on the proxy instead 2025-05-01 02:13:35 +08:00
b4fe669848 chore: better path checks 2025-05-01 02:13:35 +08:00
f328203bc1 feat: not inline proxy-provider can also set payload as fallback proxies when file/http parsing fails 2025-04-30 16:03:02 +08:00
aa51b9faba chore: replace using internal batch package to x/sync/errgroup
In the original batch implementation, the Go() method will always start a new goroutine and then wait for the concurrency limit, which is unnecessary for the current code. x/sync/errgroup will block Go() until the concurrency limit is met, which can effectively reduce memory usage.
In addition, the original batch always saves the return value of Go(), but it is not used in the current code, which will also waste a lot of memory space in high concurrency scenarios.
2025-04-28 10:28:45 +08:00
468cfc3cc4 fix: set sni to servername if not specified for trojan outbound (#1991) 2025-04-24 19:50:16 +08:00
99aa1b0de1 feat: inbound support shadow-tls 2025-04-22 21:16:56 +08:00
52ad793d11 fix: shadowtls v1 not work 2025-04-22 20:52:34 +08:00
793ce45db0 chore: update quic-go to 0.51.0 2025-04-21 22:58:08 +08:00
39d6a0d7ba chore: update utls to 1.7.0 2025-04-21 12:07:33 +08:00
d5243adf89 chore: better global-client-fingerprint handle 2025-04-19 02:04:09 +08:00
6236cb1cf0 chore: cleanup trojan code 2025-04-19 01:32:55 +08:00
63e66f49ca chore: cleanup trojan code 2025-04-18 16:59:28 +08:00
30d90d49f0 chore: update option checks to use IsZeroOptions 2025-04-17 21:06:55 +08:00
76052b5b26 fix: grpc in trojan not apply client-fingerprint 2025-04-17 12:54:36 +08:00
3d2cb992fa fix: grpc outbound not apply ca fingerprint 2025-04-16 01:00:06 +08:00
cedb36df5f chore: using SetupContextForConn to reduce the DialContext cannot be cancelled 2025-04-12 11:19:03 +08:00
7a260f7bcf fix: udp dial support ip4p (#1377) 2025-04-11 09:20:58 +08:00
487d7fa81f fix: panic under some stupid input config 2025-04-09 18:02:13 +08:00
4b15568a29 chore: cleanup metadata code 2025-04-09 18:02:13 +08:00
cac2bf72e1 chore: cleanup netip code 2025-04-09 18:02:13 +08:00
b2d2890866 chore: cleanup resolveUDPAddr code 2025-04-09 18:02:12 +08:00
e81f3a97af fix: correctly implement references to proxies 2025-04-04 09:08:52 +08:00
7de24e26b4 fix: StreamGunWithConn not synchronously close the incoming net.Conn 2025-04-03 23:41:24 +08:00
622d99d000 chore: rebuild outdated proxy auto close mechanism 2025-04-03 22:42:32 +08:00
0f32c054f4 feat: support UDP over TCP in mieru (#1926) 2025-03-20 13:58:04 +08:00
ff89bf0ea0 feat: add gost-plugin in which only ws and mws are currently supported. (#1896) 2025-03-13 13:28:40 +08:00
0ed159e41d chore: code cleanup 2025-03-12 13:33:52 +08:00
f318b80557 chore: better cache implement for group's getProxies 2025-03-11 23:27:18 +08:00
1213023f11 fix: reality not work with vmess+grpc outbound 2025-02-28 08:24:22 +08:00
5830afcbde chore: add MinIdleSession option to AnyTLS configuration 2025-02-21 13:30:24 +08:00
b151e7d69c chore: support fingerprint for anytls 2025-02-17 20:14:54 +08:00
808fdcf624 chore: code cleanup 2025-02-17 19:43:58 +08:00
9962a0d091 feat: implement anytls client and server (#1844) 2025-02-17 18:51:11 +08:00
0ac6c3b185 feat: inbound support vless 2025-02-04 00:44:18 +08:00
b69e52d4d7 chore: deprecated routing-mark and interface-name of the group, please set it directly on the proxy instead
Some checks failed
Build / build (map[goarch:386 goos:linux output:386]) (push) Failing after 10s
Build / build (map[goarch:386 goos:windows goversion:1.20 output:386-go120]) (push) Failing after 10s
Build / build (map[goarch:386 goos:windows goversion:1.21 output:386-go121]) (push) Failing after 9s
Build / build (map[goarch:386 goos:windows goversion:1.22 output:386-go122]) (push) Failing after 9s
Build / build (map[goarch:386 goos:windows output:386]) (push) Failing after 8s
Build / build (map[goarch:amd64 goos:android ndk:x86_64-linux-android34 output:amd64]) (push) Failing after 10s
Build / build (map[goarch:arm goarm:5 goos:linux output:armv5]) (push) Failing after 9s
Build / build (map[goarch:arm goarm:6 goos:linux output:armv6]) (push) Failing after 9s
Build / build (map[goarch:arm goarm:7 goos:linux output:armv7]) (push) Failing after 9s
Build / build (map[goarch:arm goarm:7 goos:windows output:armv7]) (push) Failing after 11s
Build / build (map[goarch:arm goos:android ndk:armv7a-linux-androideabi34 output:armv7]) (push) Failing after 11s
Build / build (map[goarch:arm64 goos:android ndk:aarch64-linux-android34 output:arm64-v8]) (push) Failing after 10s
Build / build (map[goarch:arm64 goos:darwin goversion:1.20 output:arm64-go120]) (push) Failing after 39s
Build / build (map[goarch:arm64 goos:darwin goversion:1.22 output:arm64-go122]) (push) Failing after 10s
Build / build (map[goarch:arm64 goos:darwin output:arm64]) (push) Failing after 10s
Build / build (map[goarch:arm64 goos:freebsd output:arm64]) (push) Failing after 8s
Build / build (map[goarch:arm64 goos:linux output:arm64]) (push) Failing after 7s
Build / build (map[goarch:arm64 goos:windows output:arm64]) (push) Failing after 21s
Build / build (map[goarch:mips gomips:hardfloat goos:linux output:mips-hardfloat]) (push) Failing after 38s
Build / build (map[goarch:mips gomips:softfloat goos:linux output:mips-softfloat]) (push) Failing after 9s
Build / build (map[goarch:mips64 goos:linux output:mips64]) (push) Failing after 9s
Build / build (map[goarch:mips64le goos:linux output:mips64le]) (push) Failing after 31s
Build / build (map[goarch:mipsle gomips:hardfloat goos:linux output:mipsle-hardfloat]) (push) Failing after 28s
Build / build (map[goarch:mipsle gomips:softfloat goos:linux output:mipsle-softfloat]) (push) Failing after 38s
Build / build (map[goarch:riscv64 goos:linux output:riscv64]) (push) Failing after 9s
Build / build (map[goarch:s390x goos:linux output:s390x]) (push) Failing after 10s
Trigger CMFA Update / trigger-CMFA-update (push) Failing after 8s
Build / Upload-Prerelease (push) Has been skipped
Build / Upload-Release (push) Has been skipped
Build / Docker (push) Has been skipped
2025-01-21 00:45:49 +08:00