Coder Social home page Coder Social logo

Comments (8)

Fangliding avatar Fangliding commented on June 11, 2024

Client config and server config just as the template required. Why ignore it

from xray-core.

sakontwist avatar sakontwist commented on June 11, 2024

I use split and complex routing (homeland via vps balancer) on the client, it will be difficult to give full conifguration, I will give part of the config on the problem:

outbounds for observed node

    {
      "protocol": "shadowsocks",
      "tag": "vps6",
      "settings": {
	    "servers": [
            {
                "address": "x.x.x.x","port": xxxx,
                "method": "2022-blake3-chacha20-poly1305",
                "password": "xxxxxxxxxx",
                "uot":true, "UoTVersion":2
              }
	    ]
      },
      "mux": {
          "enabled": true,
          "concurrency": 8,
          "xudpConcurrency": 0,
          "xudpProxyUDP443": "allow"
      }
    }

observer config

"observatory": {
    "subjectSelector": [
      "vps6",
      "vps5",
      "vps2"
    ],
    "probeURL": "https://www.instagram.com",
    "probeInterval": "30s",
    "enableConcurrency": true
  }

balancer

	"balancers": [
		{
			"tag": "ss-bl",
			"selector": ["vps6","vps5","vps2"],
			"strategy": {
				"type": "leastPing"
			},
			"fallbackTag": "vps6"
		}
	]  

"observed" nodes
inbound:

    {
      "tag":"in-ss",
      "listen": "x.x.x.x","port": xxx,
      "protocol": "shadowsocks",
      "settings": {
        "network":"tcp",
        "method": "2022-blake3-chacha20-poly1305",
        "password":"xxxxxxxxxx"
      },
      "sniffing": {
        "enabled": false,
        "destOverride":["http","tls","quic"],
        "routeOnly": true
      }
    }

routing:

  "routing": {
    "domainStrategy": "AsIs",
    "rules": [
      {
        "inboundTag": ["in_api"],
        "outboundTag": "api"
      },
      {
	"inboundTag": ["metrics-in"],
	"outboundTag": "metrics-out"
      }
    ]
  }

out:

  "outbounds": [
    {
      "tag": "direct",
      "protocol": "freedom",
      "settings": {
        "domainStrategy": "AsIs"
      }
    }
  ]

I assume polls need to be done less frequently than the timeout policy.... (using default values for policy).
I have to disable observer for now so that Xray doesn't crash, but I can reproduce if necessary.

from xray-core.

Fangliding avatar Fangliding commented on June 11, 2024

Attempting to remove unnecessary options and routes to provide a complete configuration, it is difficult to determine the problem if it cannot be reproduced
And if the observer is turned off, will the problem still be exists?

from xray-core.

yuhan6665 avatar yuhan6665 commented on June 11, 2024

what if you change observatory to burstObservatory config?

from xray-core.

sakontwist avatar sakontwist commented on June 11, 2024
  1. Which of these do you consider “unnecessary options”?
-rw-r--r-- 1 root root  144 апр 27 09:27 00-log.json
-rw-r--r-- 1 root root  165 апр 27 00:26 05-api-stats-metrics.json
-rw-r--r-- 1 root root  672 апр 29 17:02 10-dns.json
-rw-r--r-- 1 root root 4467 мая  5 20:09 15-routing.json
-rw-r--r-- 1 root root  381 апр 27 00:26 19-in-api-metrics.json
-rw-r--r-- 1 root root  354 апр  7 17:47 20-policy.json
-rw-r--r-- 1 root root 1004 апр 27 09:27 23-in-lan.json
-rw-r--r-- 1 root root 1535 мая  5 22:11 25-in-spec.json
-rw-r--r-- 1 root root 1889 апр 24 12:45 35-in-ext.json
-rw-r--r-- 1 root root  254 апр 24 19:11 40-out-direct.json
-rw-r--r-- 1 root root 1033 апр 27 00:26 45-out-internal-tail.json
-rw-r--r-- 1 root root 2725 апр 24 21:41 50-out-ss-vps-tail.json
-rw-r--r-- 1 root root 4015 апр 25 01:08 60-out-rea-vps-tail.json
  1. Turning off the observer completely eliminated the problem:
    image

  2. The documentation lags significantly behind the development, I did the "observer" customization by finding examples in the issues. I did not try burstObserver, because there is very little information on its configuration.

from xray-core.

sakontwist avatar sakontwist commented on June 11, 2024

It seems the problem was that I have an entry "geosite:instagram" in the routing section:

  "routing": {
	"domainStrategy":"IPOnDemand",
	"rules": [
                ...
		{
			"inboundTag": ["in_tproxy","in_socks_lan","in_vless","in-ss"],
			"domain": [
				"geosite:instagram",
				"geosite:facebook",
                                ...
			],
			"balancerTag": "ss-bl"
		},

I have changed the ProbeURL to a different address that is not in the routing lists through balancer outbounds and the problem on the observed nodes is not reproduced.
It is not clear how "observer" requests through the routing and balancer is causing the problem on "observed" nodes.

from xray-core.

yuhan6665 avatar yuhan6665 commented on June 11, 2024

@sakontwist interesting, sounds like the root cause is you created an infinite loop.
Ideally we should fix it.

from xray-core.

Fangliding avatar Fangliding commented on June 11, 2024

Even if it leads to a loop, it should still occur on the client side. Therefore, this observers requests is different from normal requests, leading to memory leaks on the server side (such as mux sessions that may not close properly)

from xray-core.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.