В данном гайде будем устанавливать пакет v2rayA на OpenWRT на примере стабильной 23.05.0. Рекомендуется роутер минимум с 128 МБ RAM (256 предпочтительно) и памятью более 16 Мб (установка занимает около 30МБ памяти).
v2rayA — это простой в использовании и мощный клиент ориентированный на Linux. Несмотря на название актуальная версия использует xray-core, хотя есть возможность использовать и v2ray-core. Имеет веб-интерфейс для управления настройками и импорта конфигураций, подписок. Поддерживает всё, что поддерживает xray-core:
Shadowsocks (в т.ч. 2022), ShadowsocksR, Trojan, Vless (включая XTLS-Reality), Vmess, Juicity, Tuic
Руководство будет включать:
Установку из репозитория
Настройку v2rayA и обход блокировок с помощью @schebotar Antifilter GeoIP, Geosite
1. Установка v2rayA
Поддерживаются версии начиная с 19.07, на 18.06 не проверял, возможно и там заработает.
На примере 23.05.0:
Устанавливаем публичный ключ репозитория и добавляем его в списки OPKG:
wget https://downloads.sourceforge.net/project/v2raya/openwrt/v2raya.pub -O /etc/opkg/keys/94cc2a834fb0aa03
echo "src/gz v2raya https://downloads.sourceforge.net/project/v2raya/openwrt/$(. /etc/openwrt_release && echo "$DISTRIB_ARCH")" | tee -a "/etc/opkg/customfeeds.conf"
v2rayA также доступен в официальном репозитории OpenWRT, но минимальная рабочая версия на данный момент 2.2.4-1, остальные не смогут загрузить geoip и geosite с сайта проекта и будут бесконечно висеть в ошибке.
Далее обновляем список пакетов:
opkg update
Устанавливаем пакеты:
opkg install v2raya xray-core kmod-nft-tproxy iptables-nft
Далее вы можете выбрать так называемую скрытую установку - управление v2rayA будет доступно только в веб-интерфейсе на порту 2017.
либо установить пакет luci-app-v2raya и управлять запуском v2rayA через LuCI:
opkg install luci-app-v2raya
После успешной установки переходим к запуску:
uci set v2raya.config.enabled='1'
uci commit v2raya
/etc/init.d/v2raya enable
/etc/init.d/v2raya start
Далее переходим в панель управления v2rayA вашего роутера, например http://192.168.1.1:2017.
Возможно вы увидите сообщение:
Downloading missing geoip.dat and geosite.dat; refresh the page later. 正在下载缺失的 geoip.dat 和 geosite.dat,请稍后刷新页面。
В этом случае стоит подождать некоторое время, после чего перезагрузить страницу:
![](https://habrastorage.org/getpro/habr/upload_files/bcd/755/642/bcd7556424fd9810ece859f1cb7c1f59.png)
Вам предложат создать отдельный логин и пароль для управления v2rayA.
Вводим данные, запоминаем и нажимаем Login.
2. Настройка v2rayA и обход блокировок с помощью Antifilter GeoIP, Geosite
![](https://habrastorage.org/getpro/habr/upload_files/6a7/234/c8f/6a7234c8f53cdabe438b81f41cfb8732.png)
Далее можно импортировать (Import) ваш конфиг для подключения к прокси в виде ссылки либо нажать Create и ввести нужные данные вручную.
Далее переходим в меню Setting:
![](https://habrastorage.org/getpro/habr/upload_files/e71/b7c/3e1/e71b7c3e1f6d09be4aa8e46b60a14132.png)
Для обхода блокировок по спискам Antifilter, созданных пользователем @schebotar(за что ему огромное спасибо) нам необходимо задать следующие настройки v2rayA:
Transparent Proxy / System Proxy: On : Traffic Splitting Mode is the same as the Rule Port
Transparent Proxy / System Proxy Implementation: redirect
Traffic Splitting Mode of Rule Port: RoutingA
-
Prevent DNS Spoofing: Prevent DNS Hijack Only (fast) - тут можно выбрать и иной вариант - Advanced Setting и ввести нужные вам DNS серверы
Special Mode - Off
TCPFastOpen - Keep Default
Multiplex - Off (при наличии ресурсов роутера можно и включить, об этом в конце статьи)
Automatically Update Subscriptions - по умолчанию Off, но если вы используете подписки на конфигурации, можете задать необходимый интервал обновления
Mode when Update Subscriptions and GFWList - Follows Transparent Proxy / System Proxy
Далее переходим к разделу Traffic Splitting Mode of Rule Port: RoutingA - Configure:
![](https://habrastorage.org/getpro/habr/upload_files/f2b/449/71f/f2b44971f22371ecb97949258f2cc2fb.png)
Удаляем содержимое и вставляем туда следующие строки:
default: direct
# write your own rules below
ip(geoip:antifilter)->proxy
ip(geoip:antifilter-community)->proxy
domain(LoyalsoldierSite:antifilter)->proxy
domain(LoyalsoldierSite:antifilter-community)->proxy
#domain(geosite:antifilter)->proxy
#domain(geosite:antifilter-community)->proxy
В этих строках содержится:
Политика по умолчанию - прямой доступ через шлюз по умолчанию (direct он же bypass в большинстве клиентов)
при совпадении IP со списком geoip:antifilter или geoip:antifilter-community - через прокси
при совпадении домена со списком LoyalsoldierSite:antifilter или LoyalsoldierSite:antifilter-comminity - через прокси
Данные настройки так же применимы для многих клиентов основанных на xray-core, главное скачать необходимые списки.
Нажимаем Save и сохраняем настройки, после чего ещё раз и возвращаемся на главный экран:
![](https://habrastorage.org/getpro/habr/upload_files/bca/962/186/bca962186d27906293cf9303ded0782c.png)
Далее перед запуском нам необходимо скачать списки GeoIP и Geosite:
wget -O /usr/share/xray/geoip.dat https://github.com/schebotar/antifilter/releases/latest/download/geoip.dat
wget -O /usr/share/xray/LoyalsoldierSite.dat https://github.com/schebotar/antifilter-domain/releases/latest/download/geosite.dat
Для экономии места, можно так же очистить существующую базу geosite.dat
> /usr/share/xray/geosite.dat
Если всё успешно скачалось, далее возвращаемся к v2rayA:
![](https://habrastorage.org/getpro/habr/upload_files/3f7/481/3d5/3f74813d5b98e56fb094c9efcf8f9b09.png)
Нажимаем Connect на выбранной конфигурации после чего кнопку Ready:
![](https://habrastorage.org/getpro/habr/upload_files/767/970/a42/767970a4297aa3867ec5d16205df0b47.png)
Проверить работу можно в т.ч. по логам v2rayA:
![](https://habrastorage.org/getpro/habr/upload_files/e6e/51f/ae4/e6e51fae4847616e911f56e146e242bd.png)
Поскольку v2rayA имеет встроенные списки (которые жестко прописаны в коде проекта) GeoIP, Geosite и GFWList создадим скрипт раз в 24 часа скачивающий нужные нам списки Antifilter:
crontab -e
0 5 * * * wget -O /usr/share/xray/geoip.dat https://github.com/schebotar/antifilter/releases/latest/download/geoip.dat
0 5 * * * wget -O /usr/share/xray/LoyalsoldierSite.dat https://github.com/schebotar/antifilter-domain/releases/latest/download/geosite.dat
Если вам необходимо направлять внешний трафик в v2rayA, можно установить tun2socks воспользовавшись 5 главой этой инструкции, отличие будет только в порте Socks5 proxy, у v2rayA он по умолчанию 20170.
![](https://habrastorage.org/getpro/habr/upload_files/bd0/ac7/690/bd0ac7690a4c614eede70e317d1fa38a.png)
Для отключения v2rayA:
/etc/init.d/v2raya stop
/etc/init.d/v2raya disable
На этом настройка закончена. Отдельно хочется написать по поводу мультиплекса, в моём случае замеры не показали ощутимой разницы между включенной и выключенной опцией, но в других условиях может быть иначе:
Без мультиплекса (VirtualBox x86_64, 512 MB RAM):
393 MB Свободно ОЗУ – в простое
347.64 MB Свободно ОЗУ – vless (ws+tls)
![](https://habrastorage.org/getpro/habr/upload_files/9cd/864/513/9cd864513adace41a263cdadc49ee4b6.png)
337.44 MB Свободно ОЗУ - trojan (tls)
![](https://habrastorage.org/getpro/habr/upload_files/789/255/f3b/789255f3bad365e95d5bc3901591e5cb.png)
338.48 MB Свободно ОЗУ – shadowsocks (ietf20-chacha1305)
![](https://habrastorage.org/getpro/habr/upload_files/c67/299/215/c672992150a311d3f67fff72685dbb9c.png)
328.25 MB Свободно ОЗУ – vmess (ws+tls)
![](https://habrastorage.org/getpro/habr/upload_files/892/f9b/5b0/892f9b5b03b33ad9feadc793c4031a1a.png)
С мультиплексом:
348.94 MB Свободно ОЗУ – vless (ws+tls)
![](https://habrastorage.org/getpro/habr/upload_files/40b/ed1/8ff/40bed18ffa9e7f40c3b9efe5c55790e3.png)
348.58 MB Свободно ОЗУ – trojan (tls)
![](https://habrastorage.org/getpro/habr/upload_files/95d/a43/da9/95da43da9cf3382840cf7f12a08d620c.png)
345.55 MB Свободно ОЗУ – shadowsocks (old)
![](https://habrastorage.org/getpro/habr/upload_files/edd/45a/ebe/edd45aebe642a818464fba679c1be80a.png)
316.92 MB Свободно ОЗУ – vmess (ws+tls)
![](https://habrastorage.org/getpro/habr/upload_files/a16/e32/ec5/a16e32ec59570a1e41f786bde12a7217.png)
Результаты довольно неоднозначные, но хотелось поделиться.
По настройке XRay рекомендую статьи: Программы-клиенты для протоколов недетектируемого обхода блокировок сайтов: V2Ray/XRay, Clash, Sing-Box, и другие / Хабр (habr.com) и FAQ по Shadowsocks/XRay/XTLS/Reality/Nekobox/etc. для обхода блокировок / Хабр (habr.com)
LZ33
luci-app-v2raya имеет большой объём, после установки осталось несколько килобайт в хранилище на MR90x. Удалил.
Неплохой для меня первый опыт работы с openWrt по установке приложений. Теперь настройкой по Вашей статье займусь. Спасибо за статью.
Andrevich Автор
Благодарю за оценку. Как я и писал в статье, вся установка занимает около 30Мб с учётом всех указанных пакетов и баз адресов и доменов, на MR90x 128 Мб постоянной памяти, этого должно быть более чем достаточно, luci-app-v2raya занимает около 1Мб несколько я помню
LZ33
К сожалению, я не имею опыта в OpenWrt -памяти 128, но разбита она при установке по умолчанию на 2 раздела ubi0 и ubi1 по 50 МБ каждый. Можно ли переразбить память и как это сделать не знаю...
vasisulay
нет возможности расширить за счет USB?
LZ33
USB нет