Перейти к содержанию

Рекомендуемые сообщения

Опубликовано (изменено)

Kazantsev, примерно вот так:


 

Спойлер

05_routing.json

{
"routing": {
	"balancers": [
			{
			"tag": "reservation",
			"selector": ["vps1", "vps2"],
			"strategy": {
				"type": "leastPing"
				},
			"fallbackTag": "vps1"
			}
		],
	"rules": [
			// Резервирование (через фильтр)
			{
			"inboundTag": ["policy", "proxy1"],
			"balancerTag": "reservation",
			"domain": [
				"speedtest"
				],
			"type": "field"
			},

			// Резервирование (через провайдера)
			{
			"inboundTag": ["policy", "proxy1"],
			"outboundTag": "provider",
			"type": "field"
			},
		]
	}
}

07_observatory.json

{
"observatory": {
	"subjectSelector": ["vps1", "vps2"],
	"probeURL": "https://denmark.dk/",
	"probeInterval": "60s",
	"enableConcurrency": true
	}
}

 

vps1 и vps2 - теги двух ваших серверов.

поскольку выбор сервера осуществляется по минимальному пингу, probeURL - надо подобрать таким, чтобы пинг до него через основной сервер был стабильно меньше чем через резервный...

fallbackTag - подключение, через которое пойдёт трафик - если не получится сделать выбор...

Изменено пользователем Neytrino
  • Ответов 2,5 тыс
  • Создана
  • Последний ответ

Топ авторов темы

Опубликовано

Здравствуйте, правильно ли я понял, как работает XKeen/XRay?

Трафик отправляется в XRay, где он сверяется с таблицей маршрутизации и затем либо отправляется напрямую, либо перенаправляется на прокси-сервер.

Вопрос: XRay отслеживает весь трафик или только трафик устройств, указанных в политике XKeen?

Опубликовано
1 час назад, Neytrino сказал:

Вы хотите переключаться на второй, когда нет связи с первым?

Балансер по-другому работает: направляет трафик через тот аутбаунд из настроенных, который в данный момент меньше загружен и/или быстрее отзывается.

 

 

Опубликовано
В 14.12.2024 в 09:29, Kazantsev сказал:

Кто-то может дать шаблон для балансера (вроде так называется) прибить к конфигу  резервный vps сервер, не нашёл как это сделать

Вот здесь посмотрите.

Опубликовано

Gmarapet, частным случаем его работы - является перенаправление трафика с недоступного сервера на доступный. Если вам известен другой способ сделать это - поделитесь с нами этим великим знанием...

Опубликовано (изменено)
2 часа назад, Neytrino сказал:

примерно вот так:

 

Вот мой роутинг, можете добавить в мой роутинг это?) 
я просто не пойму, как правильно добавить чтобы работало всё, а именно перед чем
и также мне нужно добавить второй впс сервер в 04_outbounds - я правильно понял?
05_routing.json

Изменено пользователем Kazantsev
Опубликовано
9 минут назад, Neytrino сказал:

Kazantsev, если вы продолжаете "не хотеть" во всём этом разбираться - может оно вам не так уж и надо..?

05_routing.json 2.23 kB · 0 загрузок 07_observatory.json 170 B · 1 загрузка

спасибо большое) теперь нужно добавить в 04_outbounds второй vless конфиг ниже первого, я правильно понимаю?)

Опубликовано (изменено)
13 минут назад, Neytrino сказал:

Kazantsev, да, вы понимаете правильно...

всё правильно?  проверьте) тэг "vless-reality" и "vless-reality-2" так?
данные для подключения разумеется скрыл от любителей халявы)
04_outbounds.json

Изменено пользователем Kazantsev
Опубликовано (изменено)

Kazantsev, нет. У вас первое подключение описано вот этим:

Спойлер

 

{
            "tag": "vless-reality",
            "protocol": "vless",
            "settings": {
                "vnext": [
                    {
                        "address": "буба",
                        "port": 443,
                        "users": [
                            {
                                "id": "баба",
                                "flow": "xtls-rprx-vision",
                                "encryption": "none",
                                "level": 0
                            }
                        ]
                    }
                ]
            },
            "streamSettings": {
                "network": "tcp",
                "security": "reality",
                "realitySettings": {
                    "publicKey": "буба",
                    "fingerprint": "chrome",
                    "serverName": "бу",
                    "shortId": "55e97d27",
                    "spiderX": "/"
                }
            }
        },

После нижней }, - должна начинаться аналогичная структура, с другим тегом ("tag": "vless-reality-2",) и данными для подключения ко 2-му серверу. То что вы скопировали два раза подключения для реализации прямого доступа и блокировки - демонстрирует что вы (к сожалению) так и не разобрались как это устроено и работает:( Простым копи-пастом непонятных кусков - у вас не получится сделать нечто работающее (об этом, вам уже неоднократно писали в этой теме)...

Изменено пользователем Neytrino
Опубликовано
7 минут назад, Neytrino сказал:

Kazantsev, нет. У вас первое подключение описано вот этим:

  Скрыть контент

 

{
            "tag": "vless-reality",
            "protocol": "vless",
            "settings": {
                "vnext": [
                    {
                        "address": "буба",
                        "port": 443,
                        "users": [
                            {
                                "id": "баба",
                                "flow": "xtls-rprx-vision",
                                "encryption": "none",
                                "level": 0
                            }
                        ]
                    }
                ]
            },
            "streamSettings": {
                "network": "tcp",
                "security": "reality",
                "realitySettings": {
                    "publicKey": "буба",
                    "fingerprint": "chrome",
                    "serverName": "бу",
                    "shortId": "55e97d27",
                    "spiderX": "/"
                }
            }
        },

После нижней }, - должна начинаться аналогичная структура, с другим тегом ("tag": "vless-reality-2",) и данными для подключения ко 2-му серверу. То что вы скопировали два раза подключения для реализации прямого доступа и блокировки - демонстрирует что вы (к сожалению) так и не разобрались как это устроено и работает:( Простым копи-пастом непонятных кусков - у вас не получится сделать нечто работающее (об этом, вам уже неоднократно писали в этой теме)...

так нужно заполнить?
если что не так, то можете исправить у меня
04_outbounds.json

Опубликовано

Kazantsev, вы исправили - но не всё (потому что не понимаете что делаете)... Извините, но за вас править не буду (в теме были примеры для нескольких подключений - поищите, изучите - разберитесь)... То чего в теме (в явном виде не было) - я вам показал...

Опубликовано (изменено)
10 минут назад, Neytrino сказал:

Kazantsev, вы исправили - но не всё (потому что не понимаете что делаете)... Извините, но за вас править не буду (в теме были примеры для нескольких подключений - поищите, изучите - разберитесь)... То чего в теме (в явном виде не было) - я вам показал...

а сейчас всё ок? как тебе? я просто пытаюсь понять как правильно делать конфиг

04_outbounds.json

Изменено пользователем Kazantsev
Опубликовано (изменено)
9 часов назад, Neytrino сказал:

Kazantsev, вы исправили - но не всё (потому что не понимаете что делаете)... Извините, но за вас править не буду (в теме были примеры для нескольких подключений - поищите, изучите - разберитесь)... То чего в теме (в явном виде не было) - я вам показал...

Ну всё, вроде теперь всё сделал правильно
04_outbounds.json

Изменено пользователем Kazantsev
Опубликовано
В 05.09.2024 в 00:28, Jerome Astero сказал:

Да, суть была в этом. Ухитрился остаться на встроенной памяти и с xray.

Ошибки xkeen -rrx до сих пор остаются. Но при этом все работает.

Проверка
     Ошибка: Файл xray.list не найден в директории «/opt/lib/opkg/info/»
     Ошибка: Файл xray.control не найден в директории «/opt/lib/opkg/info/»

Добрый день, подскажите, а как вы решили проблему?

Те же ошибки идут, но xkeen и xray у меня на флешку установлены, на роутере всего 1мб, тут без вариантов)

Опубликовано
11 часов назад, Kazantsev сказал:

вроде теперь всё сделал правильно

Это уже похоже на конфиг. Осталось подсунуть его Xray'ю и посмотреть что он скажет...

Опубликовано (изменено)
36 минут назад, Neytrino сказал:

Это уже похоже на конфиг. Осталось подсунуть его Xray'ю и посмотреть что он скажет...

сказал что xkeen запущен
а если я хочу чтобы xkeen выбирал сервер сам по своему предпочтению, то надо так ? по пингу
всё корректно будет работать?
    "balancers": [
    {
      // Балансировщик подключений | Выбирает сервер с минимальным пингом
      "tag": "balanced",
      "selector": ["vless-reality", "vless-reality-2"],  // Список серверов для балансировки
      "strategy": "leastPing", // Стратегия выбора сервера (наименьший пинг)
      "interval": 300,         // Проверка доступности каждые 300 секунд
      "timeout": 3,             // Тайм-аут для ответа сервера (в секундах)
      "fallbackTag": "vless-reality-2"

05_routing.json

Изменено пользователем Kazantsev
Опубликовано (изменено)
20 минут назад, Neytrino сказал:

Kazantsev, если вы используете leastPing - всё что касается проверок настраивается в обсерватории...

ну, я засунул твой файл обсерватории, в него нужно ещё что-то добавить, исправить?
{
"observatory": {
    "subjectSelector": ["vless-reality", "vless-reality-2"],
    "probeURL": "https://denmark.dk/",
    "probeInterval": "60s",
    "enableConcurrency": true
    }
}

Изменено пользователем Kazantsev
Опубликовано (изменено)

Kazantsev, у меня он работает именно в таком виде (ну только теги подключений мои)...

В текущем виде он каждые 60 секунд проверяет пинг до https://denmark.dk/ по всем перечисленным в "subjectSelector" подключениям.

 

У меня в файле роутинг (в описании балансера) строчек:

  "interval": 300,         // Проверка доступности каждые 300 секунд
      "timeout": 3,             // Тайм-аут для ответа сервера (в секундах)

нету. Как они повлияют на работоспособность вашей конфигурации - я не знаю...

 

Если вы собираетесь использовать тег балансера "balanced", - убедитесь что вписали его во всех правилах (где в качестве исходящего подключения - должен использоваться балансер)...

Изменено пользователем Neytrino
Опубликовано
1 минуту назад, Neytrino сказал:

У меня в роутинге строчек:

  "interval": 300,         // Проверка доступности каждые 300 секунд
      "timeout": 3,             // Тайм-аут для ответа сервера (в секундах)

нету. Как они повлеяют на работоспособность вашей конфигурации - я не знаю...

10 минут назад, Neytrino сказал:

тег балансера "balanced", - убедитесь что вписали его во всех правилах (где в качестве исходящего подключения - должен использоваться балансер)...

 

где нужно вписать? у меня пишет об ошибке Failed to start: main: failed to create server > app/router: balancer reservation not found
 

05_routing.json

Опубликовано

Kazantsev, я же написал: во всех правилах - где должен использоваться балансер (в качестве исходящего подключения). Если вы произвольно (на свой вкус) изменяете тег в одном месте - нужно менять его и во всех остальных (иначе ничего не будет работать)...

Опубликовано (изменено)
10 минут назад, Neytrino сказал:

Kazantsev, я же написал: во всех правилах - где должен использоваться балансер (в качестве исходящего подключения). Если вы произвольно (на свой вкус) изменяете тег в одном месте - нужно менять его и во всех остальных (иначе ничего не будет работать)...

вижу
вместо тэга reservation вписать balanced - так?   
 // VPS подключение  |  Доменные имена
      {
       "inboundTag": ["redirect", "tproxy"],
       "balancerTag": "balanced",
       "type": "field",
       "domain": [

Изменено пользователем Kazantsev
Опубликовано (изменено)
15 минут назад, Neytrino сказал:

Kazantsev, я же написал: во всех правилах - где должен использоваться балансер (в качестве исходящего подключения). Если вы произвольно (на свой вкус) изменяете тег в одном месте - нужно менять его и во всех остальных (иначе ничего не будет работать)...

и в обсерватории для балансед нужно что-то добавлять или уже всё готово?

05_routing.json

Изменено пользователем Kazantsev
Опубликовано

Kazantsev, нет. Её задача проверять пинг до указанного узла через перечисленные подключения раз в заданный период. Она и не знает о существовании балансера...

Опубликовано (изменено)
7 минут назад, Neytrino сказал:

Kazantsev, нет. Её задача проверять пинг до указанного узла через перечисленные подключения раз в заданный период. Она и не знает о существовании балансера...

получается всё готово для корректной работы балансера? ничего дополнять или исправлять не нужно в обсерватории ?
{
"routing": {
  "balancers": [
      {
      "tag": "balanced",
      "selector": ["vless-reality", "vless-reality-2"],
      "strategy": {
        "type": "leastPing"
        },
      "fallbackTag": "vless-reality-2"
      }
    ],
  "rules": [

{
"observatory": {
    "subjectSelector": ["vless-reality", "vless-reality-2"],
    "probeURL": "https://denmark.dk/",
    "probeInterval": "60s",
    "enableConcurrency": true
    }
}

05_routing.json 07_observatory.json

Изменено пользователем Kazantsev
Опубликовано (изменено)
29 минут назад, Neytrino сказал:

Kazantsev, вроде бы, запустите конфиг и (почти) сразу всё станет ясно...

конфиг запустился без ошибок, получается всё готово?) и почему именно выбрали 60 сек в обсерватории? Мне хочется понять данные секунды опроса

Изменено пользователем Kazantsev

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   2 пользователя онлайн

×
×
  • Создать...

Важная информация

На этом сайте используются файлы cookie. Нажимая "Я принимаю" или продолжая просмотр сайта, вы разрешаете их использование: Политика конфиденциальности.