Jump to content

Recommended Posts

2 часа назад, iamrasch сказал:

Добрый день!

При попытке старта xray получаю одно и то же на всех версиях, подскажите пожалуйста, куда копать?

Конфиги использовал и свои и из "ленивого метода", не помогает.

~ # xkeen -start
  Xray запущен
Xray 1.8.4 (Xray, Penetrates Everything.) Custom (go1.21.0 linux/mips)
A unified platform for anti-censorship.
2023/09/17 11:32:30 Using confdir from arg: /opt/etc/xray/configs
2023/09/17 11:32:30 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/._07_inbounds.json
Failed to start: main: failed to load config files: [/opt/etc/xray/configs/._07_inbounds.json /opt/etc/xray/configs/._08_outbounds.json /opt/etc/xray/configs/._10_routing.json /opt/etc/xray/configs/01_log.json /opt/etc/xray/configs/02_stats.json /opt/etc/xray/configs/03_dns.json /opt/etc/xray/configs/04_reverse.json /opt/etc/xray/configs/05_fake-dns.json /opt/etc/xray/configs/06_transport.json /opt/etc/xray/configs/07_inbounds.json /opt/etc/xray/configs/08_outbounds.json /opt/etc/xray/configs/09_policy.json /opt/etc/xray/configs/10_routing.json /opt/etc/xray/configs/11_fallbacks.json] > infra/conf/serial: failed to decode config: /opt/etc/xray/configs/._07_inbounds.json > infra/conf/serial: failed to read config file at line 1 char 1 > invalid character '\x00' looking for beginning of value

 

 

 

То же самое, только ошибка немного другая..

Скрытый текст

~ # xkeen -start

Xray запущен

Xray 1.8.4 (Xray, Penetrates Everything.) Custom (go1.21.0 linux/arm64)

A unified platform for anti-censorship.

2023/09/17 13:39:48 Using confdir from arg: /opt/etc/xray/configs

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/01_log.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/02_stats.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/03_dns.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/04_reverse.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/05_fake-dns.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/06_transport.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/07_inbounds.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/08_outbounds.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/09_policy.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/10_routing.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/11_fallbacks.json

Failed to start: main: failed to load config files: [/opt/etc/xray/configs/01_log.json /opt/etc/xray/configs/02_stats

.json /opt/etc/xray/configs/03_dns.json /opt/etc/xray/configs/04_reverse.json /opt/etc/xray/configs/05_fake-dns.json

/opt/etc/xray/configs/06_transport.json /opt/etc/xray/configs/07_inbounds.json /opt/etc/xray/configs/08_outbounds.jso

n /opt/etc/xray/configs/09_policy.json /opt/etc/xray/configs/10_routing.json /opt/etc/xray/configs/11_fallbacks.json]

> infra/conf: invalid field rule > infra/conf: invalid port: [

135,

137,

138,

139

] > json: cannot unmarshal array into Go value of type uint32

 

14 минуты назад, Alexey77 сказал:

Здравствуйте похоже вот в этом файле 07_inbounds.json ошибка. Вы чем файлы редактируете? 

mcedit в терминале

  • Upvote 1
Link to comment
Share on other sites

36 минут назад, adk сказал:

То же самое, только ошибка немного другая..

  Показать содержимое

~ # xkeen -start

Xray запущен

Xray 1.8.4 (Xray, Penetrates Everything.) Custom (go1.21.0 linux/arm64)

A unified platform for anti-censorship.

2023/09/17 13:39:48 Using confdir from arg: /opt/etc/xray/configs

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/01_log.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/02_stats.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/03_dns.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/04_reverse.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/05_fake-dns.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/06_transport.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/07_inbounds.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/08_outbounds.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/09_policy.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/10_routing.json

2023/09/17 13:39:48 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/11_fallbacks.json

Failed to start: main: failed to load config files: [/opt/etc/xray/configs/01_log.json /opt/etc/xray/configs/02_stats

.json /opt/etc/xray/configs/03_dns.json /opt/etc/xray/configs/04_reverse.json /opt/etc/xray/configs/05_fake-dns.json

/opt/etc/xray/configs/06_transport.json /opt/etc/xray/configs/07_inbounds.json /opt/etc/xray/configs/08_outbounds.jso

n /opt/etc/xray/configs/09_policy.json /opt/etc/xray/configs/10_routing.json /opt/etc/xray/configs/11_fallbacks.json]

> infra/conf: invalid field rule > infra/conf: invalid port: [

135,

137,

138,

139

] > json: cannot unmarshal array into Go value of type uint32

 

mcedit в терминале

Доброго Вам времени суток!

Была синтаксическая ошибка в routing.json.
Теперь она исправлена. Перекачайте, пожалуйста, файл.
Или можете вручную заменить

port: [
135,
137,
138,
139
],

На

"port": "135, 137, 138, 139",


 

  • Thanks 1
Link to comment
Share on other sites

6 часов назад, jameszero сказал:

Добрый день, Skrill0!

В версии 0.8 автозапуск xray также не работает. «Сценарий initrc» в настройках OPKG указан верно. Если заменить файл S24xray на стандартный скрипт автозапуска (код ниже), то xray при перезагрузке маршрутизатора стартует нормально.

  Скрыть содержимое

#!/bin/sh

export XRAY_LOCATION_ASSET=/opt/etc/xray/dat
export XRAY_LOCATION_CONFIG=/opt/etc/xray/configs
export XRAY_LOCATION_CONFDIR=/opt/etc/xray/configs

ENABLED=yes
PROCS=xray
ARGS="run"
PREARGS=""
DESC=$PROCS
PATH=/opt/sbin:/opt/bin:/opt/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

. /opt/etc/init.d/rc.func

Здравствуйте!

Благодарю за приложенную конфигурацию, она также должна работать.
Но не будет обрабатывать ошибки.

Проверьте, пожалуйста, свою конфигурацию Xray на предмет ошибок.
Так как скрипт init.d из Xkeen не запустит Xray в случае, если в конфигурации они присутствуют для предотвращения сбоев соединения.

Записала для Вас видео с примером работы автозапуска и отработки типовой ошибки.
YouTube

На видео отображены следующие действия:

  1. Проверка уже работающего Xray
  2. Остановка Xray
  3. Перезагрузка устройства
  4. Проверка запустившегося Xray после перезагрузки | Успешно
  5. Изменение рабочей конфигурации на нерабочую
  6. Остановка Xray
  7. Перезагрузка устройства
  8. Проверка запустившегося Xray после перезагрузки | Неудача
  9. Возвращение рабочей конфигурации
  10. Перезагрузка устройства
  11. Проверка запустившегося Xray после перезагрузки | Успешно

Содержимое S24xray используемое в видео

Скрытый текст
#!/bin/sh
### Начало информации о службе
# Краткое-описание:        Запуск / Остановка Xray
### Конец информации о службе

green="\033[32m"
red="\033[31m"
yellow="\033[33m"
reset="\033[0m" 

xkeen_info_log="/opt/var/log/xkeen/info.log"
xkeen_error_log="/opt/var/log/xkeen/error.log"

path=/opt/bin:/opt/sbin:/sbin:/bin:/usr/sbin:/usr/bin
xray_path=xray
xray_config=/opt/etc/xray/configs
pidfile=/opt/var/run/xray.pid
app_name=Xkeen

export XRAY_LOCATION_ASSET=/opt/etc/xray/dat/

# Функция для ведения журнала в роутере
log_notice_init(){
    local header=${app_name}
    logger -p notice -t "${header}" "${1}"
}

# Функция для проверки статуса xray
xray_status()
{
  if [ -f $pidfile ]; then
    local pid=$(cat $pidfile)
    if [ -d /proc/$pid ]; then
      return 0 # Процесс существует и работает
    else
      return 1 # Процесс не существует
    fi
  else
    return 1 # pid файл отсутствует
  fi
}

# Функция для запуска xray
start()
{
	log_notice_init "Инициирован запуск Xray"
  if xray_status; then
    echo -e "  Xray уже ${green}запущен${reset}"
	log_notice_init "Не удалось запустить Xray, так как он уже запущен"
	
	echo "" >> "$xkeen_error_log"
	echo "[start] Проверка статуса Xray" >> "$xkeen_error_log"
    echo "	[error] Xray уже запущен" >> "$xkeen_error_log"
	echo "[end] Проверка статуса Xray выполнена" >> "$xkeen_error_log"
	echo "" >> "$xkeen_error_log"
  else
    $xray_path run -confdir $xray_config &
    echo $! > $pidfile
	echo -e "  Xray ${green}запущен${reset}"
	log_notice_init "Xray запущен"
	
    echo "" >> "$xkeen_info_log"    
	echo "[end] Проверка статуса Xray" >> "$xkeen_info_log"
	echo "	[info] Xray запущен" >> "$xkeen_info_log"
	echo "[end] Проверка статуса Xray выполнена" >> "$xkeen_info_log"
	echo "" >> "$xkeen_info_log"
  fi
}

# Функция для остановки xray
stop()
{
	log_notice_init "Инициирована остановка Xray"
  if xray_status; then
    kill "$(cat $pidfile)"
    rm -f $pidfile
    echo -e "  Xray ${yellow}остановлен${reset}"
	log_notice_init "Xray остановлен"
	
    echo "" >> "$xkeen_info_log"
	echo "[start] Проверка статуса Xray" >> "$xkeen_info_log"
	echo "	[info] Xray остановлен" >> "$xkeen_info_log"
	echo "[end] Проверка статуса Xray выполнена" >> "$xkeen_info_log"
	echo "" >> "$xkeen_info_log"
  else
    echo -e "  Xray ${red}не запущен${reset}"
	log_notice_init "Остановка Xray не удалась. Xray не был запущен"
	
	echo "" >> "$xkeen_error_log"
	echo "[start] Проверка статуса Xray" >> "$xkeen_error_log"
    echo "	[error] Xray не был запущен" >> "$xkeen_error_log"
	echo "[end] Проверка статуса Xray выполнена" >> "$xkeen_error_log"
	echo "" >> "$xkeen_error_log"
  fi
}

# Функция для ожидания завершения процесса
wait_for_process()
{
  local pid=$1
  while [ -d /proc/$pid ]; do
    sleep 1
  done
}

# Обработка аргументов командной строки
case "$1" in
  start)
    start
    ;;
  stop)
    stop
    ;;
  status)
    if xray_status; then
      echo -e "  Xray ${green}запущен${reset}"
	  
	  echo "" >> "$xkeen_info_log"
      echo "[start] Проверка статуса Xray" >> "$xkeen_info_log"
	  echo "	[info] Xray запущен" >> "$xkeen_info_log"
	  echo "[end] Проверка статуса Xray выполнена" >> "$xkeen_info_log"
	  echo "" >> "$xkeen_info_log"
    else
	  echo -e "  Xray ${red}не запущен${reset}"
	  
	  echo "" >> "$xkeen_info_log"
	  echo "[start] Проверка статуса Xray" >> "$xkeen_info_log"
      echo "	[info] Xray не запущен" >> "$xkeen_info_log"
	  echo "[end] Проверка статуса Xray выполнена" >> "$xkeen_info_log"
	  echo "" >> "$xkeen_info_log"
    fi
    ;;
  restart)
    stop > /dev/null 2>&1
    if [ -f $pidfile ]; then
      local pid=$(cat $pidfile)
      wait_for_process "$pid"
    fi
    start > /dev/null 2>&1
    echo -e "  Xray ${green}перезапущен${reset}"
    ;;
  *)
    echo -e "  Команды: ${green}start${reset} | ${red}stop${reset} | ${yellow}restart${reset} | status"
    ;;
esac

exit 0

 

Link to comment
Share on other sites

4 часа назад, iamrasch сказал:

Добрый день!

При попытке старта xray получаю одно и то же на всех версиях, подскажите пожалуйста, куда копать?

Конфиги использовал и свои и из "ленивого метода", не помогает.

~ # xkeen -start
  Xray запущен
Xray 1.8.4 (Xray, Penetrates Everything.) Custom (go1.21.0 linux/mips)
A unified platform for anti-censorship.
2023/09/17 11:32:30 Using confdir from arg: /opt/etc/xray/configs
2023/09/17 11:32:30 [Info] infra/conf/serial: Reading config: /opt/etc/xray/configs/._07_inbounds.json
Failed to start: main: failed to load config files: [/opt/etc/xray/configs/._07_inbounds.json /opt/etc/xray/configs/._08_outbounds.json /opt/etc/xray/configs/._10_routing.json /opt/etc/xray/configs/01_log.json /opt/etc/xray/configs/02_stats.json /opt/etc/xray/configs/03_dns.json /opt/etc/xray/configs/04_reverse.json /opt/etc/xray/configs/05_fake-dns.json /opt/etc/xray/configs/06_transport.json /opt/etc/xray/configs/07_inbounds.json /opt/etc/xray/configs/08_outbounds.json /opt/etc/xray/configs/09_policy.json /opt/etc/xray/configs/10_routing.json /opt/etc/xray/configs/11_fallbacks.json] > infra/conf/serial: failed to decode config: /opt/etc/xray/configs/._07_inbounds.json > infra/conf/serial: failed to read config file at line 1 char 1 > invalid character '\x00' looking for beginning of value

Доброго Вам вечера!

Попробуйте следующие действия

  1. Удалить все существующие конфигурации по пути
    «/opt/etc/xray/configs/»
  2. Заново скачать «Ленивую» конфигурацию из главного поста темы
  3. Положить ее в «/opt/etc/xray/configs/»
  4. Отредактировать Inbounds и Outbounds под себя, согласно инструкции
  5. Проверить все файлы на соответствие с Unix (LF), UTF-8

Пример проверки Unix (LF), UTF-8 через блокнот. В Notepad++ аналогично в правом нижем углу.
image.thumb.png.578d56b10c9ab22e36e0d4423a6603da.png

  • Upvote 2
Link to comment
Share on other sites

8 часов назад, bigpu сказал:

в версии 0.8 проблема не ушла:

Добрый вечер!

Описала проблему более детально одним постом выше.
Пожалуйста, проверьте свою конфигурацию Xray на предмет ошибок.

  • Thanks 1
  • Upvote 1
Link to comment
Share on other sites

Немного глупых вопросов, которые мне не дают покоя:
1. Правильно ли я понимаю, что вторая команда по удалению xray не полностью удаляют файлы, связанные с ним?

В 08.09.2023 в 19:39, Skrill0 сказал:

Способ удаления

  Скрыть содержимое
opkg remove xkeen
opkg remove xray

Несколько раз делал процедуру полной переустановки, после вижу, что Xray слушает как и старый порт, указанный ранее, так и новый.

Скрытый текст

image.png.d5f1d65aebfa103d4ee9951bdeece353.png

2. По рыбе ниже попытался добавить whoer.net по частичному совпадению в список "прямых подключений". В итоге все равно маршрут идёт через VPS. Роутинг файл скачал из списка для лентяев, добавив только одну строку. После изменений файла Xkeen перезапускал.

Скрытый текст

image.png.f6c6826531d3a376684f74ae6d0e1a52.png

 

В 12.09.2023 в 19:06, Skrill0 сказал:

Если Вас все-таки интересует ручной способ, то есть следующие варианты

  1. Частичное совпадение
    "vk.com" = "vk.com.ru", "music.vk.com.ru", "www.vk.com/im" ≠ vk.ru
  2. Регулярное выражение
    Пример записи: "regexp:\\.ya.*\\.ru$" = "www.yandex.ru", "mail.yandex.ru" ≠ "ya.ru"
    Обязательно начинается с "regexp:"

 

 

 

Edited by adk
  • Upvote 1
Link to comment
Share on other sites

16 минут назад, adk сказал:

2. По рыбе ниже попытался добавить whoer.net по частичному совпадению в список "прямых подключений". В итоге все равно маршрут идёт через VPS. Роутинг файл скачал из списка для лентяев, добавив только одну строку.

  Скрыть содержимое

image.png.830d1b3ebf30f05c40fad86bbe902777.png

У Вас допущена синтаксическая ошибка.
После "whoer.net" должна стоять «,».

Что можно попробовать дополнительно:

  1. Оставить просто «whoer» и проверить
  2. Изменить domainStrategy в начале файла 10_routing.json на "AsIs"
     
16 минут назад, adk сказал:

Правильно ли я понимаю, что вторая команда по удалению xray не полностью удаляют файлы, связанные с ним?

Удаляются все файлы связанные с Xray, 
list удаления выглядит так:

Скрытый текст
/opt/sbin/xray
/opt/etc/xray/dat/geosite_antifilter.dat
/opt/etc/xray/dat/geosite_antizapret.dat
/opt/etc/xray/dat/geosite_v2fly.dat
/opt/etc/xray/dat/geoip_antifilter.dat
/opt/etc/xray/dat/geoip_v2fly.dat
/opt/etc/xray/dat
/opt/etc/xray/configs/01_log.json
/opt/etc/xray/configs/02_stats.json
/opt/etc/xray/configs/03_dns.json
/opt/etc/xray/configs/04_reverse.json
/opt/etc/xray/configs/05_fake-dns.json
/opt/etc/xray/configs/06_transport.json
/opt/etc/xray/configs/07_inbounds.json
/opt/etc/xray/configs/08_outbounds.json
/opt/etc/xray/configs/09_policy.json
/opt/etc/xray/configs/10_routing.json
/opt/etc/xray/configs/11_fallbacks.json
/opt/etc/xray/configs
/opt/etc/xray
/opt/etc/init.d/S24xray
/opt/var/log/xray/error.log
/opt/var/log/xray/access.log
/opt/var/log/xray
/opt/var/run/xray.pid


Рекомендую следующие действия для исправления

  1. Проверьте свой 07_inbounds.json на наличие старого порта
  2. Перезапустите Xray командой xkeen -restart
  3. Если действия выше не помогли, то рекомендуется перезапустить роутер
Edited by Skrill0
  • Thanks 1
Link to comment
Share on other sites

Наблюдаются проблемы с ключом 

xkeen - start

Xray стартует, но при выходе из сессии — падает вместе с ней.
Как следствие Xray не работает после выхода из сессии.

В течении нескольких часов будет исправлено.
 

  • Thanks 1
Link to comment
Share on other sites

Всем доброго утра!

Вышла версия 0.8.1


Журнал

Скрытый текст

Hot fixes
Исправлены:

  1. Остановка процесса Xray при закрытии сессии
    *  Добавлена отвязка от сессии
  2. Автоматический запуск Xray
    * Переписан метод обнаружения рабочего процесса Xray
  3. Подстройка ключа -tpx под UDP | Спасибо Artem Laptev

Пожалуйста, тестируйте и отпишитесь о результатах.

Обновиться можно с помощью команды

xkeen -uk

 

Edited by Skrill0
  • Thanks 4
Link to comment
Share on other sites

@Skrill0 доброго времени. Все конфиги Xray проверил, все в порядке, тем не менее, так Xray и не стартует после перезагрузки роутера. Могли бы посмотреть мои конфиги?

  • Upvote 1
Link to comment
Share on other sites

После долгого обсуждения с автором в личных сообщениях, наконец-то завели xray. Всё отлично работает на Keenetic Giga (KN-1011). Версию 0.8.1 установил, теперь при отключении от терминальной сессии xray не отключается.

  • Thanks 1
Link to comment
Share on other sites

Добрый день, Skrill0!

Победил автозапуск xray, добавив 10 секундную паузу в скрипт S24xray. Возможно есть более красивое решение, но пока так. Видимо дело опять в Viva с её слабым железом и процессору нужно больше времени на обработку автозапуска.

bigpu и вам доброго дня! Смотрю у вас тоже Viva и та же проблема. Попробуйте прикрепленный файл скопировать в \opt\etc\init.d с перезаписью существующего и сообщите, пожалуйста, о статусе xray после перезагрузки Кинетика.

S24xray

  • Thanks 1
Link to comment
Share on other sites

Конечно глупый вопрос, но тем не менее. Можно ли сделать пошаговое руководство - есть keenetic ultra 1811, есть vps - сейчас использую скрипты bird4static для обхода блокировок, соединение к VPS доступно wireguard или openvpn, работает оба варианта. Теперь по шагам:

1) настройка xray на VPS, тут в шапке есть ссылка, и вроде достаточно подробно и понятно в статье изложены все шаги

2) настройка на keenetic xray-клиента, с маршрутизацией и маскировкой выборочного трафика (по заблокированным в РФ ресурсам) через мой VPS. желательна конечно же конфигурация, при которой маршрутизацией будет заниматься исключительно роутер, без необходимости настроек каких-либо прокси на клиентских устройствах.  нет ли где-то пошаговой инструкции для не очень продвинутых пользователей ?...

Edited by VladimirM
  • Upvote 2
Link to comment
Share on other sites

2 часа назад, jameszero сказал:

Видимо дело опять в Viva с её слабым железом и процессору нужно больше времени на обработку автозапуска.

у Viva тупо урезана память в свое время настолько, что ее давно пора в репитеры гнать, убрав с роутера. Шаг влево-вправо от базового кейса, и эту клячу хочется пристрелить, ну или на колбасу)

  • Upvote 1
Link to comment
Share on other sites

3 часа назад, jameszero сказал:

Добрый день, Skrill0!

Победил автозапуск xray, добавив 10 секундную паузу в скрипт S24xray. Возможно есть более красивое решение, но пока так. Видимо дело опять в Viva с её слабым железом и процессору нужно больше времени на обработку автозапуска.

bigpu и вам доброго дня! Смотрю у вас тоже Viva и та же проблема. Попробуйте прикрепленный файл скопировать в \opt\etc\init.d с перезаписью существующего и сообщите, пожалуйста, о статусе xray после перезагрузки Кинетика.

S24xray 4.16 \u041a\u0431 · 9 downloads

Доброго Вам вечера!
Благодарю за решение проблемы!

Обязательно включу его в следующую версию Xkeen и выражу Вам отдельную благодарность в теме)

Link to comment
Share on other sites

18 часов назад, VladimirM сказал:

Конечно глупый вопрос, но тем не менее. Можно ли сделать пошаговое руководство - есть keenetic ultra 1811, есть vps - сейчас использую скрипты bird4static для обхода блокировок, соединение к VPS доступно wireguard или openvpn, работает оба варианта. Теперь по шагам:

1) настройка xray на VPS, тут в шапке есть ссылка, и вроде достаточно подробно и понятно в статье изложены все шаги

2) настройка на keenetic xray-клиента, с маршрутизацией и маскировкой выборочного трафика (по заблокированным в РФ ресурсам) через мой VPS. желательна конечно же конфигурация, при которой маршрутизацией будет заниматься исключительно роутер, без необходимости настроек каких-либо прокси на клиентских устройствах.  нет ли где-то пошаговой инструкции для не очень продвинутых пользователей ?...

Здравствуйте!

Предлагаю посмотреть Вам в сторону «Ленивой» конфигурации.
Маршрутизацией будет заниматься исключительно роутер по указанным в ней правилам.

Домены зоны .ru будут открываться напрямую. Реклама и сервисы аналитики google | yandex блокироваться, а остальное через VPS.

Если в Ваши потребности входит открытие через VPS только заблокированных ресурсов (OpenAI в этот список, к примеру, не входит), то предлагаю Вам попробовать следующую конфигурацию routing.

Она также будет блокировать рекламу и сервисы аналитики, но домены и IP списков AntiFilter и AntiFilter community открывать через VPS.

AnitFilter можно заменить на AntiZapret из Xkeen.
Но он в 3-4 раза тяжелее для роутера, а разницы на практике почти нет.

Также, эти списки можно сделать автоматически обновляемыми в фоне с помощью Xkeen.

Скрытый текст
// Настройка маршрутизации

{
  "routing": {
    "domainStrategy": "IPIfNonMatch",
    "rules": [
      // Настройка черного списка
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "ext:geosite_v2fly.dat:category-ads-all",
          "keyword:google-analytics",  // Могут быть проблемы с сервисами Google. Нужны тесты
          "keyword:analytics.yandex"  // Могут быть проблемы с сервисами Yandex. Нужны тесты
        ],
        "outboundTag": "block",
        "type": "field"
      },
      
      // Блокируем соединение по уязвимым UDP портам
      {
        "inboundTag": ["socks-in"],
        "network": "udp",
        "port": "135, 137, 138, 139",
        "outboundTag": "block",
        "type": "field"
      },      
	        
      // Настройка подключений через VPS
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "ext:geosite_antifilter.dat:antifilter-community",
          "ext:geosite_antifilter.dat:antifilter"
        ],		
        "outboundTag": "proxy",
        "type": "field"
      },
      {
        "inboundTag": ["socks-in"],
        "ip": [
          "ext:geoip_antifilter.dat:antifilter-community",
          "ext:geoip_antifilter.dat:antifilter"
        ],
        "outboundTag": "proxy",
        "type": "field"
      },
	  
      // Настройка прямых подключений
      {
        "inboundTag": ["socks-in"],
        "outboundTag": "direct",
        "type": "field"
      }
    ]
  }
}

 

Edited by Skrill0
  • Thanks 1
Link to comment
Share on other sites

9 часов назад, bigpu сказал:

@Skrill0 доброго времени. Все конфиги Xray проверил, все в порядке, тем не менее, так Xray и не стартует после перезагрузки роутера. Могли бы посмотреть мои конфиги?

Доброго Вам вечера!

Видела, что у Вас все получилось с конфигурацией автозапуска от @jameszero. Очень рада!
Если еще нужна помощь с конфигурациями — можете написать в личные сообщения)

Link to comment
Share on other sites

Всем доброго утра!

Вышла версия 0.8.2

Журнал

Скрытый текст
  1. Оптимизирован автозапуск Xray для маломощных устройств / Спасибо jameszero
    * Будет выполнено 3 попытки запуска.
    В случае неудачи будет сообщение об ошибке в журнале роутера / терминале.
  2. Исправления интерфейса
  3. Добавлены дополнительные проверки запуска при команде
    xkeen -start

    * Как следствие запуск Xray происходит немного дольше.

  4. Доработано журналирование
    * Теперь в журнале роутера можно отследить большинство операций.
    К примеру, автозапуск.
    image.thumb.png.c557406bd7c35f774b89c37f9133de64.png
  5. Улучшена логика резервного копирования

Пожалуйста, тестируйте и отпишитесь о результатах.

Обновиться можно с помощью команды

xkeen -uk

 

Edited by Skrill0
  • Thanks 3
Link to comment
Share on other sites

Доброе утро, Skrill0!

Новую версию ещё не проверял, домой доберусь только вечером. Думаю, всё сработает, только вариант со sleep 10 это я на скорую руку для теста сделал, можно организовать паузу с проверкой на запуск процесса, как в оригинальном rc.func из entware

    $PREARGS $PROC $ARGS > /dev/null 2>&1 &
    #echo $PREARGS $PROC $ARGS 
    COUNTER=0
    LIMIT=10
    while [ -z "`pidof $PROC`" -a "$COUNTER" -le "$LIMIT" ]; do
        sleep 1;
        COUNTER=`expr $COUNTER + 1`
    done

И ещё по поводу оптимизации S24xray, в нём вы используете переменную XRAY_LOCATION_ASSET, а если ещё добавить export XRAY_LOCATION_CONFDIR=/opt/etc/xray/configs , то для запуска xray достаточно будет указать только параметр run без -confdir, но этот так, мелочи) "на скорость пули не влияет" (с)

  • Upvote 1
Link to comment
Share on other sites

5 часов назад, jameszero сказал:

Доброе утро, Skrill0!

Новую версию ещё не проверял, домой доберусь только вечером. Думаю, всё сработает, только вариант со sleep 10 это я на скорую руку для теста сделал, можно организовать паузу с проверкой на запуск процесса, как в оригинальном rc.func из entware

    $PREARGS $PROC $ARGS > /dev/null 2>&1 &
    #echo $PREARGS $PROC $ARGS 
    COUNTER=0
    LIMIT=10
    while [ -z "`pidof $PROC`" -a "$COUNTER" -le "$LIMIT" ]; do
        sleep 1;
        COUNTER=`expr $COUNTER + 1`
    done

И ещё по поводу оптимизации S24xray, в нём вы используете переменную XRAY_LOCATION_ASSET, а если ещё добавить export XRAY_LOCATION_CONFDIR=/opt/etc/xray/configs , то для запуска xray достаточно будет указать только параметр run без -confdir, но этот так, мелочи) "на скорость пули не влияет" (с)

Доброго Вам утра!

Я как раз реализовала Ваше исправление, но для Xray не работает стандартный метод из rc, так как он опирается на pid-файл, с которым у клиента Xray проблемы.
Изначальная функция автозапуска опиралась на него по аналогии, при этом создавала и записывала его сама.
Отсюда проблема, что при перезагрузке роутера PID Xray не всегда чистился и возникала ошибка, так как статус проверяет PID, видит, что он существует и думает, что процесс работает, когда он не работал.
* Возможно, где-то я чего-то не доглядела с PID, но новая версия init должна работать без проблем)

Поэтому был написан альтернативный вариант с live-проверкой через ps процесса xray.
А также по Вашей рекомендации добавлен sleep 10, но также для перестраховки теперь имеется несколько попыток запуска (3). 

Надеюсь, Xray теперь гарантированно запустится автоматически не зависимо от мощности устройства)

Edited by Skrill0
  • Thanks 2
Link to comment
Share on other sites

Господа, спасибо всем за тему, особенно топикстартеру за разработку и ленивую конфигу.

Настроил по ней встроенный прокси и создал отдельный профиль в который включил тестовое устройство, трафик пошёл но вот routing видимо не отрабатывает, т.к. сайты 2ip.ru видит айпиху впски в германии, а ya.ru ругается на подозрительный трафик. То есть ru домены не идут напрямую, а всё идёт через vps в германии.

А еще на тестовой машине не работают пинги на выход, например 8.8.8.8 или ping ya.ru, он резолвит имя, но такое ощущение что маршрутизирует только http, https протоколы в этом профиле.

Трейсерт отваливается на шлюзе (кинетик).

ЧЯДНТ?

 

 

xkeen2.png

xkeen1.png

  • Upvote 1
Link to comment
Share on other sites

3 минуты назад, Dr.ZuLuS сказал:

Настроил по ней встроенный прокси и создал отдельный профиль в который включил тестовое устройство, трафик пошёл но вот routing видимо не отрабатывает, т.к. сайты 2ip.ru видит айпиху впски в германии, а ya.ru ругается на подозрительный трафик. То есть ru домены не идут напрямую, а всё идёт через vps в германии.

Доброго Вам утра!

Для решения Вашей проблемы попробуйте удалить из 10_routing.json

,

// Правило «по умолчанию»
{
  "inboundTag": ["socks-in"],
  "outboundTag": "proxy", // Отправляем все не указанные в списках выше домены в «proxy»
  "type": "field"
}

Обращаю внимание, что запятая в начале — не опечатка. Ее тоже нужно удалить.

  • Thanks 1
  • Upvote 1
Link to comment
Share on other sites

23 минуты назад, Skrill0 сказал:

Доброго Вам утра!

Для решения Вашей проблемы попробуйте удалить из 10_routing.json

,

// Правило «по умолчанию»
{
  "inboundTag": ["socks-in"],
  "outboundTag": "proxy", // Отправляем все не указанные в списках выше домены в «proxy»
  "type": "field"
}

Обращаю внимание, что запятая в начале — не опечатка. Ее тоже нужно удалить.

В привёденном вами ленивом конфиге его и нет, так у меня сейчас выглядит 10_routing.json:

Скрытый текст

// Настройка маршрутизации

{
  "routing": {
    "domainStrategy": "IPIfNonMatch",
    "rules": [
      // Настройка черного списка
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "ext:geosite_v2fly.dat:category-ads-all",
          "keyword:google-analytics",  // Могут быть проблемы с сервисами Google. Нужны тесты
          "keyword:analytics.yandex"  // Могут быть проблемы с сервисами Yandex. Нужны тесты
        ],
        "outboundTag": "block",
        "type": "field"
      },
      
      // Блокируем соединение по уязвимым UDP портам
      {
        "inboundTag": ["socks-in"],
        "network": "udp",
        "port": "135, 137, 138, 139",
        "outboundTag": "block",
        "type": "field"
      },
      
      // Настройка прямых подключений
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "regexp:\\.ru$",
          "ext:geosite_v2fly.dat:category-gov-ru",
          "ext:geosite_v2fly.dat:yandex",
          "ext:geosite_v2fly.dat:xbox",
          "ext:geosite_v2fly.dat:playstation",
          "ext:geosite_v2fly.dat:steam",
          "ext:geosite_v2fly.dat:rockstar",
          "ext:geosite_v2fly.dat:epicgames",
          "ext:geosite_v2fly.dat:gog",
          "ext:geosite_v2fly.dat:vk"
        ],
        "ip": [
          "ext:geoip_v2fly.dat:ru",
          "ext:geoip_v2fly.dat:private"
        ],
        "outboundTag": "direct",
        "type": "field"
      },
      
      // Настройка подключений через VPS
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "ext:geosite_antifilter.dat:antifilter-community",
          "ext:geosite_v2fly.dat:openai",
          "ext:geosite_v2fly.dat:paypal",
          "ext:geosite_v2fly.dat:ebay",
          "ext:geosite_v2fly.dat:facebook",
          "ext:geosite_v2fly.dat:instagram"
        ],              
        "ip": [
          "ext:geoip_antifilter.dat:antifilter-community",
          "ext:geoip_antifilter.dat:antifilter",
          "ext:geoip_v2fly.dat:facebook",
          "ext:geoip_v2fly.dat:twitter"
        ],
        "outboundTag": "proxy",
        "type": "field"
      }
    ]
  }
}

 

Edited by Dr.ZuLuS
Link to comment
Share on other sites

37 минут назад, Dr.ZuLuS сказал:

В привёденном вами ленивом конфиге его и нет, так у меня сейчас выглядит 10_routing.json:

  Показать содержимое

// Настройка маршрутизации

{
  "routing": {
    "domainStrategy": "IPIfNonMatch",
    "rules": [
      // Настройка черного списка
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "ext:geosite_v2fly.dat:category-ads-all",
          "keyword:google-analytics",  // Могут быть проблемы с сервисами Google. Нужны тесты
          "keyword:analytics.yandex"  // Могут быть проблемы с сервисами Yandex. Нужны тесты
        ],
        "outboundTag": "block",
        "type": "field"
      },
      
      // Блокируем соединение по уязвимым UDP портам
      {
        "inboundTag": ["socks-in"],
        "network": "udp",
        "port": "135, 137, 138, 139",
        "outboundTag": "block",
        "type": "field"
      },
      
      // Настройка прямых подключений
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "regexp:\\.ru$",
          "ext:geosite_v2fly.dat:category-gov-ru",
          "ext:geosite_v2fly.dat:yandex",
          "ext:geosite_v2fly.dat:xbox",
          "ext:geosite_v2fly.dat:playstation",
          "ext:geosite_v2fly.dat:steam",
          "ext:geosite_v2fly.dat:rockstar",
          "ext:geosite_v2fly.dat:epicgames",
          "ext:geosite_v2fly.dat:gog",
          "ext:geosite_v2fly.dat:vk"
        ],
        "ip": [
          "ext:geoip_v2fly.dat:ru",
          "ext:geoip_v2fly.dat:private"
        ],
        "outboundTag": "direct",
        "type": "field"
      },
      
      // Настройка подключений через VPS
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "ext:geosite_antifilter.dat:antifilter-community",
          "ext:geosite_v2fly.dat:openai",
          "ext:geosite_v2fly.dat:paypal",
          "ext:geosite_v2fly.dat:ebay",
          "ext:geosite_v2fly.dat:facebook",
          "ext:geosite_v2fly.dat:instagram"
        ],              
        "ip": [
          "ext:geoip_antifilter.dat:antifilter-community",
          "ext:geoip_antifilter.dat:antifilter",
          "ext:geoip_v2fly.dat:facebook",
          "ext:geoip_v2fly.dat:twitter"
        ],
        "outboundTag": "proxy",
        "type": "field"
      }
    ]
  }
}

 

Да, в начале подумала, что у Вас могла быть первая версия конфигурации.
Ошибка закрылась где-то в routing, еще раз все детально проверю и оповещу Вас, как устраню проблему!
Спасибо за информацию.

Link to comment
Share on other sites

14 минуты назад, Skrill0 сказал:

Да, в начале подумала, что у Вас могла быть первая версия конфигурации.
Ошибка закрылась где-то в routing, еще раз все детально проверю и оповещу Вас, как устраню проблему!
Спасибо за информацию.

И еще момент такой, есть подозрение, что связано с прошивкой самого кинетика, у меня трафик на тестовое устройство не бегает если в профиль помимо подключения прокси не добавить ниже основное подключение провайдера.

xkeen3.png

Link to comment
Share on other sites

1 час назад, Dr.ZuLuS сказал:

ru домены не идут напрямую, а всё идёт через vps

