echoowall
d5dcc4d6fe
splithttp: bind sendThrough=origin to the real per-connection local IP
...
The XHTTP inbound set every accepted connection's LocalAddr to the
listener's address (h.localAddr = l.listener.Addr()). On a wildcard
listener that is the unspecified address ("[::]" / "0.0.0.0").
sendThrough "origin" derives the outbound gateway from inbound.Local,
which comes from conn.LocalAddr(). So with XHTTP every connection's
egress was bound to the wildcard, collapsing all entry IPs onto one
(often IPv6) source address and breaking source-in-source-out on
multi-IP hosts (and failing outright when that address has no route).
Read the concrete per-connection local address from the request context
(http.LocalAddrContextKey), which net/http populates with the address
the client actually connected to. Fall back to the listener address when
the key is absent (e.g. HTTP/3, where net/http does not set it).
2026-07-12 03:39:36 +08:00
ivolfram and GitHub
1aabe7ea78
XHTTP transport: Do not force trailing path / when both sessionID and seq are placed elsewhere ( #6307 )
...
https://github.com/XTLS/Xray-core/discussions/6385#discussioncomment-17454120
https://github.com/XTLS/Xray-core/pull/6307#issuecomment-4917498294
Closes https://github.com/XTLS/Xray-core/issues/6410
2026-07-08 17:59:19 +00:00
345c76f9a8
WireGuard inbound: Support dynamic peer management ( #6360 )
...
https://github.com/XTLS/Xray-core/pull/6360#issuecomment-4780311547
Closes https://github.com/XTLS/Xray-core/issues/6314
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
Co-authored-by: LjhAUMEM <llnu14702@gmail.com >
2026-06-27 11:41:22 +00:00
f496437b84
XHTTP server: Refactor upload_queue.go ( #6372 )
...
https://github.com/XTLS/Xray-core/pull/6372#issuecomment-4801395378
---------
Co-authored-by: 风扇滑翔翼 <Fangliding.fshxy@outlook.com >
Co-authored-by: RPRX <63339210+RPRX@users.noreply.github.com >
2026-06-27 10:40:58 +00:00
Omoeba and GitHub
583bb4a63f
XHTTP server: Fix scStreamUpServerSecs when xPaddingObfsMode is true ( #6343 )
...
https://github.com/XTLS/Xray-core/pull/6343#issuecomment-4771666966
2026-06-22 18:51:47 +00:00
风扇滑翔翼 and GitHub
1e036ce1c5
XHTTP/3 client: Actively close underlying QUIC & UDP ( #6332 )
...
Fixes https://github.com/XTLS/Xray-core/issues/6328#issuecomment-4730379021
2026-06-18 23:55:11 +00:00
bytecategory and GitHub
986c512e0f
XHTTP client: Avoid panic when host is invalid ( #6316 )
...
Fixes https://github.com/XTLS/Xray-core/issues/6315
2026-06-18 22:55:18 +00:00
Meow and GitHub
711aea4e34
XHTTP & WS & HU & gRPC servers: Require sockopt.trustedXForwardedFor ( #6309 )
...
https://github.com/XTLS/Xray-core/pull/6258#issuecomment-4663652131
Behavior: https://github.com/XTLS/Xray-core/pull/6258#issuecomment-4746598275
Replaces https://github.com/XTLS/Xray-core/pull/6159
2026-06-18 22:31:21 +00:00
829d54d7be
Hysteria & XHTTP/3 clients: udpHop supports dialerProxy ( #6320 )
...
https://github.com/XTLS/Xray-core/pull/6320#issuecomment-4725679616
Fixes https://github.com/XTLS/Xray-core/pull/6320#issuecomment-4699599655
---------
Co-authored-by: LjhAUMEM <llnu14702@gmail.com >
2026-06-17 12:20:28 +00:00
e10347bf01
XHTTP transport: Add sessionIDTable and sessionIDLength; Rename session* to sessionID* ( #6258 )
...
https://github.com/XTLS/Xray-core/pull/6258#issuecomment-4658534046
https://github.com/XTLS/Xray-core/pull/6253#issuecomment-4657704004
https://github.com/XTLS/Xray-core/pull/6251#issuecomment-4612756220
Usage: https://github.com/XTLS/Xray-core/pull/6258#issue-4580617110
Closes https://github.com/XTLS/Xray-core/issues/6264
---------
Co-authored-by: XXcipherX <knazevvv6514@gmail.com >
2026-06-09 15:58:02 +00:00
𐲓𐳛𐳪𐳂𐳐 𐲀𐳢𐳦𐳫𐳢 𐲥𐳔𐳛𐳪𐳌𐳑𐳖𐳇 and GitHub
d43a808ea5
GitHub Action CI: Add Go source file format check ( #6090 )
...
https://github.com/XTLS/Xray-core/pull/6057#issuecomment-4364819830
And https://github.com/XTLS/Xray-core/pull/6149#issuecomment-4546876261
2026-05-29 15:04:59 +00:00
风扇滑翔翼 and GitHub
4c3842711d
XHTTP client: Fix packet-up OpenUsage counting and H3 keepAlivePeriod parameter ( #6140 )
...
Fixes https://github.com/XTLS/Xray-core/pull/6140#issuecomment-4525409315
2026-05-24 12:05:40 +00:00
风扇滑翔翼 and GitHub
9d9eaf399f
XHTTP client: Fix potential memory leak in stream-up/one ( #6095 )
...
Fixes https://github.com/XTLS/Xray-core/pull/6087#issuecomment-4402474552
2026-05-09 16:54:57 +00:00
LjhAUMEM and GitHub
756a2d1327
Hysteria client: Fix sendThrough ( #6063 )
...
And fixes https://github.com/XTLS/Xray-core/issues/6046
2026-05-03 07:18:23 +00:00
LjhAUMEM and GitHub
1d62941bd2
Hysteria: Upgrade to official v2.8.2 ( #6041 )
...
https://github.com/XTLS/Xray-core/pull/6041#issuecomment-4357417742
And fixes https://github.com/XTLS/Xray-core/issues/6039
2026-05-02 12:27:27 +00:00
RPRX and GitHub
1836b1c6e4
Browser Dialer: Potential optimized IP and non-standard port
...
Fixes https://github.com/2dust/v2rayNG/issues/5519#issuecomment-4335112057
2026-04-28 20:57:20 +00:00
LjhAUMEM and GitHub
3f608b3a58
Finalmask quicParams: Add bbrProfile ("conservative" / "standard" (default) / "aggressive") ( #5869 )
...
And Update github.com/apernet/quic-go to 20260330051153
2026-04-05 13:45:50 +00:00
c1b67a961e
XHTTP transport: Some optimizations ( #5803 )
...
https://github.com/XTLS/Xray-core/pull/5801
https://github.com/XTLS/Xray-core/pull/5808
---------
Co-authored-by: Sergei Ozeranskii <sergey.ozeranskiy@gmail.com >
Co-authored-by: rufsieus <rufsieus@gmail.com >
2026-03-21 12:48:47 +00:00
Lumière Élevé and GitHub
9e09399087
Xray-core: More robust browser header masquerading (chrome, firefox, edge) ( #5802 )
...
Fixes https://github.com/XTLS/Xray-core/issues/5800
2026-03-21 12:24:08 +00:00
LjhAUMEM and GitHub
0321cdd0d2
Hysteria & XHTTP/3: Unified Finalmask's quicParams to set congestion, brutalUp, brutalDown, udpHop (ports & interval), etc. ( #5772 )
...
https://github.com/XTLS/Xray-core/pull/5772#issuecomment-4023006179
2026-03-09 12:17:32 +00:00
LjhAUMEM and GitHub
a204873d79
Finalmask: Add header-custom (TCP & UDP), fragment (TCP), noise (UDP); Support dialer-proxy, XHTTP/3; Fix XDNS, XICMP potential panic ( #5657 )
...
https://github.com/XTLS/Xray-core/pull/5657#issuecomment-4016609446
2026-03-07 15:42:18 +00:00
Жора Змейкин and GitHub
5138ffcf22
XHTTP transport: Add "bbr" (default) and "force-brutal" congestion control for H3 ( #5711 )
...
https://github.com/XTLS/Xray-core/pull/5711#issuecomment-3984037632
2026-03-07 12:46:40 +00:00
26X23 and GitHub
0ac13bd910
XHTTP transport: Bugfixes for obfuscations ( #5720 )
...
https://github.com/XTLS/Xray-core/pull/5720#issuecomment-4016290343
2026-03-07 12:34:41 +00:00
b7a22c729b
Xray-core: Dynamic Chrome User-Agent for all HTTP requests by default (overwriteable through config) ( #5658 )
...
https://github.com/XTLS/Xray-core/issues/4996#issuecomment-3855274627
https://github.com/XTLS/Xray-core/pull/5658#issuecomment-3857332687
---------
Co-authored-by: RPRX <63339210+RPRX@users.noreply.github.com >
Co-authored-by: Fangliding <63339210+Fangliding@users.noreply.github.com >
2026-02-06 01:42:31 +00:00
RPRX and GitHub
d14767d4f3
Chore: Generate *.pb.go files with protoc v6.33.5
...
Download https://github.com/protocolbuffers/protobuf/releases/tag/v33.5
go install google.golang.org/protobuf/cmd/protoc-gen-go@v1.36.11
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@v1.6.0
(Xray-core/) go run ./infra/vprotogen
2026-02-03 09:34:02 +00:00
Dmitrii Makhno and GitHub
a6ec3b6e70
XHTTP transport: Fix "auto" mode with REALITY ( #5638 )
...
Fixes https://github.com/XTLS/Xray-core/issues/5635
BTW, fixes https://github.com/XTLS/Xray-core/issues/5631
2026-02-02 08:07:45 +00:00
5b849d51a9
XHTTP transport: New options for bypassing CDN's detection ( #5414 )
...
Usage: https://github.com/XTLS/Xray-core/pull/5414#issuecomment-3770071786
Closes https://github.com/XTLS/Xray-core/issues/4346
---------
Co-authored-by: 风扇滑翔翼 <Fangliding.fshxy@outlook.com >
2026-01-31 13:34:13 +00:00
RPRX
2c92339f95
TLS config: allowInsecure->pinnedPeerCertSha256; verifyPeerCertInNames->verifyPeerCertByName
...
And use `,` as the separator instead of `~`/array
https://github.com/XTLS/Xray-core/pull/5567#issuecomment-3766081805
https://t.me/projectXtls/1464
https://t.me/projectXtls/1465
https://t.me/projectXtls/1466
https://github.com/XTLS/Xray-core/pull/5625#issuecomment-3824855736
2026-01-31 09:32:51 +00:00
LjhAUMEM and GitHub
92ada2dd1d
Proxy: Add Hysteria outbound & transport (version 2, udphop) and Salamander udpmask ( #5508 )
...
https://github.com/XTLS/Xray-core/issues/3547#issuecomment-3549896520
https://github.com/XTLS/Xray-core/issues/2635#issuecomment-3570871754
2026-01-13 13:31:51 +00:00
fanymagnet and RPRX
e7c72c011f
XHTTP server: Fix ScStreamUpServerSecs' non-default value ( #5486 )
2026-01-05 01:07:00 +00:00
风扇滑翔翼 and GitHub
a610a4c89a
Chore: Remove all double gonet import ( #5402 )
2025-12-10 07:17:29 +00:00
RPRX and GitHub
2969a189e6
Sockopt config: Add trustedXForwardedFor (for XHTTP, WS, HU inbounds) ( #5331 )
...
Fixes https://github.com/XTLS/Xray-core/pull/5101#issuecomment-3404979909
2025-11-23 01:09:49 +00:00
风扇滑翔翼 and GitHub
6fc0a40c2a
XHTTP client: Fix edge-case issue for packet-up mode ( #5020 )
...
https://github.com/XTLS/Xray-core/pull/4952#issuecomment-3184080580
2025-08-15 18:01:15 +00:00
风扇滑翔翼 and GitHub
b1107b9810
Refine must2 and apply NewAesGcm() to all usage ( #5011 )
...
* Refine must2 and apply NewAesGcm() to all usage
* Remove unused package
* Fix test
2025-08-10 21:37:46 -04:00
xDragonZ and GitHub
3a2ac9d0bf
Bump quic-go to v0.53.0 & update codes ( #4906 )
2025-07-19 00:21:18 +00:00
RPRX and GitHub
0995fa41fe
XHTTP client: Set packet-up as the default mode (auto) when using TLS
...
https://t.me/projectXtls/929
2025-04-18 06:18:51 +00:00
RPRX and GitHub
e466b0497c
DNS DoH: Use Chrome's fingerprint & keepAlivePeriod, Add header padding by default
...
https://github.com/XTLS/Xray-core/discussions/4430#discussioncomment-12374292
2025-03-03 14:45:12 +00:00
A1lo and RPRX
4b616f5cd0
XHTTP server: Switch to Go 1.24 native h2c support ( #4451 )
2025-03-02 13:02:40 +00:00
RPRX and GitHub
b786a50aee
XHTTP server: Fix stream-up "single POST problem", Use united httpServerConn instead of recover()
...
https://github.com/XTLS/Xray-core/issues/4373#issuecomment-2671795675
https://github.com/XTLS/Xray-core/issues/4406#issuecomment-2668041926
2025-02-20 16:28:06 +00:00
RPRX and GitHub
52381a3c03
v25.2.18
...
Announcement of NFTs by Project X: https://github.com/XTLS/Xray-core/discussions/3633
Project X NFT: https://opensea.io/assets/ethereum/0x5ee362866001613093361eb8569d59c4141b76d1/1
XHTTP: Beyond REALITY: https://github.com/XTLS/Xray-core/discussions/4113
REALITY NFT: https://opensea.io/assets/ethereum/0x5ee362866001613093361eb8569d59c4141b76d1/2
2025-02-18 11:55:07 +00:00
RPRX and GitHub
c5de08bea6
XHTTP client: Revert "Add back minimal path padding for compatibility"
...
Reverts https://github.com/XTLS/Xray-core/commit/efdc70fbf782433689dcb114e37426395100614d
2025-02-18 11:11:36 +00:00
RPRX and GitHub
8cb63db6c0
XHTTP server: Set remoteAddr & localAddr correctly
...
Completes https://github.com/XTLS/Xray-core/commit/22c50a70c61f18b54f9e9de82962a053261a398c
2025-02-18 10:50:50 +00:00
RPRX and GitHub
dcd7e92c45
XHTTP server: Finish stream-up's HTTP POST when its request.Body is closed
...
https://github.com/XTLS/Xray-core/issues/4373#issuecomment-2647908310
Fixes https://github.com/XTLS/Xray-core/issues/4373
2025-02-10 13:56:13 +00:00
RPRX and GitHub
efdc70fbf7
XHTTP client: Add back minimal path padding for compatibility
...
It should be reverted in the future.
2025-01-30 10:45:12 +00:00
RPRX and GitHub
a7a83624c5
Upgrade quic-go to official v0.49.0
...
https://github.com/quic-go/quic-go/releases/tag/v0.49.0
https://github.com/quic-go/quic-go/pull/4749
https://github.com/quic-go/quic-go/pull/4798
2025-01-26 11:47:30 +00:00
RPRX and GitHub
ca9a902213
XHTTP server: Add scStreamUpServerSecs, enabled by default ( #4306 )
...
Fixes https://github.com/XTLS/Xray-core/discussions/4113#discussioncomment-11682833
2025-01-19 13:32:07 +00:00
rPDmYQ and GitHub
14a6636a41
XHTTP client: Move x_padding into Referer header ( #4298 )
...
""Breaking"": Update the server side first, then client
2025-01-18 12:05:19 +00:00
RPRX and GitHub
ce6c0dc690
XHTTP XMUX: Abandon client if client.Do(req) failed ( #4253 )
...
https://github.com/XTLS/Xray-core/commit/51769fdde1ca663dcb08d942618e480bee13109f
2025-01-06 14:06:11 +00:00
RPRX and GitHub
369d8944cf
Sockopt config: Add penetrate for XHTTP U-D-S, Remove tcpNoDelay
...
Now `sockopt` can be shared via `extra`, and be replaced with upload's forcibly.
Closes https://github.com/XTLS/Xray-core/issues/4227
2024-12-31 11:10:17 +00:00
RPRX and GitHub
4ce65fc74c
XHTTP XMUX: cMaxLifetimeMs -> hMaxReusableSecs, Refactor default values
...
"xmux": {
"maxConcurrency": "16-32",
"maxConnections": 0,
"cMaxReuseTimes": 0,
"hMaxRequestTimes": "600-900",
"hMaxReusableSecs": "1800-3000",
"hKeepAlivePeriod": 0
}
Fixes https://github.com/XTLS/Xray-core/discussions/4113#discussioncomment-11685057
2024-12-31 10:00:19 +00:00