Jump to content

ipset-dns для выборочного роутинга


Recommended Posts

3 минуты назад, madsen сказал:

Так и не понял, как из списка найти нужный VPN интерфейс 😒

Ну вы тип VPN своего знаете? OpenVPN, WireGuard или иное. IP адреса, шлюз, подсеть тоже должны видеть когда подключаетесь. Или знать. Вот и найдите в этом списке запись которая соответствует вашим данным.

Edited by keenet07
Link to comment
Share on other sites

В 26.04.2023 в 20:44, Александр Рыжов сказал:

Список ресурсов для открытия через VPN-соединение удобно вести на странице Сетевые правила → Интернет фильтры → Настройка DNS. Пример добавления домена intel.com вместе с субдоменами:

DNS_add_record.png

 

Выполнил я данную процедуру и все работает, но вот как только я включаю протокол ipv6 в роутере все ломается и маршруты почему то не работают, кто нибудь знает как исправить?

Link to comment
Share on other sites

В 26.04.2023 в 19:44, Александр Рыжов сказал:

Ещё один легковесный способ выборочного роутинга с однократной настройкой в консоли. Основан на том, что актуальная прошивка может использовать разные DNS-серверы для указанных пользователем доменов. Желаемые домены можно будет менять прямо в веб-интерфейсе.

Решение основано на немного допиленной мелкой утилите ipset-dns. Прошивка будет обращаться к ней для разрешения определённого доменного имени из пользовательского перечня, а та, в свою очередь, будет складывать результаты работы в отдельный набор ip-адресов. Далее этот набор используется для выборочного роутинга в VPN-соединение ровно так же, как в аналогичных решениях по соседству. Тем самым сохраняются все возможности прошивочного сервиса.

Перед установкой настройте в веб-интерфейсе любое VPN-соединение.

Установка возможна с помощью пакета, подходящего под любую архитектуру кинетика:

opkg install http://bin.entware.net/mipselsf-k3.4/test/ipset-dns-keenetic_0.2-1_all.ipk

Для настройки вам понадобится имя и подсеть VPN-интерфейса. Их можно увидеть в выводе команды ip addr. В примере это nwg3 и 10.7.0.0/24:

…
37: nwg3: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1324 qdisc noqueue qlen 50
    link/[65534] 
    inet 10.7.0.8/24 scope global nwg3

Внесите эти два параметра любым удобным способом в /opt/etc/bypass.conf по имеющемуся примеру в переменные VPN_NAME и VPN_SUBNET:

vi /opt/etc/bypass.conf

После чего решение готово к использованию. Запустите утилиту ipset-dns или просто перегрузите роутер:

/opt/etc/init.d/S52ipset-dns start

 

Список ресурсов для открытия через VPN-соединение удобно вести на странице Сетевые правила → Интернет фильтры → Настройка DNS. Пример добавления домена intel.com вместе с субдоменами:

DNS_add_record.png

где 192.168.1.1 — IP-адрес роутера. Если вам привычней CLI-интерфейс, то аналог записи выше:

ip name-server 192.168.1.1:5353 intel.com

Число записей ограничено 64. 

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

 

 

 

У меня если выбираю любая сеть то почему то не идёт через ВПН ,если выбираю свой ВПН тогда идёт но те домены что не добавлял тоже почему то не идут от провайдера а с ВПН, то есть ВПН всё начинает брать на себя)

Link to comment
Share on other sites

18 часов назад, SAGAK сказал:

Подскажите, как вы "отключили у соединения внутренний DNS"?

в настройках DHCP убрал адрес внутреннего (расположенного на хранилке) DNS сервера

Link to comment
Share on other sites

В 10.09.2024 в 02:47, zako сказал:

Кто-нибудь пробовал комбо sing-box (протокол vless xtls reality)  + ipset-dns? 

Пробовал, настроил подключение sing-box-go c shadowsocks2022, vless и заворачиванием трафика в tun0, само соединение работает проверял через curl, но с ipset-dns не получилось заставить работать. Забавно что ip адреса в bypass list добавляет и на этом все, сайты не открывает. Возможно какого то правила в iptables не хватает или конфиг с подключение sing-box надо настроить по другому.

Edited by applick
  • Thanks 1
Link to comment
Share on other sites

Товарищи, доброго дня.

Настроил все по инструкции уважаемого @Drafted и в течение ~недели все было ок, но после столкнулся с тормозами на ютубе. При этом в консоли гугл хрома время от времени вижу fetch-запросы к googlevideo.com со статусом "(canceled)", которые как раз и приводят к зависаниям.

image.thumb.png.aa4ccc7e0f4ead3b19b842ad4d2591d5.png

Не эксперт, но мне кажется, будто некоторые запросы к googlevideo.com идут через ip, которых нет в роутере. Проблема не зависит от конкретного железа, но чаще всего проявляется на ПК, гугл хром.

Что пробовал:

1. Переустановил opkg и ко на внутреннюю память роутера, было на usb

2. Сбрасывал настроки сети в windows, гугл хроме (отключал quic, внутренний DoH, сброс dns и сокетов, удалял все расширения)

3. Отключал IPv6, ставил игнорирование DNS провайдера в настройках роутера

4. Ставил единый DNS (8.8.8.8) для всей системы (dnsmasq.conf и интернет-фильтры). Пробовал в чистом виде и через DoT/DoH

5. Несколько раз проверял ip адреса ресурса на ПК и на роутере, различий пока не было замечено

В общем, не знаю, что еще можно сделать. Если пустить весь трафик через VPN, то никаких проблем нет. Я один с такой проблемой? Буду рад, если кто-то сможет подсказать в какую сторону смотреть.

Edited by Rndn
Link to comment
Share on other sites

Не дождался релиза Keenetic OS 4.2,  так как после аварии у провайдера OpenVPN попал под блокировку.

Поставил 4.2 Beta 3, настроил OpenConnect через GUI, поменял в bypass.conf (использую метод с использованием dnsmasq) имя интерфейса и подсеть.

Сбросил ipset, перегрузил роутер, записи в ipset пошли, но записей в таблице маршрутизации нет, смотрел

ip route list table 1001

В чем может быть дело?

Заработало после переподключения к openconnect серверу, и выдало изначальный адреса клиенту. Видимо залипало предыдущее подключение.

Edited by Dalex
Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   1 member

×
×
  • Create New...