-
Постов
686 -
Зарегистрирован
-
Посещение
-
Победитель дней
7
Тип контента
Профили
Форумы
Галерея
Загрузки
Блоги
События
Сообщения, опубликованные avn
-
-
2 часа назад, Le ecureuil сказал:
Ок, перемещу.
Вроде все заработало, посмотрите на 4.2.b3.
На b3, или b4 все таки?
-
4 часа назад, avn сказал:
У нас WireShark не декодирует пакет. Т.е. mac1 не соответствует данным.
if (wg_noise_handshake_create_initiation(&packet, &peer->handshake, wg->advanced_security_config.init_packet_magic_header, peer->client_id)) { wg_cookie_add_mac_to_packet(&packet, sizeof(packet), peer);
Можете попробовать, сделать присвоение client_id после вызова wg_cookie_add_mac_to_packet() (Т.е. тут wg_noise_handshake_create_initiation client_id не задавать)?
Становится понятен алгоритм. Перед отправкой данных на сервер, уже в готовом пакете данных с рассчитанным mac1 и полем type = 0x00000001 записывается client-id.
При получении пакета от сервера, для его успешной расшифровки поле client-id зануляется.
Сейчас пакет шифруется в месте с полем client-id. Это приводит к тому, что мы не видим ответов от сервера.
Для пакетов с типами 2,3,4 алгоритм такой же.
Т.е client-id как бы ещё один уровень транспортного пакета. Перед отправкой установили, при получении сняли. Но во внутренних процессах все работает по старому без client-id.
-
У нас WireShark не декодирует пакет. Т.е. mac1 не соответствует данным.
if (wg_noise_handshake_create_initiation(&packet, &peer->handshake, wg->advanced_security_config.init_packet_magic_header, peer->client_id)) { wg_cookie_add_mac_to_packet(&packet, sizeof(packet), peer);
Можете попробовать, сделать присвоение client_id после вызова wg_cookie_add_mac_to_packet() (Т.е. тут wg_noise_handshake_create_initiation client_id не задавать)?
-
Версия 4.2 beta 3 не исправлено.
*mangle :_NDM_HTTP_INPUT_TLS_ - [0:0] :_NDM_HTTP_INPUT_TLS_PASS_ - [0:0] -A INPUT -p tcp -m tcp --dport 443 -j _NDM_HTTP_INPUT_TLS_ -A _NDM_HTTP_INPUT_TLS_ -p tcp -m tcp --dport 443 --tcp-flags SYN SYN -j CONNNDMMARK --set-xmark 0x20/0x0 -A _NDM_HTTP_INPUT_TLS_ -p tcp -m tcp --dport 443 --tcp-flags SYN SYN -j RETURN -A _NDM_HTTP_INPUT_TLS_ -p tcp -m tcp --dport 443 --tcp-flags ACK ACK -j CONNNDMMARK --set-xmark 0x20/0x0 -A _NDM_HTTP_INPUT_TLS_ -p tcp -m tcp --dport 443 --tcp-flags ACK ACK -m connskip --connskip 2 -j RETURN -A _NDM_HTTP_INPUT_TLS_ -j _NDM_HTTP_INPUT_TLS_PASS_ -A _NDM_HTTP_INPUT_TLS_PASS_ -p tcp -m tls --tls-sni "*61413ac0945b6ece48b952e2.keenetic.io" -j CONNNDMMARK --set-xmark 0x0/0x0 -A _NDM_HTTP_INPUT_TLS_PASS_ -p tcp -m tls --tls-sni "*61413ac0945b6ece48b952e2.keenetic.io" -j RETURN -A _NDM_HTTP_INPUT_TLS_PASS_ -j DROP
4.2b4 не исправлено
-
3 часа назад, DennoN сказал:
Я проверял. Адгуард установлен из ентвари. Кладу в файл /opt/etc/hosts запись, после перезапуска адгуард все равно не видит ее. Когда кладу в /etc/hosts, перезапускаю адругард и запись появляется. Возможно баг в самом адгуарде... Но пока работает именно так. Меня очень смущает, что в веб интерфейсе в рантайм клиентах написано, что они из файла opt/etc/hosts, хотя по факту этот файл игнорируется
Про фс ватчер, не знаю как часто он данные обновляет, у меня без рестарта не завелась. Команда reconfigure тоже не давала результата
Надо в /tmp ложить.
-
В 05.09.2024 в 10:11, Le ecureuil сказал:
Посмотрел дампы, разницы не вижу. Видимо что-то еще важно, но непонятно что.
Пересмотрел еще раз патч, смущает кусок с cpu_to_le32 для маски:
#define SKB_TYPE_LE32(skb, asc) ((((struct message_header *)(skb)->data)->type) & ((asc) ? 0xFFFFFFFF : cpu_to_le32(0xFF)))
Не может он быть корнем проблемы?
-
7 часов назад, i81 сказал:
Доброго дня, уважаемое сообщество!
Подскажите пожалуйста, для работы КВАСа необходимо, что бы у клиентов в качестве DNS сервера был указан маршрутизатор с КВАСом или это сейчас необязательно?
Обязательно
-
1
-
-
12 минуты назад, i81 сказал:
А есть по нему тема?
На githab полно тем.
-
16 минут назад, Max99 сказал:
Подскажите , а можно xkeen использовать только как тонель, что нужно установить ( не устанавливать) в этом случае? Чтобы он вообще не маршрутизировал ничего, а маршрутизацию я делал через интерфейс кинетика в пользовательских маршрутах. Так реально использовать xkeen?
Возьми sing-box, он поднимает интерфейс tun.
-
-
KN-1011 4.2 Beta (2,3) утечки и ребутов нету и не было. hwnat=1,swnat=1
Скрытый текст{ "release": "4.02.B.3.0-0", "sandbox": "preview", "title": "4.2 Beta 3", "arch": "mips", "ndm": { "exact": "0-bc7767682d", "cdate": "30 Aug 2024" }, "bsp": { "exact": "0-182639e51f", "cdate": "30 Aug 2024" }, "ndw": { "version": "", "features": "dual_image,wifi_button,usb_3,usb_3_first,led_control,wifi5ghz,vht2ghz,mimo2ghz,mimo5ghz,atf2ghz,atf5ghz,wifi6,wifi_ft,wpa3,wsa5ghz,hwnat,sfp", "components": "base,corewireless,dhcpd,dns-https,dns-tls,ext,ip6,lang-en,lang-ru,mdns,monitor,nathelper-rtsp,opkg,opkg-kmod-fs,opkg-kmod-netfilter,opkg-kmod-netfilter-addons,pingcheck,ppe,storage,transmission,tsmb,usb,wireguard" }, "ndw4": { "version": "4.2.4.21" }, "manufacturer": "Keenetic Ltd.", "vendor": "Keenetic", "series": "KN", "model": "Giga (KN-1011)", "hw_version": "11108000", "hw_type": "router", "hw_id": "KN-1011", "device": "Giga", "region": "EA", "description": "Keenetic Giga (KN-1011)" }
-
В 08.09.2024 в 09:51, strannik сказал:
Ткните пожалуйста, носом, где именно эти параметры выставляются. И я только из вашего сообщения узнал, что IP и диапазоны сетей тоже можно КВАСом заворачивать. Это тоже через kvas add <IP_в_CIDR_формате> или как-то иначе делается?
Заранее спасибо!
Штатно нигде.
dnsmasq
max-ttl=86400 # Set a maximum TTL value that will be handed out to clients
ipset
ipset create unblock4-ssp hash:net timeout 86400 family inet -exist ipset create unblock6-ssp hash:net timeout 86400 family inet6 -exist
agh
cache_ttl_min: 86400 cache_ttl_max: 86400
В 08.09.2024 в 09:51, strannik сказал:Ткните пожалуйста, носом, где именно эти параметры выставляются. И я только из вашего сообщения узнал, что IP и диапазоны сетей тоже можно КВАСом заворачивать. Это тоже через kvas add <IP_в_CIDR_формате> или как-то иначе делается?
Заранее спасибо!
Если ipset типа hash:net, то да - туда можно ложить ip адреса. Вся маршрутизация крутится вокруг ipset.
-
1
-
-
13 минуты назад, Levon Osipov сказал:
Можете написать, как выставить эти TTL? И как вручную обновлять списки? Я обновляю через kvas test, но в версии 1.1.9 убрали test.
А зачем их вообще обновлять?
ipset - timeout XXXX dnsmasq - max-ttl=XXX
Обновление по спискам можно делать раз в сутки, если в списках есть ип диапазоны. Если только домены - обновление ipset вообще не требуется. Все делает dnsmasq.
-
1
-
-
15 минут назад, DPavel сказал:
Вопрос по производительности.
В списке кваса находится около 600 доменов, добавленных в чисто образовательных целях.
Каждые 5 минут Cron запускает обновлятор этих списков (/opt/etc/cron.5mins/ipset.kvas), который молотит в течении ~20 секунд на 75% CPU роутера (Ultra 1811). Подозреваю, что модели попроще будут грузить свой CPU посильнее.
Есть ли возможность оптимизировать этот процесс?
Обновлять списки не нужно. Нужно у них выставить TTL на сутки и в ДНС выставить maxTTL на сутки. Все профит. Обновление по спискам можно делать раз в сутки, если в списках есть ип диапазоны.
-
В 21.08.2024 в 13:24, Le ecureuil сказал:
Вобщем, проверяйте на следующей beta.
Думаю ошибка где-то здесь, нужно занулить три байта header-а. Мне кажется это подходящее место. Если пойдет прием, значит мы на верном пути. Сейчас прием по нулям.
static void wg_packet_consume_data_done(struct wg_peer *peer, struct sk_buff *skb, struct endpoint *endpoint) { ???????????? skb->dev = dev; /* We've already verified the Poly1305 auth tag, which means this packet * was not modified in transit. We can therefore tell the networking * stack that all checksums of every layer of encapsulation have already * been checked "by the hardware" and therefore is unnecessary to check * again in software. */ skb->ip_summed = CHECKSUM_UNNECESSARY;
func (b *Bind) NewReceiveFunc(fn conn.ReceiveFunc) conn.ReceiveFunc { return func(buf []byte) (n int, ep conn.Endpoint, err error) { n, ep, err = fn(buf) if err != nil || n < 4 { return } if buf[1] != b.reseved[0] || buf[2] != b.reseved[1] || buf[3] != b.reseved[2] { err = errors.New("bad reseved") return } buf[1] = 0 buf[2] = 0 buf[3] = 0 return } }
-
В 21.08.2024 в 13:24, Le ecureuil сказал:
Вобщем, проверяйте на следующей beta.
Не завелось. Пакеты одинаковые. Слева - keenetic (неуспешно), справа (проходящий трафик) те же настройки (успешно). Я вообще не понимаю, что происходит. Не приходит ни одного пакета обратно.
Трейс (WireShark) - keenetic 1.lkk, проходящий - 3.lkk
-
-
Скрипт обновления yggdrasil. Отказался от tor в пользу yggdrasil, в котором нашлись нужные мне ресурсы. Установлен на VPS и гоню его траффик через Wireguard нат. Обычный v6 траффик без нат.
Скрытый текст#!/bin/sh ygg_dir=/opt/sbin ygg_fn=yggdrasil function get_download_url { curl -kfsS https://api.github.com/repos/$1/$2/releases/latest 2>/dev/null | jq -r '.assets[] | select(.browser_download_url | endswith("-mipsel.deb")) | .browser_download_url' } URL=$(get_download_url yggdrasil-network yggdrasil-go) echo $URL curl -kfsSL $URL -o /tmp/$ygg_fn.deb if [ ! -z "$1" ]; then cp -f $ygg_dir/$ygg_fn $ygg_dir/$ygg_fn.1 fi ar p /tmp/$ygg_fn.deb data.tar.gz | tar -xzf - -C /tmp usr/bin/$ygg_fn rm -f /tmp/$ygg_fn.deb mv -f /tmp/usr/bin/$ygg_fn $ygg_dir/$ygg_fn chmod +x $ygg_dir/$ygg_fn ls -al $ygg_dir/$ygg_fn* /opt/etc/init.d/S71yggdrasil restart
Конфиг WG такой:
Скрытый текст[Interface] Address = 172.16.13.90/29, 2a00:3344:aabb::13:90/126 ListenPort = 993 PrivateKey = GFvE8HHQit+z6sFQHLqh3OvitGh6WArsOWe0wQaXzng= PostUp = iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE; ip -6 neigh add proxy 2a00:3344:aabb::13:91 dev ens3; ip6tables -t nat -A POSTROUTING -o ygg0 -j MASQUERADE; PostDown = iptables -t nat -D POSTROUTING -o ens3 -j MASQUERADE; ip -6 neigh del proxy 2a00:3344:aabb::13:91 dev ens3; ip6tables -t nat -D POSTROUTING -o ygg0 -j MASQUERADE; ### Client ZyWG [Peer] PublicKey = 5/99C9QMhWfPuyuyuiuiaxbp0J0lU= PresharedKey = g/9OxHyEo0yuiyuiyuiyiuuyOBd9qCBmI= AllowedIPs = 172.16.13.91/32, 2a00:3344:aabb::13:91/128
-
1 час назад, Le ecureuil сказал:
Ошибку invalid route format возвращает ядро, потому с первого взгляда неясно в чем дело. Однако у меня так работает:
ipv6 route 200::/7 Wireguard0 301:8a63:d5c1:f37c::97:91
Попробую на 4.3
-
Путаюсь добавить ipv6 маршрут так:
ipv6 route 200::/7 301:8a63:d5c1:f37c::97:91/128 Wireguard0 или ipv6 route 200::/7 Wireguard0 301:8a63:d5c1:f37c::97:91/128 или ipv6 route 200::/7 Wireguard0 301:8a63:d5c1:f37c::97:91 или ipv6 route 200::/7 301:8a63:d5c1:f37c::97:91 Wireguard0
получаю ошибку:
Для 3 Network::Ip6::RoutingTable error[4980739]: invalid route format. - все остальные Command::Base error[7405602]: argument parse error.
Для ipv4 все проходит без проблем, синтаксис совпадает
ipv6 route ({prefix} | default) (({interface} [{gateway}]) | {gateway}) [auto] [{metric}] [reject] ip route (({network} {mask}) | {host} | default) (({gateway} [{interface}]) | {interface}) [auto] [{metric}] [reject]
Что я делаю не так?
-
Поставил yggdrasil
Получаю кучу ошибок в логе
[E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: unable to resolve 'ygg0' '' '200::/7' '::'. [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: "Queue::ACONCUZSXYYUZGRV::http/rci" (16350) backtrace: [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Network::Ip6::RoutingTable::GetRoutes_(AutoPVector<Network::Ip6::RoutingTable::Entry, StdDeleter>&, LockedPtr<Network::Interface::Ip6 const> const&, Network::Ip6::CBlock const&, unsigned int, bool, Log::VerboseT) const+0xfc [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Network::Ip6::RoutingTable::GetRoutes(AutoPVector<Network::Ip6::RoutingTable::Entry, StdDeleter>&, CString const&, Network::Ip6::CBlock const&, unsigned int, Log::VerboseT) const+0xb8 [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Command::(anonymous namespace)::ShowIpv6Route::Execute(Command::Request const&, Command::Response&) const+0x118 [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Core::Configurator::Execute(Command::Base const*, Command::Request const&, Command::Response&)+0x214 [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Core::Configurator::Serve(Command::Request const&, Command::Response&)+0x59c [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostObject_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Object const*, Json::Object*)+0xb68 [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostValue_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Value const*, Json::Object*)+0x184 [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostObject_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Object const*, Json::Object*)+0x1158 [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostValue_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Value const*, Json::Object*)+0x184 [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostObject_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Object const*, Json::Object*)+0x1158 [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostValue_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Value const*, Json::Object*)+0x184 [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostObject_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Object const*, Json::Object*)+0x1158 [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostArray_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Array const*, Json::Array*)+0x1c0 [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostValue_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Value const*, Json::Object*)+0x5c8 [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::JsonPost(Core::Configurator&, Core::Scgi::Request const&, Json::Document const&, Core::Scgi::Trace&, Json::Document&, bool*)+0x1ec [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Core::Scgi::ThreadPool::Task_::ProcessJsonRequest_(Core::Configurator&, Core::Scgi::Request const&, Core::Scgi::Trace&, Array<char>&, Io::OStream&)+0x54c [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Core::Scgi::ThreadPool::Task_::Run()+0x208 [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Task::Thread::Run_()+0x208 [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Task::Thread::Run()+0x38 [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: Thread::StartRoutine_(void*)+0x420 [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: start()+0x98 [E] Aug 28 15:16:12 ndm: Network::Ip6::RoutingTable: __clone()+0x6c [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: unable to resolve 'ygg0' '' '200::/7' '::'. [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: "Queue::ACONCUZSXYYUZGRV::http/rci" (16350) backtrace: [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Network::Ip6::RoutingTable::GetRoutes_(AutoPVector<Network::Ip6::RoutingTable::Entry, StdDeleter>&, LockedPtr<Network::Interface::Ip6 const> const&, Network::Ip6::CBlock const&, unsigned int, bool, Log::VerboseT) const+0xfc [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Network::Ip6::RoutingTable::GetRoutes(AutoPVector<Network::Ip6::RoutingTable::Entry, StdDeleter>&, CString const&, Network::Ip6::CBlock const&, unsigned int, Log::VerboseT) const+0xb8 [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Command::(anonymous namespace)::ShowIpv6Route::Execute(Command::Request const&, Command::Response&) const+0x118 [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Core::Configurator::Execute(Command::Base const*, Command::Request const&, Command::Response&)+0x214 [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Core::Configurator::Serve(Command::Request const&, Command::Response&)+0x59c [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostObject_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Object const*, Json::Object*)+0xb68 [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostValue_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Value const*, Json::Object*)+0x184 [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostObject_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Object const*, Json::Object*)+0x1158 [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostValue_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Value const*, Json::Object*)+0x184 [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostObject_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Object const*, Json::Object*)+0x1158 [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostValue_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Value const*, Json::Object*)+0x184 [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostObject_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Object const*, Json::Object*)+0x1158 [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostArray_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Array const*, Json::Array*)+0x1c0 [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::(anonymous namespace)::JsonPostValue_(Core::Configurator&, Command::Request const&, Core::Scgi::Trace&, Json::Value const*, Json::Object*)+0x5c8 [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Core::Scgi::Tools::JsonPost(Core::Configurator&, Core::Scgi::Request const&, Json::Document const&, Core::Scgi::Trace&, Json::Document&, bool*)+0x1ec [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Core::Scgi::ThreadPool::Task_::ProcessJsonRequest_(Core::Configurator&, Core::Scgi::Request const&, Core::Scgi::Trace&, Array<char>&, Io::OStream&)+0x54c [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Core::Scgi::ThreadPool::Task_::Run()+0x208 [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Task::Thread::Run_()+0x208 [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Task::Thread::Run()+0x38 [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: Thread::StartRoutine_(void*)+0x420 [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: start()+0x98 [E] Aug 28 15:16:13 ndm: Network::Ip6::RoutingTable: __clone()+0x6c
-
В 02.06.2024 в 13:11, Le ecureuil сказал:
При чем тут maradns и ipset? Добавлять адреса это 1% от сложности дела, основное я описал выше - покажите-ка мне как вы юзеру объясните, почему его ютуб не показывает, хотя он ввел youtube.com в политику.
А можно хотя бы этот 1% реализовать, что бы избавиться от dnsmasq или adguardhome? И пользоваться штатным dns.
Делаем новую настройку ipset, например:
ipset ipset1 ya.ru goole.ru !
Запросы к dns-серверу, которые идут на домены и поддомены настройки ipset1 резолвятся в ipset1.
-
1
-
-
Добрый день!
Замечено, что правила ndm\netfilter.d для ipv6 и ipv4 обрабатываются в разном порядке.
Например, есть два скрипта 10m-vpn.sh 10m-ray.sh, которые симметрично задают правила для v6 и v4. В итоге получаю правила в таком порядке:
Скрытый текст~ # iptables -t mangle -nvL PREROUTING && ip6tables -t mangle -nvL PREROUTING Chain PREROUTING (policy ACCEPT 1471 packets, 246K bytes) pkts bytes target prot opt in out source destination 0 0 CONNMARK all -- br0 * 0.0.0.0/0 0.0.0.0/0 match-set redir4-vpn dst ! match-set localnet4 dst ctstate NEW CONNMARK set 0xffffaaa 0 0 CONNMARK all -- * * 0.0.0.0/0 0.0.0.0/0 connmark match 0xffffaaa CONNMARK restore 0 0 TPROXY tcp -- br0 * 0.0.0.0/0 0.0.0.0/0 multiport dports 80,443 match-set redir4-ssp dst ! match-set localnet4 dst mark match ! 0xea TPROXY redirect 127.0.0.1:9172 mark 0xe9/0xe9 0 0 TPROXY udp -- br0 * 0.0.0.0/0 0.0.0.0/0 multiport dports 80,443 match-set redir4-ssp dst ! match-set localnet4 dst mark match ! 0xea TPROXY redirect 127.0.0.1:9172 mark 0xe9/0xe9 Chain PREROUTING (policy ACCEPT 41631 packets, 10M bytes) 0 0 TPROXY tcp br0 * ::/0 ::/0 multiport dports 80,443 match-set redir6-ssp dst ! match-set localnet6 dst mark match ! 0xea TPROXY redirect ::1:9172 mark 0xe9/0xe9 0 0 TPROXY udp br0 * ::/0 ::/0 multiport dports 80,443 match-set redir6-ssp dst ! match-set localnet6 dst mark match ! 0xea TPROXY redirect ::1:9172 mark 0xe9/0xe9 0 0 CONNMARK all br0 * ::/0 ::/0 match-set redir6-vpn dst ! match-set localnet6 dst ctstate NEW CONNMARK set 0xffffaaa 0 0 CONNMARK all * * ::/0 ::/0 connmark match 0xffffaaa CONNMARK restore
Т.е. для 4 версии порядок вызова правил - 10m-vpn.sh 10m-ray.sh, а для 6й - 10m-ray.sh 10m-vpn.sh
Посмотрите, пожалуйста.
Актуально и для более ранних версий.
-
@Le ecureuil Как можно идентифицировать пира, что бы при этом не менялось поле коммент (если его не отправлять)?
http://localhost:79/rci/interface/Wireguard2 [ { "wireguard": { "peer": { "key": "bmXOC+F1FxEMF9dyiK2H5/1SUtzH0JuVo51h2wPfgyo=", "client-id": { "send": 123 } } } } ]
Может есть вариант, типа такого?
http://localhost:79/rci/interface/Wireguard2 [ { "wireguard": { "peer": { "id": "0", "client-id": { "send": 123 } } } } ]
RCI Задать конфигурацию Wireguard
в Обмен опытом
Опубликовано
4.2b3 не исправлено