@Tiamon

OpenWRT как сделать статическую маршрутизацию по списку из нескольких тысяч строк?

Доброго времени камрады
Есть большое желание настроить переадресацию в VPN тунели по спискам из ip2location https://www.ip2location.com/free/visitor-blocker
Для России там несколько десятков тысяч строк, если просто загнать список в /etc/config/network то OpenWRT уходит в аут.
OpenWRT крутится в контейнере, работает всё идеально, но если маршрутов становится слишком много, они перестают работать. Проблема не в ресурсах, я выделял много.
Уверен, что есть вариант как это сделать, но пару дней гуглежа и попыток, некчему не привели. (
Цель, что бы из за бугра ходить на РФ ресурсы через соответствующий тунель WG
Требуется ваша помощь
  • Вопрос задан
  • 453 просмотра
Решения вопроса 1
@Tiamon Автор вопроса
Сам разобрался, спасибо статье https://habr.com/ru/articles/440030/
Для тех кому тоже надо )
У меня WG для РФ и РК
Соответственно я создал два стандартных подключения WGKZ и WGRU
Дальше формирую два файла с IP сетями
/etc/subnetru.lst
/etc/subnetkz.lst

Содержимое беру от сюда https://www.ip2location.com/free/visitor-blocker
Содержимое файлов, должно быть вида:
2.16.20.0/23
2.16.53.0/24
2.16.103.0/24
2.16.154.0/24
2.16.161.0/24
.........

и т.д.

Дальше добавляем в файлы:

/etc/hotplug.d/iface/30-vpnroute

#!/bin/sh

ip route add table vpnkz default dev WGKZ
ip route add table vpnru default dev WGRU


В конец файла /etc/iproute2/rt_tables

98  vpnkz
99  vpnru


В файлы:

/etc/config/firewall

config zone
        option name 'VPN'
        option family 'ipv4'
        option output 'ACCEPT'
        option forward 'REJECT'
        option input 'REJECT'
        option mtu_fix '1'
        option masq '1'
        list network 'WGRU'
        list network 'WGKZ'

config forwarding
        option src 'lan'
        option dest 'VPN'

config ipset
        option name 'vpn_subnets_ru'
        option match 'dst_net'
        option loadfile '/etc/subnetru.lst'

config ipset
        option name 'vpn_subnets_kz'
        option match 'dst_net'
        option loadfile '/etc/subnetkz.lst'

config rule
        option name 'mark_subnet_kz'
        option src 'lan'
        option dest '*'
        option proto 'all'
        option ipset 'vpn_subnets_kz'
        option set_mark '0x1'
        option target 'MARK'
        option family 'ipv4'

config rule
        option name 'mark_subnet_ru'
        option src 'lan'
        option dest '*'
        option proto 'all'
        option ipset 'vpn_subnets_ru'
        option set_mark '0x2'
        option target 'MARK'
        option family 'ipv4'


/etc/config/network
config rule
        option priority '100'
        option lookup 'vpnkz'
        option mark '0x1'

config rule
        option priority '100'
        option lookup 'vpnru'
        option mark '0x2'

config device
        option name 'eth0'
        option ipv6 '0'

config device
        option name 'WGRU'
        option ipv6 '0'

config device
        option name 'eth2'
        option ipv6 '0'

config device
        option name 'eth1'
        option ipv6 '0'

config device
        option name 'WGKZ'
        option ipv6 '0'


И важно отрубить IPV6 на всех интерфейсах участвующих в этом процессе, я отрубил везде )
Только после этого заработало
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Drno
Смени wg на xray vless
Там должно прописываться geoip и regexp для ру доменов
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы