{
"inbounds": [
{
"port": 52345,
"protocol": "dokodemo-door",
"listen": "127.0.0.1",
"sniffing": {
"enabled": true,
"destOverride": [
"http",
"tls",
"quic"
],
"metadataOnly": false,
"domainsExcluded": [
""
]
},
"settings": {
"network": "tcp,udp",
"followRedirect": true
},
"streamSettings": {
"sockopt": {
"tproxy": "tproxy"
}
},
"tag": "transparent_ipv4"
},
{
"port": 39391,
"protocol": "dokodemo-door",
"listen": "127.0.0.1",
"sniffing": {
"enabled": false,
"metadataOnly": false,
"domainsExcluded": null
},
"settings": {
"address": "127.0.0.1"
},
"streamSettings": null,
"tag": "api-in_ipv4"
}
],
"outbounds": [
{
"tag": "proxy",
"protocol": "shadowsocks",
"settings": {
"servers": [
{
"address": "xray-server-ip",
"method": "aes-256-gcm",
"password": "redacted",
"port": 443
}
]
},
"streamSettings": {
"sockopt": {
"mark": 128
}
}
},
{
"tag": "direct",
"protocol": "freedom",
"settings": {
"domainStrategy": "UseIP"
},
"streamSettings": {
"sockopt": {
"mark": 128
}
}
},
{
"tag": "block",
"protocol": "blackhole",
"settings": {}
}
],
"routing": {
"domainStrategy": "IPOnDemand",
"domainMatcher": "mph",
"rules": [
{
"type": "field",
"outboundTag": "direct",
"ip": [
""
],
"port": "443"
},
{
"type": "field",
"outboundTag": "direct",
"inboundTag": [
"transparent_ipv4"
],
"ip": [
"geoip:private",
"127.0.0.1/8",
"router-wan-ip/23",
"192.168.1.1/24",
"::1/128",
"fe80::11:4ff:fef5:8700/64"
],
"port": "53"
},
{
"type": "field",
"outboundTag": "direct",
"inboundTag": [
"transparent_ipv4"
],
"domain": [
"geosite:category-ru",
"geosite:category-gov-ru"
]
},
{
"type": "field",
"outboundTag": "direct",
"inboundTag": [
"transparent_ipv4"
],
"ip": [
"geoip:private",
"geoip:ru",
"127.0.0.1/8",
"router-wan-ip/23",
"192.168.1.1/24",
"::1/128",
"fe80::11:4ff:fef5:8700/64"
]
},
{
"type": "field",
"outboundTag": "proxy",
"inboundTag": [
"transparent_ipv4"
]
},
{
"type": "field",
"outboundTag": "api-out",
"inboundTag": [
"api-in_ipv4"
]
},
{
"type": "field",
"outboundTag": "proxy",
"port": "0-65535"
}
]
},
"api": {
"tag": "api-out",
"services": [
"LoggerService"
]
}
}
Integrity requirements
Description
I run xray via v2raya on OpenWRT (xray manually updated to 25.3.6). I've noticed that in
tproxymode thexrayprocess consumes more and more memory until it's killed by the OS or I restart it from the v2raya UI. I tried investigating it and it looks like it doesn't release connections:When I run
gopsto examine the process, it shows a whole lot of connections like these (IPs mangled to protect people's privacy), literally tens of thousands of them:Active connections look like this:
If I shut down my BitTorrent client (running on a different machine on the LAN), the growth is stopped, but existing connections aren't removed.
Reproduction Method
Configuration:
Client config
Details
Server config
Details
Client log
Details
Server log
Details