Перейти к содержанию

avn

Участники форума
  • Постов

    928
  • Зарегистрирован

  • Посещение

  • Победитель дней

    8

Сообщения, опубликованные avn

  1. 15 минут назад, slydiman сказал:

    Шутка смешная. Если бы хоть что-то работало, этой темы бы не было.
    Приведите пример реально рабочего конфига пжлста.

    Посмотрите в конфиге у вас iov6 forwarding включен?

  2. 12 минут назад, slydiman сказал:

    Шутка смешная. Если бы хоть что-то работало, этой темы бы не было.
    Приведите пример реально рабочего конфига пжлста.

    Как по вашему Warp cf работает? Без всяких шуток. Смотрите свои настройки 

  3. 2 минуты назад, slydiman сказал:

    Стало ясно что на кинетике публичные IPv6 адреса WG сервера не могут входить в диапазон WAN. 
    Также стало ясно что в Кинетике нет nat6, по крайней мере в WG.

    Упрощаем задачу - как получить доступ в интернет по IPv6 клиентам Кинетика на котором WG клиент?

    Итак, на Ubuntu с IPv6 форвардингом поднят WG сервер, конфиг такой

    [Interface]
    Address = 192.168.25.1/24
    Address = fd00:0:25::1/48
    ListenPort = 1194
    PrivateKey = xxx
    PostUp = iptables -A FORWARD -i enp2s0 -o wg0 -j ACCEPT; iptables -A FORWARD -i wg2 -j ACCEPT; iptables -t nat -A POSTROUTING -o enp2s0 -j MASQUERADE
    PostUp = ip6tables -A FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -A POSTROUTING -o enp2s0 -j MASQUERADE
    PostDown = iptables -D FORWARD -i enp2s0 -o wg0 -j ACCEPT; iptables -D FORWARD -i wg2 -j ACCEPT; iptables -t nat -D POSTROUTING -o enp2s0 -j MASQUERADE
    PostDown = ip6tables -D FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -D POSTROUTING -o enp2s0 -j MASQUERADE
    
    # smartphone
    [Peer]
    PublicKey = xxx
    PresharedKey = xxx
    AllowedIPs = 192.168.25.2/32
    AllowedIPs = fd00:0:25:200::/56
    
    # keenetic
    [Peer]
    PublicKey = xxx
    PresharedKey = xxx
    AllowedIPs = 192.168.25.3/32
    AllowedIPs = fd00:0:25:300::/56

    Теперь на смартфоне поднимаем WG с конфигом

    [Interface]
    Address = 192.168.25.2/32
    Address = fd00:0:25:200::1/56
    PrivateKey = xxx
    DNS = 8.8.8.8, 2001:4860:4860:8888
    
    [Peer]
    PublicKey = xxx
    PresharedKey = xxx
    Endpoint = xxx.xxx.xxx.xxx:1194
    AllowedIPs = 0.0.0.0/1, 128.0.0.0/1, ::/1, 8000::/1

    И смартфон выходит в интернет по IPv6 и проходит все IPv6 тесты.
    Теперь на Кинетике настраиваем WG, ставим галочку "использовать для выхода в интернет". Параметры:
    IPv6 адрес fd00:0:25:300::1/56
    IPv6 префикс fd00:0:25:300::/64
    и ... клиенты Кинетика ходят в интернет через Ubuntu сервер, но только по IPv4.
    В настройках WG Кинетика пробовал IPv6 префикс 48, 56, 60 - без разницы.

    ЧЯДНТ?

    Достаточно только адреса с /128. Префикс не нужен. Префикс задел на будущее, либо полуавтоматическое управление.

    Проблем нету как с НАТ так и без него. Работают  оба варианта.

  4. 10 минут назад, slydiman сказал:

    WAN роутера 2001:470:xxxx:00c0::/58 и 2001:470:xxxx:00d0::1/60 туда входит.
    По сегментам имеем
    Home 2001:470:xxxx:00c0
    Guest 2001:470:xxxx:00c1
    WireGuard 2001:470:xxxx:00d0

    Конфигурация указана выше. Ок, повторяю (без ключей, DNS и endpoint):
    Сервер WireGuard на роутере:
    [Interface]
    Address = 192.168.3.1/24, 2001:470:xxxx:d0::1/60

    [Peer]
    AllowedIPs = 192.168.3.2/32, 2001:470:xxxx:d0::2/128

    Клиент WireGuard:
    [Interface]
    Address = 192.168.3.2/24, 2001:470:xxxx:d0::2/60

    [Peer]
    AllowedIPs = 0.0.0.0/1, 128.0.0.0/1, ::/1, 8000::/1
     

    2001:470:xxxx:00c1 не входит в 2001:470:xxxx:d0::1/60. У пира Я бы указал одну маску 2000::/3

    Нужен маршрут у пира на подсесть 2001:470:xxxx:c0::/60 через интерфейс wg

  5. 1 час назад, Lost сказал:

    Добрый день!

    Есть задача сделать так, что б определенные заданные домены, со всеми их поддоменами обслуживались определенным DNS (DoH/DoT). Ну а всё остальное уходило куда-нибудь в дефолтные DNS.
    Какой максимально простой способ реализации этой задачи есть? 
    Я смотрю в сторону AdGuardHome https://github.com/Corvus-Malus/AdGuardHome-Keenetic 
    Но может быть есть варианты проще? 
    Тут смущает, что нужно отключать дефолтную реализацию DNS у самого Кинетика (opkg dns-override)

    Наверное это не было бы проблемой само по себе, но нужно, что б осталась рабочей функция из 5й прошивки - "Маршруты DNS". Она случайно не перестанет работать из-за этого?

    Если вы поставите adgh, то штатная маршрутизация будет работать ещё лучше. Поэтому-то уходит проблема одновременной отдачи ИП клиенту и добавления его в ipset. Но удобство заполнения списков уже не будет.

  6. 18 минут назад, slydiman сказал:

    Уточню вопросы

    1. Главное - как WireGuard клиентов направить в интернет по IPv6?
    Речь про роутер Кинетик с WireGuard сервером.
    Пока в результате экспериментов у WG клиента есть IPv6, но нет default gateway, не смотря на ::/1, 8000::/1 в AllowedIPs.

    2. Допустим имеем префикс /48 от провайдера или 6in4 брокера...

    2.1. Какие IPv6 и префиксы прописать в настройках WireGuard (сервера и клиента), когда WG клиент на конечном устройстве (смартфон или ноут)?

    2.2. Какие IPv6 и префиксы прописать в настройках WireGuard (сервера и клиента), когда WG клиент - другой роутер Кинетик и там ещё нужно раздать IPv6 клиентским устройствам?

    У вас диапазон /48. Выберите любую часть этой подсети для Wireguard-Клиентов. И раздавайте аналогично ipv4. Те. для ipv4/32 ipv6/128.

    Аналогично и для 2-го роутера, выбирайте другую подсеть из /48. Далее только разбираться с маршрутизацией. Все реально, надо только понять где не работает (firewall, ndp, route).

    Но самый простой способ, раздать WG  клиентам по одному ipv6. В сети, где нет нативного ipv6 раздать ULA Prefix. И думаю все заработает без танцев с бубном. Но ipv6 будет работать через nat.

     

  7. 5 часов назад, zubzer0 сказал:

    по поводу второго пункта:

    почему нужно сохранять старые записи DNS на маршрутизации, пример.
     
    - в роутере прописаны 2 и более сервера днс. 8.8.8.8 и 1.1.1.1
    - к роутеру подключены 2 и более клиента.

    1. первый клиент делает днс-запрос для ютуба
    1.1 роутер получает IP от 8.8.8.8 
    1.2 первый клиент получает ip и маршрутизацию, время ttl допустим 10минут.

    2. спустя минуту второй клиент делает запрос на тот-же ютуб
    2.1 роутер получает уже другие IP от 1.1.1.1 
    2.2 второй клиент получает другие IP и обновленную маршрутизацию

    3.1 первый клиент теряет правильную маршрутизацию.
    3.2 первый клиент не видя коннекта, делает запрос к роутеру.
    3.3 роутер снова получает IP от 8.8.8.8 и обновляет маршрутизацию

    4.1 второй клиент теряет маршрутизацию.
    4.2 ...

    и так по кругу...

    ситуацию изменило бы
    1. кэширование: второй клиент получил бы те-же IP, что и первый
    2. сохранение записи: если возникает расхождение, первый клиент остается на своей "старой" маршрутизации.

    p.s. я крайне надеюсь, что разработчики "FQDN / DNS-based routes" прочитают это.
    в этом и кроется проблема с периодическим хождением трафика не в ту дверь интерфейс.
    (особенно часто, это случается с ютубом и пр. крупными cdn-порталами)

     

      Показать контент

    как я вижу временное/костыльное решение:


    пк - dnsmasq - KeenDNS - AdGuardHome - Internet
    или
    пк - dnsmasq - KeenDNS - Internet

    dnsmasq:
    cache-size=1000
    min-cache-ttl=600
    max-cache-ttl=600
    max-ttl=60

    AdGuardHome:
    оптимистическое кеширование обязательно откл.
    cache_ttl_min: 600
    cache_ttl_max: 3600

    в итоге, каждые 60сек происходит запрос от клиентов к dnsmasq для обновления dns записей.
    dnsmaq обновляет свои кэши с периодом 10мин от KeenDNS
    KeenDNS берет из Интернета или кэша AdGuardHome (с оверхедом +100-150мс)
    AdGuardHome обновляет свои кэши с периодом 10-60мин.

    когда второй клиент сделает запрос, он либо получит из кэша dnsmasq, либо чуть дольше (+150-200мс) из кэша AdGuardHome (или внешнего днс). И в обоих вариантах IP уже будет в записи маршрутизации.

    в случае если от AdGuardHome (или внешнего днс) придут новые IP после запроса второго клиента, то у первого клиента будет 60сек(или менее) чтобы обновить свои записи и продолжить новую "DNS-based routes" маршрутизацию.

    Эти 60сек неправильной маршрутизации можно избежать если-бы KeenDNS умел временно сохранять старый маршрут.
    Если убрать dnsmasq с подменой TTL, то клиенты могут дОлго просидеть на уже не маршрутизируемых IP, до тех пор пока не обновят свои записи. dnsmaq в данном случае "решает" две задачи - держит клиентов в актуальности и дает быстрый ответ(из 10мин кэша)

    за счет кэша AdGuardHome - минимизируется вариант события частой смены IP на FQDN

     

    Открою секрет, старые записи на маршрутизацию никуда не исчезают, они хранятся в ipset.

    • Лайк 1
  8. 23 минуты назад, john ibsuser сказал:

    Спасибо, я видел что его можно запустить. Однако в текущей реализации это userspace и даже без opkgtun, который поддавался бы управлению через web UI.

    Забудьте, 5мб в прошивку никто не потянет. Только хардкор, только с++

    • Лайк 1
  9. Можно еще проверить вот что. Интерфейс главный, префикс раздали. Так же 

            allow-ips 2000:: 3

    На клиенте посмотреть ipv6 адрес. на VPS:

    ip -6 neigh add proxy <<ipv6 адрес клиента>> dev <<интерфейс wan ens3>>.

    Так же ip6tables -I FORWARD -i wg+ -j ACCEPT

    net.ipv6.conf.all.forwarding=1
    net.ipv6.conf.all.proxy_ndp=1

     

    Если проверить ключевые моменты, завести можно. Но штатно из коробки работать не будет. Тут еще проблема возможно в VPS будет (из-за ndp). В общем префикс лучше от провайдера получать.

  10. 2 минуты назад, Alex2024 сказал:

    Добрый день! 
    Есть два роутера, оба NC-1812(буду называть его СЕРВЕРОМ). Сети 192.168.1.0/24 и 192.168.3.0/24 (буду называть его КЛИЕНТОМ)  работали в связке через тоннель WG между собой. Настройки не менялись, ничего не трогал, обновлений не делал. Соответственно настроено через инструкцию, проброшена маршрутизация, оба ходили в ресурсы сети друг друга спокойно. Межсетевой экран правила так же разрешены. Однако с вечера вчерашнего дня, роутер с сетью 192.168.1.0/24 перестал видеть в сети другого роутера все ресурсы (а там были важные типо NAS и т.п) кроме самого роутера= 192.168.3.1, в свою очередь роутер с сетью 192.168.3.0/24 видит все ресурсы в сети 192.168.1.0/24. 
    Не могу понять в чем дело, маршрутизацию как и говорил проверил, правила экрана проверил, даже порт поменял в WG подключении на всякий случай... Сегодня полностью пересоздал подключения WG на обоих роутерах, теперь даже 192.168.3.1 не пингуется (ранее через вкладку диагностика пинг именно к нему проходил, а к остальным клиентам нет.) Как то была такая проблема, писал в поддержку, дали команду, после которой вроде бы поднялось все,: interface Wireguard1 wireguard peer 8N57gbqS6aydLadTqt/Up44paz0ZFP9BG**********= connect (Ну соответственно посмотрел номер интерфейса WG, он так же оказался-1, далее идет я так понимаю ключ пира, вот взял его с роутера который 3.1 сеть, подставил и толку не было так же... )
    system configuration save.   При том, хочу отметить, что на роутере который является клиентом (видимо в нем проблема и есть, так как другой работает по WG тоннелям с многими другими роутерами прекрасно), поднял в разделе ПРИЛОЖЕНИЯ WG сервер, и к нему цепанулся роутером который СЕРВЕР-в маршрутизации поменял интерфейс для сети 192.168.3.0/24.... в результате проходит коннеккт, тоесть проблема толи в сетевом экране, толи в каких то пирах, не могу понять как починить. 

    security-level какой на сервере и клиенте?

  11. 1 час назад, Dimenshn сказал:

    Вы серьёзно решили меряться умением настроить IPv6? 🙃

    Я вам про Фому, а вы мне про Ерёму.

    Всю дорогу кинетик на все предложения фич всегда отвечал, что встраивать в UI будет только то, что будет способна настроить а-ля домохозяйка-эникейщик. Чтобы саппорт не заваливали вопросами "почему не работает?". Остальное только через CLI для энтузиастов.

    И вот нам выкатили долгожданную и очень полезную фичу, добавив её на UI. Я её настроил и ожидаю некое поведение, а оно не происходит. И нигде об этом ничего не написано. Куда я пойду? Мучать людей в тг группу, на форум или саппорт, тратить их и своё время на чтение self-test и скриншотов, пока мы все не разберёмся, что у меня оказывается есть ещё и IPv6 и поэтому функционал не работает и в принципе работать оказывается не должен, если у вас нет доступа к серверу для его настройки.

    А потом кто-нибудь вроде вас начнёт классическое "RTFM, не может он IPv6 через нат себе поднять, ха-ха".

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

    "It just works" Todd Howard.

     

    Прошивка теперь только дуал стек. Другого не дано. И это правильно, весь мир стремится к dual stack. То, что вы хотите - это прошлое. 

     

    Те, кто хотел сидели с этой фичей ещё с прошивки 3.x. Так же и wg с ipv6 работал уже на версии 3.6, когда добавили ipv6 rule в ядро.

    • Лайк 1
  12. 21 минуту назад, Dimenshn сказал:

    "Настраивайте для туннеля" легко сказать. Самый популярный форк WireGuard в принципе не рассчитан на IPv6. Ещё и сервер надо найти с нормальной выдачей IPv6 подсети.

    Гораздо логичнее кинетику сделать отключение выдачи AAAA записей, если маршрутизация по DNS направлена на IPv4-only интерфейс. И наоборот с A записями, если интерфейс IPv6-only.

    Тогда бы у людей этот функционал просто работал без дополнительной головной боли. А сейчас функционал не имеет смысла для части пользователей.

    Зачем Вам подсеть из wg? Возьмите ipv6 у провайдера. На wg используйте свою произвольную, 2001:db8::/64. Делов-то. 

    Вообще ни разу не видел реализации wg без поддержки ipv6.

    [Interface]
    Address = 172.16.254.90/28, 2001:db8:beaf:abc::90/64

    ### Client 1
    [Peer]
    AllowedIPs = 172.16.254.89/32, 2001:db8:beaf:abc::89/128

    ### Client 2
    [Peer]
    AllowedIPs = 172.16.254.91/32, 2001:db8:beaf:abc::91/128

    ### Client 3
    [Peer]
    AllowedIPs = 172.16.254.92/32, 2001:db8:beaf:abc::92/128

    ### Client 4
    [Peer]
    AllowedIPs = 172.16.254.93/32, 2001:db8:beaf:abc::93/128

    ### Client 5
    [Peer]
    AllowedIPs = 172.16.254.94/32, 2001:db8:beaf:abc::94/128

    И на сервере nat включить для ipv6.

    -A POSTROUTING -o ens3 -j MASQUERADE

     

    Есть другие варианты без nat, но это явно не Ваш уровень.

     

  13. 7 часов назад, Dimenshn сказал:

    Печально, что до сих пор эта маршрутизация не работает, когда у сайта есть IPv6 и IPv4 адреса. Сайт просто идёт мимо IPv4 туннеля по IPv6 без какой-либо маршрутизации. Хоть вовсе отключай IPv6.

    Все правильно делает. Используете ipv6, настраивайте его и для туннеля.

  14. 19 часов назад, pppppppo_98 сказал:

    что то в вашем скриптре я таки не нашел как передавать параметры модулю... 

     

    есть такая строка do_nfqws $1 $DNUM_WG4ALL "$opt" но как параметры передаются модулю загадка... 

     

    ЗЫ

     

    Я посмотрел на x86-64 modinfo wireguard ; modinfo qmneziawg ... у первого вообще нет параметров, у второго какие-то 3 штуки есть, но как связаны с параиетрами awg  - загадка. Не я понимаю что наверное У кинетика свой патч для ваергуарда, но как конфинурировать  модуль я не увидел 

    Что за народ пошел, в трех строках разобраться не может

     

    SendWG.tar

    Ключевые моменты:

     

    - eth3 - интерфейс выхода в интернет для моего Wireguard2

    - если используете route-id (client-id)  - правила будут другие 0x01HEX(clientid) (например, 0x01abcdef)

    - возможно у вас другие порты $PORTS сервера WG

    - asc - должен быть выключен, можно и не выключать, но представляться протоколом нужно в первом пакете. Поэтому лучше выключить.


     

×
×
  • Создать...

Важная информация

На этом сайте используются файлы cookie. Нажимая "Я принимаю" или продолжая просмотр сайта, вы разрешаете их использование: Политика конфиденциальности.