Комментарии 16
Если статья начинается с установки vim, хорошо бы если в ней было описано, как из него выйти. Шутка.
Эх, ребята, веселый вариант был бы подключением сетевой пробы на ip dest и решением добавлять ли его в локальную таблицу или отправлять в remote по geoip или иному списку. Между прочим, в сетях шпд это уже лет 5 как применяется в разных формах. А вы "скачиваем список, добавляем в маршруты"...
Базы GeoIP, списки РКН вкупе с iptables, tcpdump+простой скрипт на питоне решают вопросик легко.
А почему нельзя пушить клиенту специфик маршруты?
потому что если пушить будет VPN1, то клиент будет ходить на эти адреса через VPN сервер, но на остальные будет ходить мимо туннеля. А VPN2 должен пушить все адреса не входящие в список.
Ну получается адреса, которые не в списке, пойдут через локальный Инет. Или не понимаю задачи.
Эта проблема как раз легко решается. Инвертировать список CIDR, так, чтобы пушить "все, кроме" - задача тривиальная. А вот какое количество маршрутов сможет переварить OpenVPN-клиент на среднем смартфоне (и с т.зр. использования им ресурсов, и с т.зр. времени установки соединения) - вопрос интересный.
P.S. У меня самогó схема похожая - VPN в РФ для пользователей и на нём маршрутизация по настраиваемым правилам, но эти правила посложнее (используются не только GeoIP, но и списки РКН, и вручную добавленные исключения, это настраивается индивидуально под разных клиентов, да и точек выхода в сумме 4 - собственно VPN-сервер, роутер в офисе в РФ для тех сайтов, которые блокируют доступ с IP дата-центров, сервер в Голландии, роутер в Турции).
Это вторая проблема, пушить столько маршрутов на конечное устройство - многие устройства просто не потянут. Но инвертировать список это уже сложнее. Для примера нам надо чтобы по стране нашего местонахождения трафик выходил с первого сервера, а весь остальной мир со второго. А теперь считаем: в IPv4 - 4 294 967 296 адресов, в условной стране их пусть будет 200 000. Вопрос: что легче и быстрее обработать (в том числе и серверу) 200 000 адресов, а все остальное пересылать на другой сервер или оставшиеся 4 294 767 296 адресов?
Ну мы же не индивидуально каждый адрес с маской /32 пушить будем :) После суммаризации большой разницы не будет (количество "дырок" в списке всех возможных адресов равно количеству промежутков между этими "дырками" +/- 1, а что там округлится до ровных масок, а что придётся делить на несколько диапазонов - уж точно не на порядок будет разница)
P.S. Посчитал сейчас по GeoIP базе от Maxmind. Все российские сети - 12138 префиксов, все сети, кроме российских - 47310 префиксов. Разница в 4 раза, да, как раз за счёт дробления "промежутков" между российскими диапазонами, - но вряд ли это будет сильно критично для каких-либо применений.
Поделитесь инструкцией как это все настраивали ;)
Позвольте подать идею, только не топите её сразу, можно же просто, до времени положить на полочку и иногда возвращаться к ней:
Почти год я платил условные 5$ за VPS\VPN хостинг, причина проста, например, купил новый ноутбук, нужно загрузить обычный intel wifi драйвер.. и так и сяк - не получается, эмоции, гнев, или очередные изменения у провайдера и то что работало вчера, сегодня уже не работает.. и однажды, коллега по работе на моё возмущение ответил, - "а я просто в "популярном" веб браузере, установил "популярное" дополнение и всё работает, смотри..", я посмотрел, и оно действительно работает. Начал искать, а какие ещё есть бесплатные варианты. Потом сел и задал себе вопрос, - "я собираю разные конструкторы в Linux.. разве не смогу я сделать, тот же прокси, VPN, маршрутизацию.. через данные бесплатные аналоги? конечно смогу!", но что лучше 5$ или бесплатно. Для кого-то это бигмак и кола, а для меня два обеда. А в год.. но самая главная причина: я не хочу платить даже такие деньги за такой сервис различных хостинг провайдеров, т.к. они врут, обманывают, предоставляют не грамотный сервис. Почему-то у меня не возникает отторжения, когда я пополняю счёт на 5$ в том же DO, Vultr, Hetzner,.. т.к. на мой взгляд их товар стоит этих денег, но то что рекомендуют, как пример в см выше - это уровень 3-4$ за год.
Главная проблема openvpn, это блокирование его как зарубежном, так и в РФ
А почему выбрали OpenVPN, а не более популярный Wireguard ?
IQ-Openvpn или Openvpn с распределенной маршрутизацией