Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Новинка
Распродажа
Новости
Доставка
Оплата
Загрузки
  • Прошивки
    • WinBox
    • RouterOS
    • Мобильные приложения MikroTik
    • Архив
  • RouterOS
  • Мобильные приложения MikroTik
  • Архив
Форум
Настройка
    info@mikrotik.moscow
    +7 495 320-55-52
    Заказать звонок
    Mikrotik.moscow
    Каталог
    • Акции
      Акции
    • Маршрутизаторы
      Маршрутизаторы
    • Коммутаторы
      Коммутаторы
    • Радиомосты и уличные точки доступа
      Радиомосты и уличные точки доступа
    • Wi-Fi для дома и офиса
      Wi-Fi для дома и офиса
    • LTE/5G
      LTE/5G
    • Powerline адаптеры
      Powerline адаптеры
    • IoT устройства
      IoT устройства
    • Оборудование 60 ГГц
      Оборудование 60 ГГц
    • Материнские платы RouterBOARD
      Материнские платы RouterBOARD
    • Корпуса
      Корпуса
    • Интерфейсы
      Интерфейсы
    • SFP/QSFP трансиверы
      SFP/QSFP трансиверы
    • Аксессуары
      Аксессуары
    • Антенны
      Антенны
    • Архив
      Архив
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Скачать WinBox Скачать Прошивки Форум > RouterOS Форум > SwOS Форум > Железо
    Mikrotik.moscow
    Каталог
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Mikrotik.moscow
    Телефоны
    +7 495 320-55-52
    Заказать звонок
    0
    0
    0
    Mikrotik.moscow
    • +7 495 320-55-52
      • Назад
      • Телефоны
      • +7 495 320-55-52
      • Заказать звонок
    • info@mikrotik.moscow
    • г. Москва, ул. Бакунинская, 84
    • Пн-Пт: 09-00 до 18-00
      Сб-Вс: выходной


    • Кабинет
    • 0 Сравнение
    • 0 Избранное
    • 0 Корзина
    Главная
    Форум
    RouterOS
    Полезное обучение WireGuard [Linux]

    Полезное обучение WireGuard [Linux]

    Форумы: RouterOS, Аппаратное обеспечение, SwOS, Обратная связь, Объявления, Сторонние инструменты
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    Полезное обучение WireGuard [Linux], RouterOS
     
    mozerd
    Guest
    #1
    0
    03.03.2024 13:08:00
    ЕЩЁ ОДИН САЙТ ДЛЯ СИСТЕМНЫХ АДМИНИСТРАТОРОВ Основы маршрутизации wireguard

    Введение  
    Теперь, когда мы научились настраивать wireguard на разных операционных системах, давайте сделаем паузу и разберёмся, как работа wireguard влияет на вашу таблицу маршрутизации.

    Основы маршрутизации wireguard  
    Самое важное понять: вы не настраиваете маршруты через wireguard напрямую — маршруты задаёт параметр AllowedIPs для каждого пиринга! Это влечёт за собой несколько последствий:  
    - Эти маршруты всегда присутствуют в таблице маршрутизации, даже если пиринг недоступен.  
    - Если вы разрешаете трафик из диапазона IP через wireguard, то весь трафик к этому диапазону тоже пойдёт через wireguard.  
    Это обычно вполне логично и удобно, но может создавать неудобства, если вы хотите:  
    - перенаправить весь интернет-трафик через wireguard;  
    - обеспечить резервирование доступа к удалённому хосту через несколько пирингов wireguard;  
    - маршрутизировать весь трафик, направленный в интернет.

    Самая простая схема  
    Рассмотрим два хоста и две сети на схеме:  
    https://www.adyxax.org/static/wireguard-routing-1.drawio.svg

    Простая схема  
    Первая сеть — физическая, соединяет eth0 интерфейсы двух хостов с подсетью 192.168.1.0/24. Вторая сеть — виртуальная, соединяет интерфейсы wireguard wg0 на двух хостах с подсетью 10.1.2.0/24.

    Первый хост — Dalinar, с физическим интерфейсом eth0 и IP-адресом 192.168.1.10/24. Настроим wireguard с IP 10.1.2.1/24, приватным ключом kIrQqJA1kEX56J9IbF8crSZOEZQLIAywjyoOqmjzjHU= и публичным ключом zfxxxWIMFYbEoX55mXO0gMuHk26iybehNR9tv3ZwJSg=.  

    Второй хост — Kaladin, с физическим интерфейсом eth0 и IP 192.168.1.20/24. Настроим wireguard с IP 10.1.2.2/24, приватным ключом SIg6cOoTyJRGIYSZ9ACRryL182yufKAtTLHK/Chb+lo= и публичным ключом BN89Ckhy4TEHjy37zz/Mvi6cOksnKzHHrnHXx5YkMlg=.

    Конфигурация wireguard

    Конфигурация Dalinar выглядит так:  
    [Interface]
    PrivateKey = kIrQqJA1kEX56J9IbF8crSZOEZQLIAywjyoOqmjzjHU=  
    ListenPort = 342  
    Address = 10.1.2.1/32  
     
    [Peer]
    PublicKey = BN89Ckhy4TEHjy37zz/Mvi6cOksnKzHHrnHXx5YkMlg=  
    Endpoint = 192.168.1.20:342  
    AllowedIPs = 10.1.2.2/32

    Конфигурация Kaladin выглядит так:  
    [Interface]
    PrivateKey = SIg6cOoTyJRGIYSZ9ACRryL182yufKAtTLHK/Chb+lo=  
    ListenPort = 342  
    Address = 10.1.2.2/32  
     
    [Peer]
    PublicKey = zfxxxWIMFYbEoX55mXO0gMuHk26iybehNR9tv3ZwJSg=  
    Endpoint = 192.168.1.10:342  
    AllowedIPs = 10.1.2.1/32

    Важные моменты  
    Обратите внимание на маски подсети в Address и AllowedIPs — нигде нет /24! Я сделал так потому что:  
    - wireguard это не требует;  
    - было бы запутанно с несколькими пирингами;  
    - лучше держать таблицу маршрутизации максимально чистой.  

    Можно было бы использовать маску /24 для Address — это бы работало и выглядело привычно, так как обычно сетевые устройства делают. Но я не использую /24, чтобы не создавать маршрут к интерфейсу wg0 с маской /24 без следующего перехода. Он будет нужен, когда мы в следующей статье добавим удалённый хост в конфигурацию.

    Для AllowedIPs можно было бы поставить /24, но это сработало бы только в этом конкретном случае. Если добавить несколько пирингов — конфигурация сломается.

    Главный вывод: в отличие от других VPN или традиционного сетевого администрирования, где мы привыкли, что хосты логически принадлежат одной сети, например 10.1.2.0/24, это совершенно не обязательное условие для wireguard. Можно использовать 10.1.2.1 для wg0 Dalinar и 172.16.0.1 для wg0 Kaladin — при этом всё будет работать точно так же, разница будет только в IP.

    Пусть это усвоится.

    Таблицы маршрутизации  
    С этой настройкой, если Dalinar работает на Linux, его таблица маршрутизации (ip -4 r) будет выглядеть так:  
    10.1.2.2 dev wg0 scope link  
    192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.10 metric 600  

    Таблица Kaladin будет очень похожей:  
    10.1.2.1 dev wg0 scope link  
    192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.20 metric 600

    Wireguard routing part two
     
     
     
    DarkNate
    Guest
    #2
    0
    18.03.2024 18:50:00
    Нет. Протокол буквально является одноранговым, это не серверно-клиентский протокол, как OpenVPN. Это примерно так же глупо, как утверждать, что у OSPF есть сервер и клиент. Люди так зациклены на модели сервер/клиент через NAT, что забыли, что на самом деле значит одноранговая сеть.
     
     
     
    anav
    Guest
    #3
    0
    18.03.2024 18:51:00
    Ларса, тебе лучше завязать с этими волшебными грибами. Следующим делом ты заявишь, что носишь крест, жуешь чеснок и часами стоишь перед зеркалом.
     
     
     
    Larsa
    Guest
    #4
    0
    18.03.2024 19:08:00
    Извини, но у меня ужасная аллергия на такие штуки, поэтому я никогда не решался попробовать! Кстати, @DarkNate, не мог бы ты объяснить для такого простачка, как я, что такое «клиент/сервер» туннель?
     
     
     
    DarkNate
    Guest
    #5
    0
    19.03.2024 09:37:00
    Я только что объяснил это на примере OpenVPN! OpenVPN — это модель «сервер/клиент». WireGuard — это одноранговый оверлейный сетевой протокол. Он полностью работает на уровне 3, «peer to peer». По умолчанию каждый узел может общаться с любым другим узлом с помощью маршрутизации unicast, здесь нет ни «сервера», ни «клиента». Почитай статьи Джейсона, создателя WireGuard. Он знает о протоколе WireGuard гораздо больше, чем ты, я и даже сотрудники MikroTik вместе взятые.
     
     
     
    Larsa
    Guest
    #6
    0
    19.03.2024 16:02:00
    Правда, что OpenVPN часто настраивают в стиле «клиент/сервер», особенно для удалённого доступа. Однако то же самое касается и WireGuard. Оба этих протокола туннелирования, вместе с IPsec и SSTP, могут работать как «инициаторы», так и пассивные «ответчики». Это просто вопрос настройки, а не фундаментальное ограничение самих протоколов туннелирования.
     
     
     
    Страницы: 1
    Читают тему
    +7 495 320-55-52
    info@mikrotik.moscow
    Электрозаводская, Бауманская
    Москва, ул. Бакунинская, 84с21
    Конфиденциальность Оферта
    © 2026 «Mikrotik.Moscow»
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры