-
Постов
652 -
Зарегистрирован
-
Посещение
-
Победитель дней
7
Тип контента
Профили
Форумы
Галерея
Загрузки
Блоги
События
Весь контент avn
-
Обязательно
- 1 983 ответа
-
- 1
-
-
На githab полно тем.
-
Возьми sing-box, он поднимает интерфейс tun.
-
KN-1011 4.2 Beta (2,3) утечки и ребутов нету и не было. hwnat=1,swnat=1
-
Штатно нигде. 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 Если ipset типа hash:net, то да - туда можно ложить ip адреса. Вся маршрутизация крутится вокруг ipset.
- 1 983 ответа
-
- 1
-
-
А зачем их вообще обновлять? ipset - timeout XXXX dnsmasq - max-ttl=XXX Обновление по спискам можно делать раз в сутки, если в списках есть ип диапазоны. Если только домены - обновление ipset вообще не требуется. Все делает dnsmasq.
- 1 983 ответа
-
- 1
-
-
Обновлять списки не нужно. Нужно у них выставить TTL на сутки и в ДНС выставить maxTTL на сутки. Все профит. Обновление по спискам можно делать раз в сутки, если в списках есть ип диапазоны.
- 1 983 ответа
-
Думаю ошибка где-то здесь, нужно занулить три байта 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 } }
-
Не завелось. Пакеты одинаковые. Слева - keenetic (неуспешно), справа (проходящий трафик) те же настройки (успешно). Я вообще не понимаю, что происходит. Не приходит ни одного пакета обратно. Трейс (WireShark) - keenetic 1.lkk, проходящий - 3.lkk 1.lkk 3.lkk
-
-
Скрипт обновления yggdrasil. Отказался от tor в пользу yggdrasil, в котором нашлись нужные мне ресурсы. Установлен на VPS и гоню его траффик через Wireguard нат. Обычный v6 траффик без нат. Конфиг WG такой:
-
Попробую на 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
-
А можно хотя бы этот 1% реализовать, что бы избавиться от dnsmasq или adguardhome? И пользоваться штатным dns. Делаем новую настройку ipset, например: ipset ipset1 ya.ru goole.ru ! Запросы к dns-серверу, которые идут на домены и поддомены настройки ipset1 резолвятся в ipset1.
-
Добрый день! Замечено, что правила ndm\netfilter.d для ipv6 и ipv4 обрабатываются в разном порядке. Например, есть два скрипта 10m-vpn.sh 10m-ray.sh, которые симметрично задают правила для v6 и v4. В итоге получаю правила в таком порядке: Т.е. для 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 } } } } ]
-
Мне достаточно видеть статус точки, как это было на версии <4.2
-
Это решение лежит на поверхности. Но мне кажется это неправильно. Будет исправлено в следующих версиях? Или может можно по другому идентифицировать пира?
-
Перенести на ramfs не с целью экономии места, а с целью значительного сокращения записи на flash. Я делаю скрипт запуска /opt/etc/init.d/S01setup, в котором создаю нужную структуру каталогов для запуска приложений:
-
На 4.1 точку было видно. Остаётся только смириться?
-
Нету. Только /opt/tmp /opt/var надо перенести в ramfs. Иначе роутеру придет стабилизец.
-
Поддержка подключения по IPv6 к серверу Wireguard
avn ответил Vladislav Kravchenko вопрос в Развитие
Через web-интерфейс пока нельзя, через cli настраивается и работает без проблем. Полная поддержка iov6 уже есть из коробки.