Skip to content

vless reverse 任意一端启动后立即请求会导致内网端崩溃 #5140

@LjhAUMEM

Description

@LjhAUMEM

完整性要求

  • 我读完了 issue 模板中的所有注释,确保填写符合要求。
  • 我保证阅读了文档,了解所有我编写的配置文件项的含义,而不是大量堆砌看似有用的选项或默认值。
  • 我提供了完整的配置文件和日志,而不是出于自己的判断只给出截取的部分。
  • 我搜索了 issues, 没有发现已提出的类似问题。
  • 问题在 Release 最新的版本上可以成功复现

描述

版本为 release 里 25.9.11 windows amd64

所提供的服务端客户端配置在同一台机器上运行

重现方式

在启动服务端和客户端后立即发起请求会看到内网端崩溃,如果是双方均等待了 10-20 秒则正常,但是如果任一一端关闭重启立即请求也会复现崩溃

curl -x socks5h://127.0.0.1:1080 https://www.gstatic.com/generate_204 -I

socks://[email protected]:1080#socks

vless://[email protected]:1600?encryption=mlkem768x25519plus.native.1rtt.ltSWInJpGPa87wVYMJbYkM5sEcNDxSO2Xv27u1db2CY&flow=xtls-rprx-vision&security=none&type=tcp&headerType=none#xtls tcp

客户端配置

Details

{
  "log": { "loglevel": "debug" },
  "outbounds": [
    {
      "protocol": "blackhole"
    },
    {
      "tag": "out-direct-1",
      "protocol": "freedom"
    },
    {
      "protocol": "vless",
      "settings": {
        "address": "127.0.0.1",
        "port": 1600,
        "encryption": "mlkem768x25519plus.native.1rtt.ltSWInJpGPa87wVYMJbYkM5sEcNDxSO2Xv27u1db2CY",
        "id": "5783a3e7-e373-51cd-8642-c83782b807c5",
        "flow": "xtls-rprx-vision",
        "reverse": {
          "tag": "in-direct-1"
        }
      },
      "streamSettings": {
        "network": "tcp",
        "tcpSettings": {}
      }
    }
  ],
  "routing": {
    "rules": [
      {
        "inboundTag": ["in-direct-1"],
        "outboundTag": "out-direct-1"
      }
    ]
  }
}

服务端配置

Details

{
  "log": { "loglevel": "debug" },
  "inbounds": [
    {
      "tag": "in-socks",
      "listen": "127.0.0.1",
      "port": 1080,
      "protocol": "socks"
    },
    {
      "listen": "127.0.0.1",
      "port": 1600,
      "protocol": "vless",
      "settings": {
        "clients": [
          {
            "id": "5783a3e7-e373-51cd-8642-c83782b807c5",
            "flow": "xtls-rprx-vision",
            "reverse": {
              "tag": "out-client-1"
            }
          },
          {
            "id": "7942fda8-5245-4ef2-88c4-ce8e7d496c38",
            "flow": "xtls-rprx-vision",
            "email": "in-client-1"
          }
        ],
        "decryption": "mlkem768x25519plus.native.600s.IOIszV1QUCJEWxJu7O0tNz7tGEWcMH1KbpQKMVG8c2U"
      },
      "streamSettings": {
        "network": "tcp",
        "tcpSettings": {}
      }
    }
  ],
  "outbounds": [
    {
      "protocol": "blackhole"
    },
    {
      "tag": "out-vless",
      "protocol": "vless",
      "settings": {
        "address": "127.0.0.1",
        "port": 1600,
        "encryption": "mlkem768x25519plus.native.1rtt.ltSWInJpGPa87wVYMJbYkM5sEcNDxSO2Xv27u1db2CY",
        "id": "7942fda8-5245-4ef2-88c4-ce8e7d496c38",
        "flow": "xtls-rprx-vision"
      },
      "streamSettings": {
        "network": "tcp",
        "tcpSettings": {}
      }
    }
  ],
  "routing": {
    "rules": [
      {
        "inboundTag": ["in-socks"],
        "outboundTag": "out-vless"
      },
      {
        "user": ["in-client-1"],
        "outboundTag": "out-client-1"
      }
    ]
  }
}

/*
socks://[email protected]:1080#socks
vless://[email protected]:1600?encryption=mlkem768x25519plus.native.1rtt.ltSWInJpGPa87wVYMJbYkM5sEcNDxSO2Xv27u1db2CY&flow=xtls-rprx-vision&security=none&type=tcp&headerType=none#xtls tcp
*/

客户端日志

Details

xray25.9.11 -c client.json
Xray 25.9.11 (Xray, Penetrates Everything.) 3edfb0e (go1.25.1 windows/amd64)
A unified platform for anti-censorship.
2025/09/13 23:53:24.654403 [Info] infra/conf/serial: Reading config: &{Name:client.json Format:json}
2025/09/13 23:53:24.655449 [Debug] app/log: Logger started
2025/09/13 23:53:24.668148 [Warning] core: Xray 25.9.11 started
2025/09/13 23:53:26.655936 [Info] transport/internet/tcp: dialing TCP to tcp:127.0.0.1:1600
2025/09/13 23:53:26.656645 [Debug] transport/internet: dialing to tcp:127.0.0.1:1600
2025/09/13 23:53:26.658823 [Info] proxy/vless/outbound: tunneling request to unknown: via 127.0.0.1:1600
2025/09/13 23:53:27.162258 [Info] proxy/vless/outbound: Insert padding with empty content to camouflage VLESS header 0
2025/09/13 23:53:27.162258 [Info] proxy: XtlsPadding 0 1366 0
2025/09/13 23:53:27.164014 [Info] proxy: Xtls Unpadding new block, content 20 padding 118 command 0
2025/09/13 23:53:27.164014 [Info] proxy: Xtls Unpadding new block, content 7 padding 170 command 0
2025/09/13 23:53:27.164014 [Info] common/mux: received request for udp:reverse:0
2025/09/13 23:53:28.099923 [Info] proxy: Xtls Unpadding new block, content 28 padding 1171 command 0
2025/09/13 23:53:28.100601 [Info] proxy: Xtls Unpadding new block, content 466 padding 907 command 0
2025/09/13 23:53:28.100601 [Info] proxy: XtlsFilterTls found tls client hello! 466
2025/09/13 23:53:28.101243 [Info] common/mux: received request for tcp:www.gstatic.com:443
2025/09/13 23:53:28.101906 [Info] app/dispatcher: taking detour [out-direct-1] for [tcp:www.gstatic.com:443]
2025/09/13 23:53:28.101906 [Info] transport/internet/tcp: dialing TCP to tcp:www.gstatic.com:443
2025/09/13 23:53:28.101906 [Debug] transport/internet: dialing to tcp:www.gstatic.com:443
2025/09/13 23:53:28.100601 from  accepted tcp:www.gstatic.com:443 [in-direct-1 -> out-direct-1]
2025/09/13 23:53:28.169458 [Info] proxy/freedom: connection opened to tcp:www.gstatic.com:443, local endpoint 192.168.2.2:7733, remote endpoint 203.208.50.162:443
2025/09/13 23:53:28.170266 [Info] proxy: CopyRawConn (maybe) readv
2025/09/13 23:53:28.278395 [Info] proxy: XtlsFilterTls found tls 1.3! 2854 TLS_AES_256_GCM_SHA384
2025/09/13 23:53:28.279122 [Info] proxy: XtlsPadding 8 1249 0
2025/09/13 23:53:28.279122 [Info] proxy: XtlsPadding 2854 226 0
2025/09/13 23:53:28.285769 [Info] proxy: Xtls Unpadding new block, content 8 padding 1019 command 0
2025/09/13 23:53:28.285769 [Info] proxy: Xtls Unpadding new block, content 80 padding 1301 command 0
2025/09/13 23:53:28.285769 [Info] proxy: Xtls Unpadding new block, content 8 padding 1195 command 0
2025/09/13 23:53:28.285769 [Info] proxy: Xtls Unpadding new block, content 114 padding 927 command 2
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xc0000005 code=0x0 addr=0x18 pc=0x7ff6a59064f7]

goroutine 25 [running]:
bytes.(*Reader).Read(0x7ff6a687a200?, {0xc000122000?, 0xc000200840?, 0x7ff6a6d2df4c?})
bytes/reader.go:40 +0x17
io.ReadAtLeast(...)
io/io.go:335
io.ReadFull(...)
io/io.go:354
github.com/xtls/xray-core/common/buf.(*Buffer).ReadFullFrom(0xc000370c90, {0x7ff6a6bc82e0, 0x0}, 0xa5f38c45?)
github.com/xtls/xray-core/common/buf/buffer.go:340 +0x13f
github.com/xtls/xray-core/common/buf.ReadFrom({0x7ff6a6bc82e0, 0x0})
github.com/xtls/xray-core/common/buf/multi_buffer.go:83 +0x125
github.com/xtls/xray-core/proxy.(*VisionReader).ReadMultiBuffer(0xc000108150)
github.com/xtls/xray-core/proxy/proxy.go:260 +0x1ce
github.com/xtls/xray-core/proxy/vless/outbound.(*Handler).Process.func4.XtlsRead.1(...)
github.com/xtls/xray-core/proxy/vless/encoding/encoding.go:186
github.com/xtls/xray-core/proxy/vless/encoding.XtlsRead(...)
github.com/xtls/xray-core/proxy/vless/encoding/encoding.go:197
github.com/xtls/xray-core/proxy/vless/outbound.(*Handler).Process.func4()
github.com/xtls/xray-core/proxy/vless/outbound/outbound.go:340 +0x8de
github.com/xtls/xray-core/proxy/vless/outbound.(*Handler).Process.OnSuccess.func9()
github.com/xtls/xray-core/common/task/task.go:12 +0x22
github.com/xtls/xray-core/common/task.Run.func1(0x0?)
github.com/xtls/xray-core/common/task/task.go:28 +0x28
created by github.com/xtls/xray-core/common/task.Run in goroutine 52
github.com/xtls/xray-core/common/task/task.go:27 +0xdb

服务端日志

Details

