Xray-knife v10.1.0
π v10.1.0 β Hysteria2, smarter testing, and a fresh xray-core
This release makes the http tester a lot smarter and faster, adds the
Hysteria2 protocol, and catches up to the latest xray-core. π
β
Nothing breaks. Every new option is optional β if you don't touch the
new flags, everything works exactly like before.
π New protocol: Hysteria2
You can now parse, test, and run Hysteria2 configs! π₯
- Works with both
hysteria2://and the shorterhy2://links. - Supported everywhere:
parse,http(testing),proxy, and the web UI. - Understands SNI,
insecure, and Salamander obfuscation
(obfs/obfs-password), and handles IPv6 addresses correctly.
xray-knife http -c "hy2://..."π― Smarter testing: don't trust just one website
Before, a config was judged by reaching a single site (Cloudflare). The
problem? Some proxies can reach Cloudflare but nothing else β and they'd
still show as "working." π
Now you can test each config against a panel of different websites and
grade it by how many it can actually reach. π
| Flag | What it does |
|---|---|
--check-preset |
Test against a ready-made set of sites. Choose: cloudflare, gstatic, global, google, streaming. |
--test-urls |
Your own comma-separated list of URLs to test. |
--url-success-threshold |
How many must succeed to "pass" (e.g. 0.75 = 75%). Below that but above zero = semi-passed |
# Grade each config against a global mix of sites
xray-knife http -f configs.txt --check-preset global- π¬ Great for checking if a config really works for YouTube / Google /
streaming, not just a generic CDN. - π΅οΈ Fake "captive portal" pages that pretend to work are now correctly
rejected. - π You get a clear per-website breakdown (which site failed and why) β
in the terminal, in CSV, in JSON, and in the web dashboard.
β‘ Test big lists way faster
Testing thousands of configs? These options make it dramatically quicker:
| Flag | What it does |
|---|---|
--prescan |
π©Ί A quick health check that instantly skips dead servers before the slow full test. |
--prescan-timeout |
Timeout for the quick check in ms (default 2000). |
--prescan-workers |
How many quick checks run at once (default 512). |
--max-passed |
π Stop as soon as N configs pass β no need to wait for the rest. |
--dedup-semantic |
π§Ή Remove hidden duplicates β configs that are really the same server but look different (e.g. renamed or reordered). |
# Quickly find the first 20 working configs from a huge list
xray-knife http -f configs.txt --prescan --max-passed 20- π‘οΈ UDP-based configs (Hysteria2, WireGuard, QUIC, mKCP) are never
wrongly dropped by the quick check β they're always kept and tested.
π Protocol improvements
- π REALITY post-quantum keys β VLESS and Trojan now support the new
ML-DSA-65 verification key (thepqvparameter), ready for
quantum-resistant setups. - π‘ WireGuard β added support for
keepalive,allowedips, and
reserved(works with Cloudflare WARP-style values, comma or base64). - π§© Shadowsocks β modern SS-2022 links (from sing-box /
shadowsocks-rust) now parse correctly, alongside the classic format. - 𧦠SOCKS β more robust login parsing; links without a password no
longer cause crashes.
π Fresh xray-core (important compatibility work)
We upgraded to the latest xray-core and its dependencies. Upstream
removed a couple of old settings β we handle them automatically so your
existing links keep working: β¨
allowInsecurewas removed upstream β we now use the sanctioned
verifyPeerCertByNamereplacement for VLESS, Trojan, and VMess.- mKCP
header/seedwere removed upstream β configs now build cleanly
with defaults. - π Fixed a VMess default-network bug, gRPC mode handling, and ALPN
parsing. - π Fixed a VLESS XHTTP bug where the
extrafield could get corrupted.
π§° Proxy fixes
- π― When you pass a custom inbound (
-I/--inbound-config), the proxy
now listens on the address/port from that link β so the health check,
TUN, and system proxy all point to the right place. - β±οΈ Fixed an "instant timeout" bug in chain rotation when the delay setting
was left empty (now defaults to a sensible5s). - π Rotation now resets the failure counter for each fresh connection, so a
new proxy doesn't inherit the last one's bad luck.
π§ͺ Under the hood
Added lots of new automated tests covering the multi-website grading,
presets, deduplication, the quick pre-scan, Hysteria2 parsing, and the
SOCKS/Shadowsocks fixes β so all of this stays reliable. β
Full details & downloads below. Happy testing! π