Попробуйте в роутинге разделить правила для доменов и для ip. Примерно так:

Скрытый текст

// Настройка маршрутизации

{
  "routing": {
    "domainStrategy": "IPIfNonMatch",
    "rules": [
      // Настройка черного списка
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "ext:geosite_v2fly.dat:category-ads-all",
          "keyword:google-analytics",  // Могут быть проблемы с сервисами Google. Нужны тесты
          "keyword:analytics.yandex"  // Могут быть проблемы с сервисами Yandex. Нужны тесты
        ],
        "outboundTag": "block",
        "type": "field"
      },
      
      // Блокируем соединение по уязвимым UDP портам
      {
        "inboundTag": ["socks-in"],
        "network": "udp",
        "port": "135, 137, 138, 139",
        "outboundTag": "block",
        "type": "field"
      },
      
      // Настройка прямых подключений
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "regexp:\\.ru$",
          "ext:geosite_v2fly.dat:category-gov-ru",
          "ext:geosite_v2fly.dat:yandex",
          "ext:geosite_v2fly.dat:xbox",
          "ext:geosite_v2fly.dat:playstation",
          "ext:geosite_v2fly.dat:steam",
          "ext:geosite_v2fly.dat:rockstar",
          "ext:geosite_v2fly.dat:epicgames",
          "ext:geosite_v2fly.dat:gog",
          "ext:geosite_v2fly.dat:vk"
        ],
        "outboundTag": "direct",
        "type": "field"
      },
      {
        "inboundTag": ["socks-in"],
        "ip": [
          "ext:geoip_v2fly.dat:ru",
          "ext:geoip_v2fly.dat:private"
        ],
        "outboundTag": "direct",
        "type": "field"
      },
      
      // Настройка подключений через VPS
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "ext:geosite_antifilter.dat:antifilter-community",
          "ext:geosite_v2fly.dat:openai",
          "ext:geosite_v2fly.dat:paypal",
          "ext:geosite_v2fly.dat:ebay",
          "ext:geosite_v2fly.dat:facebook",
          "ext:geosite_v2fly.dat:instagram"
        ],
        "outboundTag": "proxy",
        "type": "field"
      },
      {
        "inboundTag": ["socks-in"],
        "ip": [
          "ext:geoip_antifilter.dat:antifilter-community",
          "ext:geoip_antifilter.dat:antifilter",
          "ext:geoip_v2fly.dat:facebook",
          "ext:geoip_v2fly.dat:twitter"
        ],
        "outboundTag": "proxy",
        "type": "field"
      }
    ]
  }
}

 

  • Thanks 2
Link to comment
Share on other sites

2 минуты назад, jameszero сказал:

Попробуйте в роутинге разделить правила для доменов и для ip. Примерно так:

  Скрыть содержимое

// Настройка маршрутизации

{
  "routing": {
    "domainStrategy": "IPIfNonMatch",
    "rules": [
      // Настройка черного списка
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "ext:geosite_v2fly.dat:category-ads-all",
          "keyword:google-analytics",  // Могут быть проблемы с сервисами Google. Нужны тесты
          "keyword:analytics.yandex"  // Могут быть проблемы с сервисами Yandex. Нужны тесты
        ],
        "outboundTag": "block",
        "type": "field"
      },
      
      // Блокируем соединение по уязвимым UDP портам
      {
        "inboundTag": ["socks-in"],
        "network": "udp",
        "port": "135, 137, 138, 139",
        "outboundTag": "block",
        "type": "field"
      },
      
      // Настройка прямых подключений
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "regexp:\\.ru$",
          "ext:geosite_v2fly.dat:category-gov-ru",
          "ext:geosite_v2fly.dat:yandex",
          "ext:geosite_v2fly.dat:xbox",
          "ext:geosite_v2fly.dat:playstation",
          "ext:geosite_v2fly.dat:steam",
          "ext:geosite_v2fly.dat:rockstar",
          "ext:geosite_v2fly.dat:epicgames",
          "ext:geosite_v2fly.dat:gog",
          "ext:geosite_v2fly.dat:vk"
        ],
        "outboundTag": "direct",
        "type": "field"
      },
      {
        "inboundTag": ["socks-in"],
        "ip": [
          "ext:geoip_v2fly.dat:ru",
          "ext:geoip_v2fly.dat:private"
        ],
        "outboundTag": "direct",
        "type": "field"
      },
      
      // Настройка подключений через VPS
      {
        "inboundTag": ["socks-in"],
        "domain": [
          "ext:geosite_antifilter.dat:antifilter-community",
          "ext:geosite_v2fly.dat:openai",
          "ext:geosite_v2fly.dat:paypal",
          "ext:geosite_v2fly.dat:ebay",
          "ext:geosite_v2fly.dat:facebook",
          "ext:geosite_v2fly.dat:instagram"
        ],
        "outboundTag": "proxy",
        "type": "field"
      },
      {
        "inboundTag": ["socks-in"],
        "ip": [
          "ext:geoip_antifilter.dat:antifilter-community",
          "ext:geoip_antifilter.dat:antifilter",
          "ext:geoip_v2fly.dat:facebook",
          "ext:geoip_v2fly.dat:twitter"
        ],
        "outboundTag": "proxy",
        "type": "field"
      }
    ]
  }
}

 

Спасибо, теперь ру сегмент идёт напрямую, но пинги всё равно не бегают.

  • Upvote 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...