xray25.9.11 -c server.json
Xray 25.9.11 (Xray, Penetrates Everything.) 3edfb0e (go1.25.1 windows/amd64)
A unified platform for anti-censorship.
2025/09/13 23:53:20.926536 [Info] infra/conf/serial: Reading config: &{Name:server.json Format:json}
2025/09/13 23:53:20.928086 [Debug] app/log: Logger started
2025/09/13 23:53:20.941250 [Debug] app/proxyman/inbound: creating stream worker on 127.0.0.1:1080
2025/09/13 23:53:20.941250 [Debug] app/proxyman/inbound: creating stream worker on 127.0.0.1:1600
2025/09/13 23:53:20.941250 [Info] transport/internet/tcp: listening TCP on 127.0.0.1:1080
2025/09/13 23:53:20.941250 [Info] transport/internet/tcp: listening TCP on 127.0.0.1:1600
2025/09/13 23:53:20.941250 [Warning] core: Xray 25.9.11 started
2025/09/13 23:53:27.162777 [Info] [619079972] proxy/vless/inbound: firstLen = 1424
2025/09/13 23:53:27.163359 [Info] [619079972] proxy/vless/inbound: received request for tcp:v1.rvs.cool:0
2025/09/13 23:53:27.163359 [Info] [619079972] proxy: Xtls Unpadding new block, content 0 padding 1366 command 0
2025/09/13 23:53:27.164014 [Info] common/mux: dispatching request to udp:reverse:0
2025/09/13 23:53:27.164014 [Info] [619079972] proxy: XtlsPadding 20 118 0
2025/09/13 23:53:27.164606 [Info] [619079972] proxy: XtlsPadding 7 170 0
2025/09/13 23:53:28.001562 [Info] [1531424014] proxy/socks: TCP Connect request to tcp:www.gstatic.com:443
2025/09/13 23:53:28.001562 [Info] [1531424014] app/dispatcher: taking detour [out-vless] for [tcp:www.gstatic.com:443]
2025/09/13 23:53:28.001562 [Info] [1531424014] transport/internet/tcp: dialing TCP to tcp:127.0.0.1:1600
2025/09/13 23:53:28.001562 [Debug] [1531424014] transport/internet: dialing to tcp:127.0.0.1:1600
2025/09/13 23:53:28.001562 from tcp:127.0.0.1:7731 accepted tcp:www.gstatic.com:443 [in-socks -> out-vless]
2025/09/13 23:53:28.002066 [Info] [1531424014] proxy/vless/outbound: tunneling request to tcp:www.gstatic.com:443 via 127.0.0.1:1600
2025/09/13 23:53:28.098660 [Info] [1531424014] proxy: XtlsFilterTls found tls client hello! 466
2025/09/13 23:53:28.099248 [Info] [1531424014] proxy: XtlsPadding 466 531 0
2025/09/13 23:53:28.099248 [Info] [3852274822] proxy/vless/inbound: firstLen = 1074
2025/09/13 23:53:28.099248 from 127.0.0.1:7732 accepted tcp:www.gstatic.com:443 [out-client-1] email: in-client-1
2025/09/13 23:53:28.099248 [Info] [3852274822] proxy/vless/inbound: received request for tcp:www.gstatic.com:443
2025/09/13 23:53:28.099923 [Info] [3852274822] app/dispatcher: taking detour [out-client-1] for [tcp:www.gstatic.com:443]
2025/09/13 23:53:28.100601 [Info] [3852274822] common/mux: dispatching request to tcp:www.gstatic.com:443
2025/09/13 23:53:28.100601 [Info] [3852274822] proxy: Xtls Unpadding new block, content 466 padding 531 command 0
2025/09/13 23:53:28.101243 [Info] [3852274822] proxy: XtlsFilterTls found tls client hello! 466
2025/09/13 23:53:28.101243 [Info] [619079972] proxy: XtlsFilterTls found tls client hello! 494
2025/09/13 23:53:28.101906 [Info] [619079972] proxy: XtlsPadding 28 1171 0
2025/09/13 23:53:28.101906 [Info] [619079972] proxy: XtlsPadding 466 907 0
2025/09/13 23:53:28.279122 [Info] [619079972] proxy: Xtls Unpadding new block, content 8 padding 1249 command 0
2025/09/13 23:53:28.279122 [Info] [619079972] proxy: Xtls Unpadding new block, content 2854 padding 226 command 0
2025/09/13 23:53:28.279766 [Info] [619079972] proxy: XtlsFilterTls found tls 1.3! 2854 TLS_AES_256_GCM_SHA384
2025/09/13 23:53:28.279766 [Info] [3852274822] proxy: XtlsFilterTls found tls 1.3! 2854 TLS_AES_256_GCM_SHA384
2025/09/13 23:53:28.279766 [Info] [3852274822] proxy: XtlsPadding 2854 83 0
2025/09/13 23:53:28.279766 [Info] [1531424014] proxy: Xtls Unpadding new block, content 2854 padding 83 command 0
2025/09/13 23:53:28.279766 [Info] [1531424014] proxy: XtlsFilterTls found tls 1.3! 2854 TLS_AES_256_GCM_SHA384
2025/09/13 23:53:28.285769 [Info] [1531424014] proxy: XtlsPadding 80 1165 0
2025/09/13 23:53:28.285769 [Info] [1531424014] proxy: XtlsPadding 114 864 2
2025/09/13 23:53:28.285769 [Info] [3852274822] proxy: Xtls Unpadding new block, content 80 padding 1165 command 0
2025/09/13 23:53:28.285769 [Info] [619079972] proxy: XtlsPadding 8 1019 0
2025/09/13 23:53:28.285769 [Info] [619079972] proxy: XtlsPadding 80 1301 0
2025/09/13 23:53:28.285769 [Info] [3852274822] proxy: Xtls Unpadding new block, content 114 padding 864 command 2
2025/09/13 23:53:28.285769 [Info] [619079972] proxy: XtlsPadding 8 1195 0
2025/09/13 23:53:28.285769 [Info] [619079972] proxy: XtlsPadding 114 927 2
2025/09/13 23:53:28.293852 [Info] common/mux: failed to read metadata > read tcp 127.0.0.1:1600->127.0.0.1:10012: wsarecv: An existing connection was forcibly closed by the remote host.
2025/09/13 23:53:28.293852 [Info] common/mux: failed to fetch all input > io: read/write on closed pipe
2025/09/13 23:53:28.293852 [Info] [3852274822] common/mux: failed to fetch all input > read tcp 127.0.0.1:1600->127.0.0.1:7732: use of closed network connection

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions