From 445c0d456c39377f0dee08cd296d6f70c81d3fbd Mon Sep 17 00:00:00 2001 From: ki <59279014+KiGamji@users.noreply.github.com> Date: Sat, 24 Jan 2026 17:39:07 +0500 Subject: [PATCH] TUN inbound: Disable RACK/TLP recovery to fix connection stalls (#5600) https://github.com/XTLS/Xray-core/issues/5599#issuecomment-3794495254 Fixes https://github.com/XTLS/Xray-core/issues/5599 --- proxy/tun/stack_gvisor.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/proxy/tun/stack_gvisor.go b/proxy/tun/stack_gvisor.go index 952150a8..ab767c61 100644 --- a/proxy/tun/stack_gvisor.go +++ b/proxy/tun/stack_gvisor.go @@ -236,6 +236,10 @@ func createStack(ep stack.LinkEndpoint) (*stack.Stack, error) { mOpt := tcpip.TCPModerateReceiveBufferOption(true) gStack.SetTransportProtocolOption(tcp.ProtocolNumber, &mOpt) + // Disable RACK/TLP loss recovery to fix connection stalls under high load + rOpt := tcpip.TCPRecovery(0) + gStack.SetTransportProtocolOption(tcp.ProtocolNumber, &rOpt) + tcpRXBufOpt := tcpip.TCPReceiveBufferSizeRangeOption{ Min: tcpRXBufMinSize, Default: tcpRXBufDefSize,