semenal89 Posted August 15, 2024 Posted August 15, 2024 В 04.08.2024 в 20:07, ViruZZZ сказал: 32: ovpn_br0: <BROADCAST,POINTOPOINT,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default link/ether 52:e3:1f:a3:0c:ae peer ff:ff:ff:ff:ff:ff inet 192.168.121.97/21 scope global ovpn_br0 valid_lft forever preferred_lft forever inet6 fe80::50e3:1fff:fea3:cae/64 scope link valid_lft forever preferred_lft forever ovpn_br0 указывать Quote
semenal89 Posted August 15, 2024 Posted August 15, 2024 (edited) вопрос по одновременной работе ipset и tpws кто нибудь пробовал? не будет конфликтов при одновременной работе? я ставил отдельно tpws - ютюб отлично работает с ним. но хочется и часть заблокированных сайтов через vpn пускать ... Edited August 15, 2024 by semenal89 Quote
vasek00 Posted August 15, 2024 Posted August 15, 2024 (edited) 1 час назад, semenal89 сказал: вопрос по одновременной работе ipset и tpws Все ОК, проблем не замечено. Скрытый текст iptables ... -m set --match-set tpws-list dst -j REDIRECT --to-port ... Можно проверить по проще ipset -exist create tpws-list hash:net timeout 86400 counters comment ipset -exist add tpws-list .../16 comment "rout1" ipset -exist add tpws-list .../16 comment "rout2" ... timeout выбираете сами Очистить ipset flush tpws-list Удалить ipset destroy tpws-list Потом наполнение списка как душе угодно с любого сервиса для этого. 443 лучше перенаправить на другой ip http ssl port ВАШ_ПОРТ Edited August 15, 2024 by vasek00 Quote
Host Di Posted August 16, 2024 Posted August 16, 2024 На одном телефоне Youtube работает, на другом нет. Частный DNS и прочее отключено. Куда копать?🤩 Quote
Rembol Posted August 17, 2024 Posted August 17, 2024 Всем привет! настроил по данному способу, н оесть проблемы со скорость, очень медленное соединение, хотя если прост очерез впн скорость на хорошем уровне. в чем может быт ьпроблема? Quote
keenet07 Posted August 17, 2024 Posted August 17, 2024 (edited) В основе оригинальный скрипт. Через OpenVPN соединение всё работает. Как пустить нужные домены через WISP подключение? (это когда роутер подключается по WIFI к точке доступа на мобильном телефоне) Нашёл его в списке интерфейсов apcli0. VPN_SUBNET вписал 172.20.10.10/32. Именно та что получает устройство при подключении. Список ip адресов bypass формируется. Маршрут по умолчанию из table подставляется. Скрипты работают. Но трассировка спотыкается на втором хопе. Трассировка маршрута к myip.ru [178.62.9.171] с максимальным числом прыжков 30: 1 1 ms <1 мс <1 мс 192.168.1.1 2 172.20.10.10 сообщает: Заданный узел недоступен. Трассировка завершена. Это я проверяю с клиента домашней сети. Почему не идёт трафик? Где и что ещё нужно дополнительно разрешить? Особенности работы с WISP. Не знаю имеет ли это значение. В системе WISP является резервным подключением. Когда ставлю его основным подключением, понятное дело весь трафик роутера идёт через него. И всё что нужно работает. Проблемы с самой точкой доступа нет. Когда основным подключением является проводной провайдер. А WISP подключен, но висит как резервное подключение. Если добавить статический маршрут к нужному сайту через WISP по IP в меню Маршрутизация, то трафик корректно идёт через него, но вторым хопом там становится 172.20.10.1 (шлюз на ТД) а не 172.20.10.10 (адрес клиента WISP который получает роутер). Нужный сайт открывается. Скрипт же подставляет в маршрут именно 172.20.10.10 и в итоге трафика нет. Даже если в конфиге скрипта указать прямо адрес 172.20.20.1 то вторым хопом который недоступен всё равно будет 172.20.20.10. Он видимо сам его берет из системы по названию сетевого интерфейса apcli0 или исходя из самого маршрута. Но так не работает. Как это поправить? Может NAT какой в команде iptables нужен? В чем принципиальная разница между VPN соединением и WISP для роутера? Edited August 17, 2024 by keenet07 Quote
Werld Posted August 17, 2024 Posted August 17, 2024 2 часа назад, keenet07 сказал: Когда основным подключением является проводной провайдер. А WISP подключен, но висит как резервное подключение. Если добавить статический маршрут к нужному сайту через WISP по IP в меню Маршрутизация, то трафик корректно идёт через него, но вторым хопом там становится 172.20.10.1 (шлюз на ТД) а не 172.20.10.10 (адрес клиента WISP который получает роутер). Нужный сайт открывается. Очевидно как-то не правильно вы пишете дефолтный маршрут в таблицу. Определите корректный шлюз по умолчанию для этого интерфейса и скорректируйте скрипт 010-bypass-table.sh Как-то так: ip route add default via 172.20.20.1 table 1001 Либо, как вариант, вы можете использовать частично способ из темы про AdguardHome. Не создавать таблицу и маршрут самостоятельно. А просто создать через веб роутера новую политику, сделать в ней единственным подключением ваш WISP. Роутером будет создана таблица маршрутизации для определенной метки. Вам останется лишь подкорректировать скрипт /opt/etc/ndm/netfilter.d/010-bypass-netfilter.sh , чтобы трафик маркировался меткой нужной для этой таблицы: Скрытый текст #!/bin/sh [ "$type" == "ip6tables" ] && exit [ "$table" != "mangle" ] && exit [ -z "$(ipset --quiet list bypass)" ] && exit if [ -z "$(iptables-save | grep bypass)" ]; then mark_id=`curl -kfsS http://localhost:79/rci/show/ip/policy 2>/dev/null | jq -r '.[] | select(.description == "<Имя полиси>") | .mark'` iptables -w -t mangle -A PREROUTING ! -i nwg0 -m conntrack --ctstate NEW -m set --match-set bypass dst -j CONNMARK --set-mark 0x$mark_id iptables -w -t mangle -A PREROUTING ! -i nwg0 -m set --match-set bypass dst -j CONNMARK --restore-mark fi 1 Quote
keenet07 Posted August 17, 2024 Posted August 17, 2024 (edited) 2 минуты назад, Werld сказал: Очевидно как-то не правильно вы пишете дефолтный маршрут в таблицу. Определите корректный шлюз по умолчанию для этого интерфейса и скорректируйте скрипт 010-bypass-table.sh Как-то так: ip route add default via 172.20.20.1 table 1001 Спасибо. Вы абсолютно правы. Буквально несколько минут назад сам догадался указать вручную шлюз в эту строку через via и всё заработало. Edited August 17, 2024 by keenet07 Quote
Dalex Posted August 19, 2024 Posted August 19, 2024 В 17.08.2024 в 18:53, keenet07 сказал: PN_SUBNET вписал 172.20.10.10/32. Именно та что получает устройство при подключении. Вроде бы нужно указывать не ip, а всю 24 подсеть. Quote
semenal89 Posted August 19, 2024 Posted August 19, 2024 В 15.08.2024 в 19:56, vasek00 сказал: Все ОК, проблем не замечено. спасибо за комментарий и примеры. с ip адресами в tpws-list понятно. а можно ли сделать чтобы не ip адреса а домены добавлять в ваш пример в tpws-list? Quote
vasek00 Posted August 19, 2024 Posted August 19, 2024 2 часа назад, semenal89 сказал: спасибо за комментарий и примеры. с ip адресами в tpws-list понятно. а можно ли сделать чтобы не ip адреса а домены добавлять в ваш пример в tpws-list? А чем ipset не подходит, есть список доменов aaaaaaa.com,ssssssss.com,dddddddd.com/name-list Quote
semenal89 Posted August 19, 2024 Posted August 19, 2024 1 час назад, vasek00 сказал: А чем ipset не подходит, есть список доменов aaaaaaa.com,ssssssss.com,dddddddd.com/name-list возможно тем, что у домена может быть больше одного ip адреса? Quote
vasek00 Posted August 19, 2024 Posted August 19, 2024 1 час назад, semenal89 сказал: возможно тем, что у домена может быть больше одного ip адреса? и дальше что ? Quote
Nkllganov53 Posted August 22, 2024 Posted August 22, 2024 В 07.05.2024 в 00:50, zako сказал: @Alex T огромное Вам спасибо! Все получилось! Уважаемый zako, у меня такая же ситуация с двумя VPN. Не могли бы Вы выложить модифицированные файлы для 2-х VPNов WG? Заранее спасибо Quote
applick Posted August 22, 2024 Posted August 22, 2024 (edited) Уважаемый @Drafted, есть пару вопросов, могли бы ответить? На текущий момент у меня прошивка на роутере 3.7.4 настроен выборочный роутинг по вашему методу через dnsmasq. Настроено Vpn подключение wireguard и DNS-over-HTTPS для шифрования DNS-запросов. 1)Я так понимаю если в роутере > через интернет фильтр добавлен сайт, например 2ip.ru, а потом удален, то маршрутизация не удаляется для этого сайта, очистка происходит только через перезагрузку роутера или если вручную очистить командой - ipset flush bypass. 2)Можно ли как то это все дело подружить с vless, vmess, shadowsocks2022, singbox умеет заворачивать соединение в tun. Целый вечер убил на то чтобы singbox настроить и подключиться к серверу по shadowsocks2022, но так и не получилось подружить это с ipset dnsmasq. в файле конфигурации /opt/etc/bypass.conf меняю значения на VPN_NAME=tun0 VPN_SUBNET=172.16.250.1/30 Сайты не открываются, маршруты в ipset list bypass не добавляются хотя само соединение tun0 отображается в ip addr и проверку проходит через команду: curl --interface tun0 http://myip.wtf/json Настраивал singbox по этой инструкции Причина всему этому послужило то что, вчера wireguard отвалился на пару часов, пробовал разные сервера не устанавливалось подключение и все, щас работает как обычно, походу гайки то закручивают все туже и туже, это лишь вопрос времени когда wireguard перестанет полностью работать. UPDATE: ip адреса все таки добавляются в ipset list bypass, но сайты не открываются, похоже не хватает какого правила для фаервола или конфиг для singbox надо подправить. Текущий конфиг для singbox: { "log": { "level": "debug" }, "inbounds": [ { "type": "tun", "interface_name": "tun0", "domain_strategy": "ipv4_only", "inet4_address": "172.16.250.1/30", "auto_route": false, "strict_route": false, "sniff": true } ], "outbounds": [ { "type": "shadowsocks", "server": "222.111.111.111", "server_port": 22700, "method": "2022-blake3-chacha20-poly1305", "password": "parol" } ], "route": { "auto_detect_interface": true } } Edited August 23, 2024 by applick Quote
Nkllganov53 Posted August 22, 2024 Posted August 22, 2024 В 08.08.2024 в 22:48, keenet07 сказал: @Александр Рыжов и другие. Может кто-нибудь переписать эту приблуду таким образом чтоб она работала сразу с несколькими VPN (шлюзами, интерфейсами)? В моем случае VPN и WISP подключение. Второе нужно для выхода на некоторые ресурсы с которыми у многих сейчас проблемы через интернет розданный с мобильного телефона на WISP. Там это пока работает. Идеально было бы если бы записи к разным "ВПН" можно было задавать просто меня порт подключения в записи. Например, в моем случае это могло быть так: 192.168.1.1:5353 это через VPN и 192.168.1.1:5454 это через WISP соединение. Способ рабочий. По сути достаточно только три домена прописать. Присоединяюсь к просьбе. Использую инструкцию от @Drafted Очень бы хотелось такое для двух VPN. Quote
introws Posted August 22, 2024 Posted August 22, 2024 2 часа назад, applick сказал: Причина всему этому послужило то что, вчера wireguard отвалился на пару часов, пробовал разные сервера не устанавливалось подключение и все, щас работает как обычно, походу гайки то закручивают все туже и туже, это лишь вопрос времени когда wireguard перестанет полностью работать. Как удалось восстановить работу? У меня после вчерашнего так и не завелось ничего, подключение к серверу вижу, но передачи данных нет, хэндшейки по таймауту валятся. Причем Cloudflare 1.1.1.1 WARP+ VPN со вчерашнего дня тоже перестал работать через wireguard и не только у меня, но и у друзей. Quote
Сергей Грищенко Posted August 22, 2024 Posted August 22, 2024 41 минуту назад, introws сказал: Как удалось восстановить работу? У меня после вчерашнего так и не завелось ничего, подключение к серверу вижу, но передачи данных нет, хэндшейки по таймауту валятся. Причем Cloudflare 1.1.1.1 WARP+ VPN со вчерашнего дня тоже перестал работать через wireguard и не только у меня, но и у друзей. Возможно причина в блокировке wireguard? Установите бету кинетика и установите amneziawg на кинетик, всё будет работать. У меня сейчас как раз так работает, сервер в digitalocean 1 Quote
applick Posted August 22, 2024 Posted August 22, 2024 1 час назад, introws сказал: Как удалось восстановить работу? У меня после вчерашнего так и не завелось ничего, подключение к серверу вижу, но передачи данных нет, хэндшейки по таймауту валятся. Причем Cloudflare 1.1.1.1 WARP+ VPN со вчерашнего дня тоже перестал работать через wireguard и не только у меня, но и у друзей. Само заработало через пару часов, попробуйте разные ip подключения использовать 162.159.193.*:2408, за место * цифры подставлять от 1 до 255 у меня на проводном инете с цифрой 5 пускает, может и вас пустит. На мобильном инете теперь вообще не подключается какие цифры бы не подставлял. 49 минут назад, Сергей Грищенко сказал: Возможно причина в блокировке wireguard? Установите бету кинетика и установите amneziawg на кинетик, всё будет работать. У меня сейчас как раз так работает, сервер в digitalocean На моем роутере бетку установить пока еще нельзя. В entware этот клиент наверное не установить. Хотелось бы конечно, чтобы кто нибудь подружил все это с singbox. Quote
keenet07 Posted August 22, 2024 Posted August 22, 2024 (edited) 4 часа назад, Nkllganov53 сказал: Присоединяюсь к просьбе. Использую инструкцию от @Drafted Очень бы хотелось такое для двух VPN. Там решение простое. Чтоб меньше переписывать, просто дописываете недостающие параметры в конфиг. И дублируете все скрипты во всех папках которые ставятся в оригинальном решении. Попутно меняете во вторых копиях параметры на настройки для второго VPN из конфиге. И в одном из скриптов указываете какой порт слушать вместо 5353. Дальше просто. Если нужно направить домен через первый VPN ставите в записи порт 5353, если через второй то с другим портом. Работать будет параллельно. Edited August 22, 2024 by keenet07 Quote
Nkllganov53 Posted August 22, 2024 Posted August 22, 2024 1 час назад, keenet07 сказал: Там решение простое. Чтоб меньше переписывать, просто дописываете недостающие параметры в конфиг. И дублируете все скрипты во всех папках которые ставятся в оригинальном решении. Попутно меняете во вторых копиях параметры на настройки для второго VPN из конфиге. И в одном из скриптов указываете какой порт слушать вместо 5353. Дальше просто. Если нужно направить домен через первый VPN ставите в записи порт 5353, если через второй то с другим портом. Работать будет параллельно. Спасибо за ответ. Но в каком скрипте прописывается 2-ой порт прослушивания? Он же задается в dnsmasq.conf Quote
keenet07 Posted August 22, 2024 Posted August 22, 2024 1 час назад, Nkllganov53 сказал: Спасибо за ответ. Но в каком скрипте прописывается 2-ой порт прослушивания? Он же задается в dnsmasq.conf У меня то через ipset-dns. Quote
Werld Posted August 22, 2024 Posted August 22, 2024 2 часа назад, Nkllganov53 сказал: Спасибо за ответ. Но в каком скрипте прописывается 2-ой порт прослушивания? Он же задается в dnsmasq.conf В вашем случае просто прописываете все домены на один и тот же адрес и порт dnsmasq'a. А уже в конфиге dnsmasq.conf создаете две строки для двух ipset в каждый свои домены: ipset=/ytimg.com/bypass ipset=/intel.com/bypass2 Quote
introws Posted August 22, 2024 Posted August 22, 2024 9 часов назад, Сергей Грищенко сказал: Возможно причина в блокировке wireguard? Установите бету кинетика и установите amneziawg на кинетик, всё будет работать. У меня сейчас как раз так работает, сервер в digitalocean спасибо, помогло Quote
Nkllganov53 Posted August 23, 2024 Posted August 23, 2024 9 часов назад, Werld сказал: В вашем случае просто прописываете все домены на один и тот же адрес и порт dnsmasq'a. А уже в конфиге dnsmasq.conf создаете две строки для двух ipset в каждый свои домены: ipset=/ytimg.com/bypass ipset=/intel.com/bypass2 Гениально! А в скриптах надо что то менять? Номера таблиц? Quote
Werld Posted August 23, 2024 Posted August 23, 2024 8 минут назад, Nkllganov53 сказал: Гениально! А в скриптах надо что то менять? Номера таблиц? Ну да.Оба ipset'a должны существовать. Должно быть две таблицы, с разными номерами. В каждой должен быть маршрут по умолчанию через нужный интерфейс. Трафик для попадания в разные таблицы должен маркироваться разными метками. Quote
Nkllganov53 Posted August 23, 2024 Posted August 23, 2024 23 минуты назад, Werld сказал: Ну да.Оба ipset'a должны существовать. Должно быть две таблицы, с разными номерами. В каждой должен быть маршрут по умолчанию через нужный интерфейс. Трафик для попадания в разные таблицы должен маркироваться разными метками. Стало понятнее. А можно ли запустить 2 экз. dnsmasq со своими конфигами (порт прослушивания)? Может попроще будет с заведением доменов? С таблицами/скриптами наверное также. Quote
Werld Posted August 23, 2024 Posted August 23, 2024 12 минуты назад, Nkllganov53 сказал: А можно ли запустить 2 экз. dnsmasq со своими конфигами (порт прослушивания)? Не знаю. Мне кажется, это ни к чему. Скриптовая обвязка от этого не изменится. Quote
Drafted Posted August 23, 2024 Posted August 23, 2024 В 22.08.2024 в 12:53, applick сказал: 1)Я так понимаю если в роутере > через интернет фильтр добавлен сайт, например 2ip.ru, а потом удален, то маршрутизация не удаляется для этого сайта, очистка происходит только через перезагрузку роутера или если вручную очистить командой - ipset flush bypass. Да, все верно. Удалять нужно вручную, либо ребутить роутер. Надо посмотреть есть ли хук на удаление записей из интернет-фильтра, чтобы чистить таблицу автоматически. В 22.08.2024 в 12:53, applick сказал: 2)Можно ли как то это все дело подружить с vless, vmess, shadowsocks2022, singbox умеет заворачивать соединение в tun. Целый вечер убил на то чтобы singbox настроить и подключиться к серверу по shadowsocks2022, но так и не получилось подружить это с ipset dnsmasq. Здесь не подскажу - не использую. 14 часа назад, Nkllganov53 сказал: Стало понятнее. А можно ли запустить 2 экз. dnsmasq со своими конфигами (порт прослушивания)? Может попроще будет с заведением доменов? С таблицами/скриптами наверное также. По логике делается это так: Дублируете скрипт запуска S56dnsmasq в /opt/etc/init.d/ и указываете в параметрах запуска через ключ -conf-file другой конфиг (например: /opt/etc/dnsmasq2.conf), в котором прописан новый pid-file (например /var/run/opt-dnsmasq2.pid), другой порт (например, 5301) и другой ipset (например bypass2). Далее дублируете и изменяете скрипт запуска /opt/etc/init.d/S52ipset-bypass и все хуки в /opt/etc/ndm/netfilter.d/ под новый ipset. Quote
Denis P Posted August 23, 2024 Posted August 23, 2024 (edited) 7 минут назад, Drafted сказал: Да, все верно. Удалять нужно вручную, либо ребутить роутер. Надо посмотреть есть ли хук на удаление записей из интернет-фильтра, чтобы чистить таблицу автоматически. зачем усложнять, уже всё есть ipset flush <ipset name> изменения в интернет фильтрах можно мониторить по файлу /tmp/ndnproxymain.conf там уже хеши сверяйте, мониторьте с помощью - inotifywait, entr, как угодно Edited August 23, 2024 by Denis P Quote
Recommended Posts
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.