Skrill0 Posted January 28 Author Share Posted January 28 1 час назад, Alexey77 сказал: Раньше была ленивая конфигурация там это было сразу записано и вопросов от новичков было меньше. Может вернуть ленивою конфигурацию ? Ленивая конфигурация сохранилась, только теперь разбита по секциям) Осталось Routing доделать, чтобы всем понятно было… Но сперва бы с ошибками текущей версии разобраться до конца) 3 Quote Link to comment Share on other sites More sharing options...
0xConstantine Posted January 28 Share Posted January 28 Огромное всем спасибо за ответ. Мой файл для конфигурации соединения выглядит вот так: "outbounds": [ { "tag": "ss", "protocol": "shadowsocks", "settings": { "servers": [ { "address": "***.***.***.***", "method": "chacha20-ietf-poly1305", "password": "**********", "port": 443 , "uot": true } ] }, "streamSettings": { "network": "tcp" } И я подумал, что в настройках Routing я везде должен указывать: "outboundTag": "ss" так как у меня соединений тегом "direct", "block" и так далее. Я так понимаю, что у меня не хватает настроек в файле 04_outbounds.json и из-за этого такие проблемы. Quote Link to comment Share on other sites More sharing options...
doc_bravn Posted January 28 Share Posted January 28 21 час назад, Alexey77 сказал: xkeen -stop потом удалите их xkeen -start Сделал. Обход все равно не работает. Команда iptables -t mangle -nL xkeen -v выдает ответ iptables: No chain/target/match by that name. Quote Link to comment Share on other sites More sharing options...
Skrill0 Posted January 28 Author Share Posted January 28 (edited) Всем доброго вечера! Вышло обновление 1.0.7 Журнал Скрытый текст Исправлены 1. Автоматическое определение портов для исключений 2. 443 и 80 порты больше не исключается автоматически 3. Генерация правил-исключения LAN 4. DNS запросы в режиме Mixed_1 5. Некорректное завершение диагностики Добавлены 1. Обработка отсутствующих модулей и соответствующие инструкции 2. Защита от создания правил в случае, если ядро не поднялось 3. Защита от неправильного использования: DNS, TProxy, исключений и донорства портов 4. Защита от некорректной задержки автозапуска Изменены 1. Максимальное количество портов-исключений: 15 2. Максимальное количество портов-доноров: 15 ** Приоритет отдается указаным вручную портам Обновиться можно командой xkeen -uk Откатиться на предыдущую версию можно командой xkeen -kbr В случае возникновения проблем, пожалуйста, присылайте файл диагностики xkeen -diag Внимание В файле содержится Ваш IP адрес. Можно присылать в личные сообщения. Пожалуйста, тестируйте, и отпишитесь о результатах) Edited January 28 by Skrill0 5 2 Quote Link to comment Share on other sites More sharing options...
dok Posted January 28 Share Posted January 28 (edited) 9 часов назад, dok сказал: Доброе утро! dns.json - такого файла нет. изначально давно был поставлен ADH на роутер - все ок, вопросов нет, реклама режется, DNS отдаются какие прописал. Затем попробовал XKeen redirect - все круто (спасибо, кстати), все работает, но в статистике вебморды ADH явно видно, что устройства, которые в политике XKeen не учитываются. То есть я иду на сайт проверки блокировки рекламы будучи в XKeen политике - в ADH не меняется ничего в статистике. убираю устройство из политики и опять иду на сайт - в ADH явно видны изменения. так же и с dnsleaktest.com. Подскажите, пожалуйста, куда копать? надеялся, что проблема решится в новой версии, но нет) XKeen работает хорошо в плане открытия нужных ресурсов, но вопрос остался прежним - как завернуть dns на AGH? как в явном виде сказать - все днс запросы отправлять на роутер, там уже разберутся? Edited January 28 by dok Quote Link to comment Share on other sites More sharing options...
Keokuk Posted January 28 Share Posted January 28 26 минут назад, Skrill0 сказал: Пожалуйста, тестируйте, и отпишитесь о результатах) Обновился, все запустилось с моим скромным конфигом. Routing заработал) Спасибо! 1 Quote Link to comment Share on other sites More sharing options...
Skrill0 Posted January 28 Author Share Posted January 28 (edited) 52 минуты назад, dok сказал: надеялся, что проблема решится в новой версии, но нет) XKeen работает хорошо в плане открытия нужных ресурсов, но вопрос остался прежним - как завернуть dns на AGH? как в явном виде сказать - все днс запросы отправлять на роутер, там уже разберутся? Если в любом случае DNS по какой-то причине идут на сервер, можете сделать вот так: Добавить файл в директорию с конфигурациями 06_dns.json Добавить в outbounds секцию Скрытый текст { "tag": "dns", "protocol": "dns" } Добавить в Routing до основной маршрутизации (до VPS и прямого подключения. После блокировок) секцию Скрытый текст { "inboundTag": ["redirect", "tproxy"], "outboundTag": "dns", "port": 53, "type": "field" } Edited January 28 by Skrill0 Quote Link to comment Share on other sites More sharing options...
Omich55 Posted January 28 Share Posted January 28 1 час назад, Skrill0 сказал: Пожалуйста, тестируйте, и отпишитесь о результатах) Добрый вечер! Это моя первая установка XKeen. Пока не заработало( Вот на что-то ругается при старте: Failed to start: main: failed to load config files: [/opt/etc/xray/configs/01_log.json /opt/etc/ray/configs/02_transport.json /opt/etc/ray/configs/03_inbounds.json /opt/etc/xray/configs/04_outbound s.json /opt/etc/xray/configs/05_routing json] > infra/conf: Failed to build REALITY config. > infra/conf: invalid "shortId": 6fa1, 187e910d, d9b8, 3c67 Shortid эти я верно вроде вставил 1 Quote Link to comment Share on other sites More sharing options...
Skrill0 Posted January 28 Author Share Posted January 28 7 минут назад, Omich55 сказал: Добрый вечер! Это моя первая установка XKeen. Пока не заработало( Вот на что-то ругается при старте: Failed to start: main: failed to load config files: [/opt/etc/xray/configs/01_log.json /opt/etc/ray/configs/02_transport.json /opt/etc/ray/configs/03_inbounds.json /opt/etc/xray/configs/04_outbound s.json /opt/etc/xray/configs/05_routing json] > infra/conf: Failed to build REALITY config. > infra/conf: invalid "shortId": 6fa1, 187e910d, d9b8, 3c67 Shortid эти я верно вроде вставил Доброго Вам вечера! Нужно одно из значений до запятой. Любое) 2 Quote Link to comment Share on other sites More sharing options...
dok Posted January 28 Share Posted January 28 19 минут назад, Skrill0 сказал: Если в любом случае DNS по какой-то причине идут на сервер, можете сделать вот так: Добави ть файл в директорию с конфигурациями 06_dns.json Добавить в outbounds секцию Показать содержимое { "tag": "dns", "protocol": "dns" } Добавить в Routing до основной маршрутизации (до VPS) секцию Показать содержимое { "inboundTag": ["redirect", "tproxy"], "outboundTag": "dns", "port": 53, "type": "field" } Спасибо за отклик, но не помогло( файл routing сейчас выглядит вот так: Скрытый текст // Настройка маршрутизации { "routing": { "rules": [ // Блокировка | Реклама и аналитика { "inboundTag": ["redirect", "tproxy"], "outboundTag": "dns", "port": 53, "type": "field" }, { "inboundTag": ["redirect", "tproxy"], "outboundTag": "block", "type": "field", "domain": [ "ext:geosite_v2fly.dat:category-ads-all", "google-analytics", "analytics.yandex", "appcenter.ms", "app-measurement.com", "firebase.io", "crashlytics.com" ] }, // Блокировка | Уязвимые UDP порты { "inboundTag": ["redirect", "tproxy"], "outboundTag": "block", "type": "field", "network": "udp", "port": "135, 137, 138, 139" }, // Прямые подключение | Доменные имена { "inboundTag": ["redirect", "tproxy"], "domain": [ "speedtest.net", "nnmclub.to", "rutracker.org", "flibusta.is", "proton.me", "ext:geosite_v2fly.dat:facebook", "ext:geosite_v2fly.dat:instagram" ], "outboundTag": "vless-reality", "type": "field" }, // Прямые подключение | IP адреса { "inboundTag": ["redirect", "tproxy"], "ip": [ "ext:geoip_v2fly.dat:facebook" ], "outboundTag": "vless-reality", "type": "field" }, // VPS подключение | Основное { "inboundTag": ["redirect", "tproxy"], "outboundTag": "direct", "type": "field" } ] } } все запускается без ошибок, маршрутизация до сайтов работает как надо, но с днс все равно беда( сейчас добавил dnsleaktest чтоб ходил туда через VPS - и увидел немного другие ДНС. Не те, что прописаны в ADH, но и не те, что показывало раньше. у меня в кинетике в были указаны в интернет-фильтрах раньше вручную сервера. но после dns-override и установки ADH это уже неважно по идее. тем более, что стоит убрать устройство из политики XKeen - все идет ожидаемо через ADH... Quote Link to comment Share on other sites More sharing options...
Skrill0 Posted January 28 Author Share Posted January 28 (edited) 1 час назад, dok сказал: Спасибо за отклик, но не помогло( файл routing сейчас выглядит вот так: Показать содержимое // Настройка маршрутизации { "routing": { "rules": [ // Блокировка | Реклама и аналитика { "inboundTag": ["redirect", "tproxy"], "outboundTag": "dns", "port": 53, "type": "field" }, { "inboundTag": ["redirect", "tproxy"], "outboundTag": "block", "type": "field", "domain": [ "ext:geosite_v2fly.dat:category-ads-all", "google-analytics", "analytics.yandex", "appcenter.ms", "app-measurement.com", "firebase.io", "crashlytics.com" ] }, // Блокировка | Уязвимые UDP порты { "inboundTag": ["redirect", "tproxy"], "outboundTag": "block", "type": "field", "network": "udp", "port": "135, 137, 138, 139" }, // Прямые подключение | Доменные имена { "inboundTag": ["redirect", "tproxy"], "domain": [ "speedtest.net", "nnmclub.to", "rutracker.org", "flibusta.is", "proton.me", "ext:geosite_v2fly.dat:facebook", "ext:geosite_v2fly.dat:instagram" ], "outboundTag": "vless-reality", "type": "field" }, // Прямые подключение | IP адреса { "inboundTag": ["redirect", "tproxy"], "ip": [ "ext:geoip_v2fly.dat:facebook" ], "outboundTag": "vless-reality", "type": "field" }, // VPS подключение | Основное { "inboundTag": ["redirect", "tproxy"], "outboundTag": "direct", "type": "field" } ] } } все запускается без ошибок, маршрутизация до сайтов работает как надо, но с днс все равно беда( сейчас добавил dnsleaktest чтоб ходил туда через VPS - и увидел немного другие ДНС. Не те, что прописаны в ADH, но и не те, что показывало раньше. у меня в кинетике в были указаны в интернет-фильтрах раньше вручную сервера. но после dns-override и установки ADH это уже неважно по идее. тем более, что стоит убрать устройство из политики XKeen - все идет ожидаемо через ADH... Попробуйте изменить уровень логирования на debug, а dnsLog установить на true. Затем перезапустить XKeen и попользоваться интернетом. Также выполните xkeen -diag И пришлите мне, пожалуйста, в личные сообщения результаты. Попробуем разобраться) UPD ADH не умеет работать с политиками. Если нужно использовать XKeen совместно с ADH — нужно использовать общий режим по выбранным портам. К примеру 443,80 Edited January 28 by Skrill0 1 Quote Link to comment Share on other sites More sharing options...
Gmarapet Posted January 28 Share Posted January 28 On 1/28/2024 at 5:16 PM, Skrill0 said: Вышло обновление 1.0.7 Несколько часов — полёт отличный. При обновлении ни одной ошибки, все кастомные настройки подхватил и корректно работает. Так же заметил, что даже при использовании способа redirect, хуер перестал показывать реальную страну даже на мобильных устройствах и показывает IP и GEO сервера VPS. Раньше это работало только с tproxy. 1 Quote Link to comment Share on other sites More sharing options...
Omich55 Posted January 28 Share Posted January 28 41 минуту назад, Skrill0 сказал: Доброго Вам вечера! Нужно одно из значений до запятой. Любое) Спасибо! Теперь XKeen запускается. Но! что-то кладет интернет, просто перестает лампочка интернет гореть на роутера. Методом тыка выяснил что это прокси-подключение Xray на кинетике (но это не точно). Пока имею следующее: XKeen запускается без ошибок, но пользоваться им не получается( нужна помощь в настройке прокси на роутера, вроде все по инструкции делал. Сначала Xray - прокси подключение, потом политику Keen. Quote Link to comment Share on other sites More sharing options...
Gmarapet Posted January 28 Share Posted January 28 17 минут назад, Omich55 сказал: Сначала Xray - прокси подключение, потом политику Keen. Какой режим настраивали? Прокси нужен только в режиме other. Если настраиваете redirect или TProxy, то прокси кинетика можно смело удалять, достаточно только политики. А, если настраиваете, чтобы Xkeen работал только по определённым портами, то не нужна даже политика. 1 Quote Link to comment Share on other sites More sharing options...
k0steg Posted January 29 Share Posted January 29 (edited) @Skrill0, все работает. Но это нормально, что через минутку после старта xkeen -tpx показывает десятки отслеживаемых UDP шлюзов? Еще через минутку они исчезают и остаются только заданный в inbounds в UDP и TCP. А потом опять десятки. И так по кругу. В политике в этот момент только один айфон. XKeen 1.0.7. TProxy. Роутинг маленький, антизапреты и геоайпи не используются - только несколько избранных геосайтов. Загрузка проца небольшая. Edited January 29 by k0steg 1 Quote Link to comment Share on other sites More sharing options...
Alexey77 Posted January 29 Share Posted January 29 1 час назад, k0steg сказал: что через минутку после старта xkeen -tpx показывает десятки отслеживаемых UDP шлюзов? Доброе утро. У меня так же работает. 1 Quote Link to comment Share on other sites More sharing options...
Skrill0 Posted January 29 Author Share Posted January 29 2 часа назад, k0steg сказал: @Skrill0, все работает. Но это нормально, что через минутку после старта xkeen -tpx показывает десятки отслеживаемых UDP шлюзов? Еще через минутку они исчезают и остаются только заданный в inbounds в UDP и TCP. А потом опять десятки. И так по кругу. В политике в этот момент только один айфон. XKeen 1.0.7. TProxy. Роутинг маленький, антизапреты и геоайпи не используются - только несколько избранных геосайтов. Загрузка проца небольшая. diagnostic.txt 19.95 \u041a\u0431 · 3 downloads 04_outbounds.json 993 \u0431 · 3 downloads xkeen-tpx.txt 1.96 \u041a\u0431 · 3 downloads error.log 39.95 \u041a\u0431 · 2 downloads access.log 4.06 \u041a\u0431 · 2 downloads 02_transport.json 661 \u0431 · 1 download 05_routing.json 2.39 \u041a\u0431 · 3 downloads 03_inbounds.json 470 \u0431 · 2 downloads Доброго Вам утра) В режимах TProxy и Mixed так и должно быть. Все корректно работает. Эти соединения временные и происходят из-за пересылки трафика внутри сети. После пересылки — соединение закрывается и порт тоже) Если Вы посмотрите по журналу error, то именно с эти порты будут фигурировать там в качестве local endpoint) 2 Quote Link to comment Share on other sites More sharing options...
Popular Post Skrill0 Posted January 29 Author Popular Post Share Posted January 29 (edited) Всем доброго утра) У проекта появился телеграм чат. Приглашаю всех заинтересованных присоединяться и общаться, задавать вопросы на темы XKeen, Keenetic и проксирования) По возможности буду отвечать там тоже) Вести обсуждение на форуме не всегда удобно и за большим количеством сообщений теряется полезная информация. Edited January 29 by Skrill0 8 4 Quote Link to comment Share on other sites More sharing options...
mr.robot Posted January 29 Share Posted January 29 @Skrill0 спасибо за офигенное решение, работает с 3x-ui идеально) Подскажите, пару моментов, которые не смог найти в топике: 1. Как быть с ошибками днс в логах ("DoT "Policy0" proxy #0": unexpectedly stopped)? Пробовал и Cloudflare 1.1.1.1 все равно сыпятся Spoiler [I] Jan 30 02:27:18 ndm: Dns::Secure::DotConfigurator: "System": using "77.88.8.1:853:77.88.8.1" as upstream. [I] Jan 30 02:27:18 ndm: Dns::Secure::DotConfigurator: "System": using "8.8.8.8:853:8.8.8.8" as upstream. [I] Jan 30 02:27:18 ndm: Dns::Secure::DotConfigurator: "Policy0": using "77.88.8.1:853:77.88.8.1" as upstream. [I] Jan 30 02:27:18 ndm: Dns::Secure::DotConfigurator: "Policy0": using "8.8.8.8:853:8.8.8.8" as upstream. [I] Jan 30 02:27:20 stubby: starting Stubby 0.4.0 [I] Jan 30 02:27:20 stubby: Core::Syslog: last message repeated 3 times. [E] Jan 30 02:29:56 stubby: "77.88.8.1": too many failed requests, try to reload process [E] Jan 30 02:29:56 ndm: Service: "DoT "Policy0" proxy #0": unexpectedly stopped. [I] Jan 30 02:29:59 stubby: starting Stubby 0.4.0 [E] Jan 30 02:32:55 stubby: "77.88.8.1": too many failed requests, try to reload process [E] Jan 30 02:32:55 ndm: Service: "DoT "Policy0" proxy #0": unexpectedly stopped. [I] Jan 30 02:32:58 stubby: starting Stubby 0.4.0 2. В чем разница между GeoSite и GeoIP? Для Redirect хватит только GeoSite? Quote Link to comment Share on other sites More sharing options...
Skrill0 Posted January 30 Author Share Posted January 30 (edited) 11 час назад, mr.robot сказал: @Skrill0 спасибо за офигенное решение, работает с 3x-ui идеально) Подскажите, пару моментов, которые не смог найти в топике: 1. Как быть с ошибками днс в логах ("DoT "Policy0" proxy #0": unexpectedly stopped)? Пробовал и Cloudflare 1.1.1.1 все равно сыпятся Показать содержимое [I] Jan 30 02:27:18 ndm: Dns::Secure::DotConfigurator: "System": using "77.88.8.1:853:77.88.8.1" as upstream. [I] Jan 30 02:27:18 ndm: Dns::Secure::DotConfigurator: "System": using "8.8.8.8:853:8.8.8.8" as upstream. [I] Jan 30 02:27:18 ndm: Dns::Secure::DotConfigurator: "Policy0": using "77.88.8.1:853:77.88.8.1" as upstream. [I] Jan 30 02:27:18 ndm: Dns::Secure::DotConfigurator: "Policy0": using "8.8.8.8:853:8.8.8.8" as upstream. [I] Jan 30 02:27:20 stubby: starting Stubby 0.4.0 [I] Jan 30 02:27:20 stubby: Core::Syslog: last message repeated 3 times. [E] Jan 30 02:29:56 stubby: "77.88.8.1": too many failed requests, try to reload process [E] Jan 30 02:29:56 ndm: Service: "DoT "Policy0" proxy #0": unexpectedly stopped. [I] Jan 30 02:29:59 stubby: starting Stubby 0.4.0 [E] Jan 30 02:32:55 stubby: "77.88.8.1": too many failed requests, try to reload process [E] Jan 30 02:32:55 ndm: Service: "DoT "Policy0" proxy #0": unexpectedly stopped. [I] Jan 30 02:32:58 stubby: starting Stubby 0.4.0 2. В чем разница между GeoSite и GeoIP? Для Redirect хватит только GeoSite? Доброго Вам утра) 1. В Redirect DNS используется прошивочный или, к примеру, ADH, если настроен. То есть в ядро направляются уже разрешенные адреса. Вряд ли ошибка связана с XKeen, возможно, где-то в настройках DNS. Следует поискать там) 2. GeoIP на текущем этапе актуальны только если Вам нужно блокировать подсети, к примеру, Ирана. В нашем общем случае можно обойтись только GeoSite. GeoSite и GeoIP — это базы с разными списками. GeoSite — база доменных имен. GeoIP — база IP адресов и подсетей. Есть разные сборки GeoSite. К примеру, от @jameszero: ZKeen. Содержит только список «domains» и включает в себя ресурсы РФ. Есть также от проекта V2Fly. Содержит много списков для разных ресурсов. К примеру, список «instagram» содержит все доменные имена instagram и его сервисов, обеспечивая полный охват этого ресурса, которого не достичь парой ключевых слов. Список instagram Скрытый текст achat-followers-instagram.com acheter-followers-instagram.com acheterdesfollowersinstagram.com acheterfollowersinstagram.com bookstagram.com carstagram.com cdninstagram.com chickstagram.com ig.me igcdn.com igsonar.com igtv.com imstagram.com imtagram.com instaadder.com instachecker.com instafallow.com instafollower.com instagainer.com instagda.com instagify.com instagmania.com instagor.com instagram-brand.com instagram-engineering.com instagram-help.com instagram-press.com instagram-press.net instagram.com instagramci.com instagramcn.com instagramdi.com instagramhashtags.net instagramhilecim.com instagramhilesi.org instagramium.com instagramizlenme.com instagramkusu.com instagramlogin.com instagramm.com instagramn.com instagrampartners.com instagramphoto.com instagramq.com instagramsepeti.com instagramtakipcisatinal.net instagramtakiphilesi.com instagramtips.com instagramtr.com instagran.com instagranm.com instagrem.com instagrm.com instagtram.com instagy.com instamgram.com instangram.com instanttelegram.com instaplayer.net instastyle.tv instgram.com intagram.com intagrm.com intgram.com kingstagram.com lnstagram-help.com theinstagramhack.com oninstagram.com online-instagram.com onlineinstagram.com web-instagram.net wwwinstagram.com Edited January 30 by Skrill0 5 2 Quote Link to comment Share on other sites More sharing options...
jameszero Posted January 30 Share Posted January 30 12 часа назад, mr.robot сказал: [E] Jan 30 02:32:55 stubby: "77.88.8.1": too many failed requests, try to reload process [E] Jan 30 02:32:55 ndm: Service: "DoT "Policy0" proxy #0": unexpectedly stopped. Провайдер может блокировать DoT запросы по 853 порту. Проверьте: telnet 77.88.8.1 853 Если откроется пустое окно консоли с мигающим курсором, то порт ресурса доступен. Если будет написано "Подключение к 77.88.8.1...", то порт заблокирован. Клиент Telnet можно установить в "Компонентах Windows". 2 1 Quote Link to comment Share on other sites More sharing options...
mr.robot Posted January 30 Share Posted January 30 @jameszero вот, что выдается с разных устройств: Spoiler #ноут m@macbook ~ % telnet 77.88.8.1 853 Trying 77.88.8.1... Connected to secondary.dns.yandex.ru. Escape character is '^]'. Connection closed by foreign host. #entware ~ # telnet 77.88.8.1 853 Connected to 77.88.8.1 Connection closed by foreign host Quote Link to comment Share on other sites More sharing options...
jameszero Posted January 30 Share Posted January 30 Тест подключения происходит нормально, значит причина отвала DoT в чём-то другом. Хотя провайдера я бы всё таки не исключал, он может включать блокировку после нескольких отправленных/принятых пакетов. 1 Quote Link to comment Share on other sites More sharing options...
mr.robot Posted January 30 Share Posted January 30 Спасибо. Правильно понял, что смысла менять DNS-провайдера нет? Quote Link to comment Share on other sites More sharing options...
jameszero Posted January 30 Share Posted January 30 У вас DoT-сервер отключается по какой-то причине, нет смысла сохранять нерабочий сервер в настройках роутера. Можете попробовать сменить его на DoH-сервер, он более незаметен провайдеру, так как использует 443 порт, тот же порт, что и для веб-серфинга. А общая рекомендация, касаемо DoT/DoH-серверов, используйте малоизвестные, в идеале не публичные, сервера, так можно минимизировать вероятность их блокировки по доменному имени. 2 Quote Link to comment Share on other sites More sharing options...
Popular Post NoAdO Posted January 31 Popular Post Share Posted January 31 (edited) Ну что, попробовал я это чудо чудное диво дивное. По установке вопросов не возникло, а вот с конфигами пришлось повозиться и помощи в чате попросить. Пока непросто, надеюсь в будущем мы увидим мастер настройки что сам будет формировать json-ы да вот хотя бы на базе примеров из шапки под несколько типовых конфигураций. Задача: в Интернет ходим как обычно, список выбранных доменов ходит через VPS где развёрнут 3X-UI с Reality. Голосовая связь должна работать (Discord и т.п.) так что Mixed режим. На роутере установлен AdGuard Home ( далее AGH), который также используется как DoT сервер для телефона не из дома так что DNS мы не трогаем (так-то могли бы и DNS туда завернуть). Помним, что в этом варианте даже если AGH использует DoT/DoH или прочие защищённые протоколы, ему всё равно надо у кого-то сперва спросить, на каком IP находится домен с DoT у которого он потом всё спрашивать будет. Это в AGH называется bootstrap DNS и провайдер этот запрос увидит, хоть ничего незаконного в использовании защищённых DNS и нет. Сразу оговорюсь: оказалось крайне полезно, что правила применяются на базе политик, задаваемых в роутере. Так что даже если мы "всё сломали", можно просто убрать политику и читать в интернете решение. Чтобы понимать логику работы, проще всего представить себе чёрный ящик со входом и выходами. Мы должны настроить что он входом будет пылесосить, какими выходами он плюёт трафик и правила, по которым он будет плеваться тем что спылесосил на входе в определённый выход. После установки по инструкции я залез в /opt/etc/xray/configs/ и (хоть и не сразу но) привёл их к вот такому виду. Это, скорее, пример реализации чем реальное руководство к действию. Конфиги сильно проще редактировать текстовым редактором на ПК, если хранилище роутера доступно из локальной сети. Тогда это путь вида \\Keenetic-9870\ext4\etc\xray\configs В inbounds (на момент написания комментария 03_inbounds.json) по сути менять относительно образца из Mixed конфига особо нечего. Разве что IP роутера, если вы назначили другие цифры. То есть редактировать надо там где есть комментарий с двумя слешами, между двойными кавычками: Скрытый текст { "inbounds": [ { "tag": "redirect", "listen": "192.168.0.1", // IP адрес роутера, через который заходите в Web-интерфейс "port": 61219, "protocol": "dokodemo-door", "settings": { "network": "tcp", "followRedirect": true }, "sniffing": { "enabled": true, "destOverride": [ "http", "tls" ] } }, { "tag": "tproxy", "listen": "127.0.0.1", "port": 61219, "protocol": "dokodemo-door", "settings": { "network": "udp", "followRedirect": true }, "sniffing": { "enabled": true, "destOverride": [ "http", "tls", "quic" ] }, "streamSettings": { "sockopt": { "tproxy": "tproxy" } } } ] } Редактируется всего 1 значение в 1 строчке. 192.168.0.1 при необходимости меняется на ваш вариант. Всё. Как читать json: В целом json это скобки, вложенные в скобки, вложенные в скобки. Поэтому используются отступы слева чтобы понимать глубину вложенности. Это значит, что если я хочу понять, что относится к блоку "sniffing": { то я читаю всё до закрытия фигурной скобки }. В примере это "enabled": true, "destOverride": [ "http", "tls" ] разнесённый по нескольким строчкам. Так уже и попонятней, что читать. Notepad++ умеет выделять закрывающую скобку при щелчке по открывающей, это тоже помогает с пониманием или если вы вдруг скобку удалили и не понимаете, где. Ну а всё что после // и до конца строки это комментарий. Посмотрите, насколько удобней читать. В outbounds () уже сильно больше изменений. Скрытый текст // Настройка исходящих соединений { "outbounds": [ // VPS соединение | Основное { "tag": "vless-reality", // Название соединения "protocol": "vless", "settings": { "vnext": [ { "address": "██.███.███.██", // IP адрес или доменное имя сервера VPS "port": 443, // Порт Reality. 443 обязателен "users": [ { "encryption": "none", "flow": "xtls-rprx-vision", "id": "████████-████-████-████-████████████" // ID, присвоенный пользователю на сервере } ] } ] }, "streamSettings": { "network": "tcp", "security": "reality", "realitySettings": { "publicKey": "█████████████████████████████████████", // Public Key, присвоенный пользователю на сервере "fingerprint": "chrome", // Finger Print, указанный на сервере "serverName": "█████████.██", // SNI, указанный на сервере "shortId": "████████", // Short ID, присвоенный пользователю на сервере "spiderX": "/" } } }, { "tag": "direct", "protocol": "freedom" }, { "tag": "block", "protocol": "blackhole", "settings": { "response": { "type": "http" } } } ] } Сейчас мы редактируем "выходы" с чёрного ящика. Блок с "tag": "vless-reality" это "выход" траффика, который отправится в VPS. Мы ему этот тег будем назначать и дальше опишем, куда трафик отправляется. address - публичный айпи VPS. Порт 443 не меняется потому что у нас Reality, наш сервер работает "зеркалом" какого-то домена, а стандартный порт https - 443. Flow - xtls-rprx-vision потому что так указано в настройках на стороне 3X-UI. Мы вообще оттуда всё копируем. ID - это идентификатор пользователя, он написан в окошке редактирования пользователя. publicKey можно достать из окошка редактирования свойств Подключения в 3X-UI. Там же указан fingerprint (Поле uTLS), servername (поле Dest) и Short ID. Последнего, кстати, в X-UI я не нашёл вообще, потому и 3X-UI. То есть надо понимать, что я вот тут подробно пишу но понятия не имею почему нужно писать например "settings": { "vnext": [ { а не как-то ещё. Для этого в шапке и лежат примеры, но разобраться что с чем стыкуется всё равно надо. В целом же мой outbounds сообщает, что вот то что с тегом "vless-reality" идёт в VPS, что с тегом "direct" то идёт в "freedom" т.е. напрямую, а что с "block" то идёт в "blackhole" т.е. отбрасывается и никуда не идёт и вообще не тратим на это внимание и ресурсы, утруждая себя ответами. На сейчас мы разобрались, что мы ловим трафик, назначаем ему теги, запихиваем в чёрный ящик. И что из чёрного ящика может приходить траффик с другими тегами и его надо запульнуть в VPS, напрямую или в никуда. Осталось разобраться с правилами чёрного ящика. Скрытый текст // Настройка маршрутизации { "routing": { "rules": [ // Правило 1 Настройка черного списка { "inboundTag": ["redirect", "tproxy"], "outboundTag": "block", "type": "field", "domain": [ "ext:geosite_v2fly.dat:category-ads-all", "google-analytics", "analytics.yandex", "appcenter.ms", "app-measurement.com", "firebase.io", "crashlytics.com" ] }, // Правило 2 Блокируем соединение по уязвимым UDP портам { "inboundTag": ["redirect", "tproxy"], "outboundTag": "block", "type": "field", "network": "udp", "port": "135, 137, 138, 139" }, // Правило 3 Настройка подключений с помощью доменных имен | Внутри РФ { "inboundTag": ["redirect", "tproxy"], "outboundTag": "vless-reality", "type": "field", "domain": [ //test "myip.com", // we are blocked "tmdb.org", "themoviedb.org", "radarr.video", "servarr.com", "tmdb-image-prod.b-cdn.net", "ext:geosite_v2fly.dat:facebook", "ext:geosite_v2fly.dat:instagram" ] }, // Правило 4 Настройка остальных соединений | Вне РФ { "inboundTag": ["redirect", "tproxy"], "outboundTag": "direct", "type": "field" } ] } } Опять же, разбираем код по кускам, комментариями на русском отмечены отдельные правила. К примеру, Правило 1 это мы ищем траффик с тегами ["redirect", "tproxy"] и назначаем ему тег "block" для доменов из списка, например analytics.yandex. То есть это улетает вникуда. Аналогично строится правило 3 для VPS - мы берём траффик с ["redirect", "tproxy"] и назначаем "vless-reality" для доменов из списка. Обратите внимание, в списке есть английские комментарии. Я их просто для себя написал чтобы структурировать список. И да, вы тоже так можете. Ну и правило 4 это опять мы смотрим трафик с метками "redirect", "tproxy" и помечаем его как "direct" (напрямую) без дополнительных условий, то есть весь остальной трафик что не попал в предыдущие правила. Момент с записями вида ext:geosite_v2fly.dat:facebook - как они составляются? Суть строки состоит в том что мы берём внешний (external) источник - аддон geosite_v2fly и оттуда спрашиваем список для facebook. Вот он: https://github.com/v2fly/domain-list-community/blob/master/data/facebook и там же рядом куча списков ещё. У facebook много адресов, можно аналогично поискать для себя другие крупные ресурсы. При редактировании списков не забудьте, что у каждой строки должна быть запятая в конце, кроме последней. При диагностике проблем пробуйте достучаться до сайтов из разных фильтров. Иногда это помогает в диагностике. К примеру, если работает умолчание но не работает VPS-путь, возможно что-то с правилом туда или с самим выходом. Ну или вы забыли применить политику к этому ПК 😃 Мне на старте вот этого понимания не очень хватало чтобы разобраться, что я и куда пишу. А ещё есть 01_log.json где можно выставить логгирование побольше и почитать логи. Только не забудьте обратно отключить потом. Ну, вот так как-то. Просили отзыв - вот отзыв =)) Edited January 31 by NoAdO изменён тестовый домен в примере на myip.com 3 10 Quote Link to comment Share on other sites More sharing options...
surfuser Posted January 31 Share Posted January 31 Отличный гайд, не хватет про маршрутизацию BitTorrent замолвить словечко, чтобы VPS не накалять ненужным трафиком. В routing конфиг можно докинуть в начало: // BitTorrent redirect { "inboundTag": ["redirect", "tproxy"], "protocol": ["bittorrent"], "outboundTag": "direct", "type": "field" }, 1 1 Quote Link to comment Share on other sites More sharing options...
Alexey77 Posted January 31 Share Posted January 31 (edited) В 31.01.2024 в 12:23, NoAdO сказал: //test "myip.ru", Добрый день. Домены .ru как и .рф лучше не пускать через VPS. Edited February 6 by Alexey77 3 Quote Link to comment Share on other sites More sharing options...
NoAdO Posted January 31 Share Posted January 31 39 минут назад, Alexey77 сказал: Добрый день. Домены .ru как и .рф лучше не пускать через VPS это деанонимизирует сервер и со временем его могут заблокировать. Спасибо. Конкретно это - "тест", поменяю на myip.com 1 Quote Link to comment Share on other sites More sharing options...
k0steg Posted January 31 Share Posted January 31 3 hours ago, surfuser said: про маршрутизацию BitTorrent замолвить словечко, чтобы VPS не накалять ненужным трафиком К сожалению, это вообще не работает ни в каких xray-клиентах - торренты продолжают качаться. И это прям проблема. Ладно трафик - он может быть безлимитный. Но всего один клиент, запустивший качаться торрент - грузит впсный проц на 50-60%. Что с этим делать - не оч понятно. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.