Skip to content

A shell scripts that route traffic to specific network resources over the VPN on Keenetic routers.

License

Notifications You must be signed in to change notification settings

rustrict/keenetic-traffic-via-vpn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Данный проект позволяет перенаправлять трафик для отдельных ресурсов в VPN-туннель на роутерах Keenetic с использованием репозитория Entware.

Установка

Для загрузки и работы установочного скрипта требуется curl. При отсутствии — установить командой:

opkg install curl

Для начала процесса установки выполните команду:

curl -sfL https://raw.githubusercontent.com/rustrict/keenetic-traffic-via-vpn/main/install.sh | sh

Установщик создаст каталог /opt/etc/unblock (если такой не существует) и поместит в него необходимые файлы. Также будут созданы два симлинка для отслеживания состояния VPN-туннеля и автоматического обновления маршрутов раз в сутки. Для работы скрипта parser.sh требуются bind-dig, cron и grep — они будут установлены при отсутствии.

После окончания установки понадобится:

  • Отредактировать файл /opt/etc/unblock/config, указав в переменной IFACE название интерфейса VPN, которое можно увидеть в выводе команды ip address show или ifconfig. Например, ovpn_br0 (=OpenVPN0) или nwg0 (=Wireguard0);
  • Заполнить файл /opt/etc/unblock/unblock-list.txt доменами и (или) IPv4-адресами (как с префиксом, так и без) ресурсов, трафик до которых вы хотите пустить через VPN;
  • Запустить VPN-соединение (или перезапустить, если оно было запущено до установки).

Примеры заполнения config

Для OpenVPN-туннеля:

# Название интерфейса VPN-туннеля из ifconfig или ip address show
IFACE="ovpn_br0"

# Расположение файла с адресами и доменами
FILE="/opt/etc/unblock/unblock-list.txt"

Для WireGuard-туннеля:

# Название интерфейса VPN-туннеля из ifconfig или ip address show
IFACE="nwg0"

# Расположение файла с адресами и доменами
FILE="/opt/etc/unblock/unblock-list.txt"

Пример заполнения unblock-list.txt

example.com
1.1.1.1
93.184.220.0/24

Замечание

Учтите, что по умолчанию трафик перенаправляется только для устройств из сегмента «Домашняя сеть» (Bridge0). При попытке доступа непосредственно с роутера, трафик не отправится в VPN-туннель. Если вас это не устраивает, последовательно выполните следующие три команды:

ip rule del priority 1995 2>/dev/null
ip rule add table 1000 priority 1995
sed -i 's/iif br0 //' /opt/etc/unblock/start-stop.sh

После этого под перенаправление попадут все устройства, включая сам роутер.

Удаление

Для удаления выполните команду:

/opt/etc/unblock/uninstall.sh

Будут удалены все скаченные и созданные установщиком файлы, а также каталог /opt/etc/unblock, если в нём не окажется ничего постороннего.

About

A shell scripts that route traffic to specific network resources over the VPN on Keenetic routers.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages