Настройка клиента Wireguard на Mikrotik RouterOS для подключения к VPS, VDS серверу или готовой конфигурации

Безопасность

Данная инструкция подробно описывает настройку WireGuard клиента на Mikrotik RouterOS как с полным так и частичным туннелированием трафика через WireGuard VPN. В текущем примере используется RouterOS 7.5 со стандартными заводскими настройками и сторонним сервером Wireguard на VPS, VDS. Протестировано с решением DWG

Подготовка к настройке WireGuard. Обновление прошивки Mikrotik RouterOS 6 до RouterOS 7

WireGuard VPN доступен в Mikrotik начиная с 7-ой версии RouterOS. Если вы используете RouterOS v6 вам необходимо обновиться до её крайней стабильной версии, затем совершить обновление до RouterOS v7. Как осуществить обновление описано ниже. Если у вас уже установлен RouterOS v7, то данный пункт для вас неактуален, приступайте к следующему пункту.

Зайдите в панель управления роутером Mikrotik из WinBox или браузера. IP роутера по умолчанию 192.168.88.1

Или сразу подключитесь к своему микротику по mac для избежания потери соединения по ходу выполнения пунктов инструкции

Нажмите кнопку System, затем нажмите кнопку Packages.

Нажмите кнопку Check For Updates для проверки наличия обновлений

Выберите Channel: stable и нажмите кнопку Download&Install

Дождитесь окончания установки прошивки и перезагрузки роутера. Теперь вам доступно обновление прошивки RouterOS до версии 7.

Выберите ранее недоступный Channel: upgrade и нажмите кнопку Download&Install

Дождитесь окончания установки прошивки и перезагрузки роутера.

Нажмите кнопку System-RouterBOARD

Нажмите кнопку Upgrade

Перезагрузите ваш Mikrotik

Вы обновили систему Mikrotik RouterOS до версии 7 и можете приступать к настройке WireGuard.

Настройка WireGuard VPN клиента на Mikrotik RouterOS

Данная инструкция предполагает настройку WireGuard клиента как с полным туннелированием трафика (пункт 2.4.А.) так и выборочным туннелированием для обхода блокировок (пункт 2.4.Б.) посредством маркировки пакетов маршрутизации VPN с помощью Firewall-Mangle, Firewall-Address Lists и создания маркированного маршрута IP-Routes.

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

Отключение Fasttrack

Для начала необходимо отключить стандартное правило фаервола — Fasttrack, так как оно не позволяет обрабатывать и контролировать трафик перенаправленный него и вызовет проблемы с маршрутизацией пакетов VPN соединения. Опция Fasttrack, дословно — короткий путь, предназначена для отключения обработки пакетов роутером с целью снижения нагрузки на процессор. Однако данную опцию следует использовать очень вдумчиво и тщательно изучать отдельно, так как она лишает возможности гибко управлять трафиком. Поэтому мы полностью отключим данное правило.

Нажмите кнопку IP-Firewall и во вкладке Filter Rules отключите правило Fasttrack

Добавление интерфейса WireGuard и клиентской конфигурации Peer

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

Добавим и настроим новый интерфейс WireGuard

Нажмите кнопку WireGuard в левой панели

Нажмите кнопку +, затем заполните поля MTU (по умолчанию 1420), Listen Port и Private Key и нажмите OK. Значения Listen Port и Private Key содержатся в вашей конфигурации созданной на сервере Wireguard.

Интерфейс WireGuard добавлен

Нажмите вкладку Peers (содержит конфигурации для подключения WireGuard, как клиентские, так и серверные если Mikrotik используется в качестве сервера), затем добавьте новую клиентскую конфигурацию нажав кнопку +

Выберите ранее созданный Interface, заполните поля Public Key (публичный ключ клиента), Endpoint (IP сервера), Endpoint Port (Порт сервера), Preshared Key (общий ключ) своими данными созданными при конфигурации клиента на сервере. Также обязательно укажите allowed-address=0.0.0.0/0 для разрешения доступа клиента Wireguard ко всем подсетям роутера (позже можете настроить более детально)

Также необходимо добавить внутренний IP адрес вашего клиента в сети Wireguard. Войдите в IP-Addresses, нажмите +, заполните поля Address (внутренний IP клиента, берем из конфигурации клиента), Network (тоже самое что Address только последняя цифра 0), Interface (ранее созданный интерфейс Wireguard)

Создание таблицы маршрутизации для маркированных пакетов VPN трафика Wireguard

По умолчанию RouterOS определяет таблицу маршрутизации «main», для добавления маршрутов в FIB (Forwarding Information Base, дословно информационная база пересылки, которая используется для принятия решений о пересылке пакетов и содержит копию необходимой маршрутной информации)

Нам потребуется пользовательская таблица маршрутизации, ее следует определить в меню Routing-Tables для добавления маршрутов Wireguard в FIB

Перейдите в меню Routing-Tables, нажмите +, затем заполните поле Name значением wg_mark и обязательно поставьте галочку FIB

Создание списков адресов и правил разметки пакетов маршрута Wireguard VPN

Для маркированного маршрута интерфейса Wireguard необходимо создать списки адресов (Address Lists) которые будут использовать Wireguard VPN и правило разметки пакетов маршрута (Mangle), они будут отличаться в зависимости от того каким образом вы хотите туннелировать VPN трафик:

  • Если вам нужно полное туннелирование VPN трафика — выполняйте пункт 2.4.А. (все сайты будут открываться через VPN)
  • Если вам нужно выборочное туннелирование, к примеру для обхода ограничений доступа к некоторым сайтам — выполняйте пункт 2.4.Б.

Полное туннелирование трафика VPN Wireguard на Mikrotik

Теперь мы подготовим список адресов использующих Wireguard. В случае с полным туннелированием необходимо указать IP локальной сети роутера, чтобы все устройства подключенные к ней использовали Wireguard VPN для доступа к сайтам.

Перейдите в IP-Firewall-Address Lists и нажмите +, затем заполните поля Name и Address. В поле Name укажите full_wg, поле Address заполните IP адресом локальной сети роутера (по умолчанию 192.168.88.0/24). Нажмите OK.

Добавьте правило разметки пакетов маршрута, для этого перейдите в IP-Firewall-Mangle, нажмите +, затем заполните поля Chain, Src Address List, Action, New Routing Mark и нажмите OK.

Chain = prerouting (перевод: Сеть = предварительная маршрутизация)

Src Address List = full_wg (перевод: Список исходных адресов = ранее созданный список адресов для полного туннелирования, п. 2.4.А.)

Action = mark routing (перевод: Действие = пометить маршрутизацию)

New Routing Mark = wg_mark (перевод: Новая метка маршрутизации = ранее созданная таблица маршрутизации п. 2.3)

Выборочное туннелирование трафика VPN Wireguard на Mikrotik

Для выборочного туннелирования вам потребуется создать новые списки адресов в IP-Firewall-Address Lists по аналогии с пунктом 2.4.А. Только указывать в данных списках нужно имена сайтов или сразу их IP адреса на которые вы будете заходить через VPN. Mikrotik сам распознает адреса указанных сайтов и добавляет (обновляет по истечению TTL) их IP в Address Lists.

Применять BGP я не стал по причине большой нагрузки на процессор и ненадобности больших списков (вы не будете пользоваться даже половиной ресурсов из списков того же антизапрета, потому лучше добавьте сайты вручную)

Перейдите в IP-Firewall-Address Lists и нажмите +, затем заполните поля Name и Address. В поле Name укажите rkn_wg, поле Address заполните именем интересующего сайта или его IP адресом. Нажмите ОК.

Для других сайтов в новых списках вы должны будете указать тот же Name что и для первого, но заполнить Address другим именем сайта или IP.

Добавьте правило разметки пакетов маршрута, для этого перейдите в IP-Firewall-Mangle, нажмите +, затем заполните поля Chain, Dst Address List, Action, New Routing Mark и нажмите OK.

Chain = prerouting (перевод: Сеть = предварительная маршрутизация)

Dst Address List = rkn_wg (перевод: Список адресов назначения)

Action = mark routing (перевод: Действие = пометить маршрутизацию)

New Routing Mark = wg_mark (перевод: Новая метка маршрутизации = ранее созданная таблица маршрутизации п. 2.3)

После выполнения инструкции до конца проверьте свой VPN именно на https://2ip.ru/ и он покажет IP адрес вашего сервера, так как данный ресурс мы прописали в вышеупомянутый список. Если же вы откроете https://whoer.net/ru то whoer покажет ваш реальный IP.

Если заблокированный сайт все равно не открывается, добавьте два адрес листа для одного и того же сайта, одно с указанием www.домен.com второе без www, просто домен.com

Также есть шанс того что Mikrotik неправильно заполнит IP для имен указанных в адрес лист сайтов, в этом случае поменяйте DNS для роутера в IP-DNS (не путать с DNS для клиентов роутера в IP-DHCP Server-Network), для Wirehole укажите DNS своего сервера, для голого Wireguard нужно искать хорошие DNS сервера (DNS Google больше не спасает)

Создание правила маршрутизации для Wireguard VPN

Создайте новое правило маршрутизации для интерфейса Wireguard с указанием ранее созданной таблицы маршрутизации (п. 2.3).

Для этого перейдите в IP-Routes, нажмите +, затем заполните поля Gateway, Distance, Routing Table

Gateway = wireguard1 (название вашего Wireguard интерфейса из п. 2.2)

Distance = 1 (приоритетность соединения, чем ниже значение — тем приоритетнее)

Routing Table = wg_mark (ранее созданная таблица маршрутизации п. 2.3)

Также вам необходимо понизить приоритет стандартного DHCP клиента.

Для этого перейдите в IP-DHCP Client, выберите существующую запись DHCP клиента, измените значение поля Add Default Route на Special Classless и укажите значение поля Default Route Distance = 2 во вкладке Advanced

Разрешение соединения Wireguard VPN в Firewall-Nat

По умолчанию Firewall не предполагает наличия вашего соединения Wireguard интерфейса и вам необходимо вручную прописать для него правило masquerade.

Для этого войдите в IP-Firewall-Nat, нажмите +, затем заполните поля Chain, Out. Interface, Action, нажмите OK.

Chain = srcnat

Out. Interface = wireguard1 (название вашего интерфейса Wireguard)

Action = masquerade

Настройка WireGuard на RouterOS завершена. Проверьте своё VPN соединение https://whoer.net/ru или https://2ip.ru/ (если настроили выборочное туннелирование)

Смена DNS провайдера

Для того чтобы сменить DNS провайдера перейдите в IP-DHCP Server-Networks, выберите существующую запись DHCP сервера, войдите в неё и измените значение поля DNS Servers.

Если вы используете голый WireGuard без Unbound и DNSProxy укажите в поле DNS Servers следующие IP: 8.8.8.8, 8.8.4.4

Если вы используете Unbound или WireHole из этой инструкции, то в поле DNS Servers укажите 10.2.0.100 (иногда нужно вводить 10.6.0.1). В случае использования DNS Proxy укажите IP своего DNS сервера.

MTU fix для Mikrotik Wireguard (mss clamp to pmtu)

Если ваш Mikrotik с установленным WireGuard медленно открывает сайты или вообще не открывает некоторые сайты, то вам нужно установить корректный MTU (Как определить оптимальный размер MTU?), или вы можете воспользоваться fix MTU.

Используйте данный пункт только в случае серьезных проблем с загрузкой сайтов!

Откройте консоль Mikrotik нажав кнопку New Terminal

Выполните следующую команду:

/ip firewall mangle
add action=change-mss chain=forward new-mss=clamp-to-pmtu out-interface=wireguard1 protocol=tcp tcp-flags=syn

Перезапустите Mikrotik нажатем кнопки Reboot затем нажмите кнопку Yes. Или воспользуйтесь командой /system reboot в теминале.

В итоге выполненных действий будет добавлено следующее правило IP-Firewall-Mangle, которое исправляет проблему медленной и нестабильной работы WireGuard на Mikrotik:

VPN туннель в локальную сеть

В данном пункте инструкции мы настроим VPN-туннель в локальную сеть Mikrotik с помощью «WireGuard» и обеспечим доступ из интернета к узлам LAN с различных устройств. Протестировано совместно с предыдущими пунктами инструкции и с WireHole.

Вы сможете свободно подключаться к устройствам из локальной сети Микротика при включенном VPN Wireguard на устройстве вне локальной сети.

Схема сети

Для голого Wireguard

Если вы используете голый WireGuard (не WireHole), то для того чтобы сервер WireGuard и его клиенты видели локальную сеть роутера, вам нужно внести корректировки в файл wg0.conf на вашем VPS сервере.

Найдите правила PostUp и PostDown в файле wg0.conf и удалите из них свой локальный интерфейс сервера (в моем случае -o eth0) чтобы правило masquerade работало для всех доступных интерфейсов.

Было:

Стало:

Найдите строки содержащие Peer вашего Mikrotik в wg0.conf и добавьте IP адрес вашей локальной сети роутера в AllowedIPS (в моем случае 192.168.88.0/24)

Сохраните изменения в файле wg0.conf и перезапустите Wireguard на вашем VPS сервере.

Для WireHole

Если вы используете Wirehole, то вам НЕ нужно редактировать файл wg0.conf, так как он все равно перезапишется докером. Вам необходимо отредактировать шаблон по созданию файла сервера Wireguard — server.conf (находится в папке wirehole/wireguard/templates).

Только в шаблоне server.conf вы можете прописать статичную конфигурацию Peer, отличающуюся от других клиентов Peer создаваемых докером (нельзя прописывать адрес локальной сети всем пирам в AllowedIPs). Также необходимо удалить название статичного Peer микротика из docker-compose.yml чтобы докер не задвоил вам конфигурацию для вашего роутера.

Измените правила PostUp и PostDown по аналогии с голым WireGuard.

Добавьте строки конфигурации Peer вашего роутера в конец файла server.conf, их можно скопировать из файла сгенерированного докером (папка wirehole/wireguard/peer_mikrotik), потом вы можете удалить папку wirehole/wireguard/peer_mikrotik так как она больше не будет генерироваться докером по причине удаления конфига микротика из docker-compose.yml.

Удалите название Peer микротика из docker-compose.yml и перезапустите докер.

Генерирование новых конфигов в WireHole происходит согласно содержимому файлов docker-compose.yml и server.conf, peer.conf (wirehole/wireguard/templates) при любом изменении в docker-compose.yml и перезапуска докера (cd wirehole && docker-compose up).

Также советую прописывать конфигурации Peer в docker-compose.yml не числом пиров, а названиями пиров через запятую (PEERS=DELL,OP8T,XXXXXXX,mikrotik)

Общие рекомендации

Если вы используете в Mikrotik конфигурацию по умолчанию то вам необходимо перейти в Interfaces-Interface Lists и добавить ранее созданный интерфейс wireguard1 в LAN

Данное действие необходимо для корректной работы стандартного правила Firewall defconf: drop all not coming from LAN, в противном случае данное правило заблокирует доступ к локальной сети для интерфейса wireguard1

Оцените статью
Кибер Лис
Добавить комментарий

  1. jimmik

    Привет, а что если от провайдера инет не по dhcp, а по статике, получается из инструкции мы пропускаем поле Add Default Route на Special Classless, на что это влияет?

    Ответить
    1. kiberlis автор

      Special Classless для DHCP клиента позволяет использовать другие правила маршрутизации, по умолчанию Add Default Route означает что будет использоваться только выбранный DHCP клиент. Default Route Distance указывает непосредственно приоритет, чем больше число — тем ниже приоритет соединения

      Ответить
  2. Kempachi

    Добрый вечер,
    настроил по вашей инструкции связку vps(wireguard) + Routeros7(hyper-v) работает.
    Но возникла проблема, т.к. у меня интернет идет через другой роутер то имеются проблемы с доступностью (клиент -> vps -> routeros7(доступ есть) -> ПК (доступа нет)).
    С тем учетом что Routeros7 за dns идет на VPS и успешно может пинговать основной роутер находящейся в той же подсети.
    Как мне лучше всего реализовать доступность внешнего клиента до устройств в локальной сети? менял dns запись на конечном устройстве и основном роутере на шлюз routeros7 не сработало, подскажите пожалуйста, как можно решить мою проблему или может ссылочку на статью, где это обьясняют. Заранее спасибо

    Ответить
    1. kiberlis автор

      если я вас правильно понял, то внешний доступ к локальной сети описан в пятом пункте инструкции.

      В противном случае лучше напишите в мой чат. Там гораздо легче обсуждать подобные вопросы.

      Ответить
  3. Евгений

    Подключаю Микротик как клиента, в интерфейсе wireguard микротик генерирует паблик кей(на основе приват кей с сервера) отличающийся от пабликея сгенерированного на сервере для пира, что не так? Или это не важно?

    Ответить
    1. kiberlis автор

      publickey где смотрите на сервере?

      Ответить
    2. kiberlis автор

      на данный момент главное чтобы был одинаковый PresharedKey

      Ответить
  4. batman_dude

    Настроил точно по инструкции, но пакеты только уходят но не приходят

    Ответить
    1. kiberlis автор

      Где-то ошиблись. Пишите в чат или ищите ошибку самостоятельно

      Ответить
    2. Киря

      Тоде самое инструкция не работает

      Ответить
      1. kiberlis автор

        Работает. Несколько дней назад настраивали

        Ответить
  5. Александр

    Делал подключение по всем сайтам, но после пункта 2.5 пропадает связ с роутером по его внутреннему ip 192.168.88.1 получается на него зайти только через winbox по mac адресу. Как это исправить? Ещё я бы поменял местами пунк 2.5 и 2.6 чтоб не отваливался интернет

    Ответить
    1. kiberlis автор

      Я почти всегда подключаюсь к микротику по mac. Добавил как примечание в инструкцию, спасибо!

      Ответить
  6. Дима

    в 2.4.Б. опечатка, в dst lisе. на картинке при этом все правильно. я сделал этот пункт, но выборочное туннелирование не заработало.

    Ответить
    1. kiberlis автор

      скорее всего сайты с CDN в выборочное туннелирование добавляете. Они действительно работать не будут по данному мануалу так как их IP адреса постоянно обновляются. Есть два решения проблемы: 1) использование L7 , 2) использование списков заблокированных сайтов. Оба решения мне не понравились, и я полностью перешел на OpenWRT пытаясь больше не использовать микротик с ROS

      Ответить
  7. Олег

    Просьба для голого WireGuard правила PostUp и PostDown из wg0.conf в текстовом виде тоже прописать, скриншот очень мелкий, легко ошибиться.

    Ответить
    1. kiberlis автор

      В правилах PostUp и PostDown нужно удалить свой интерфейс -o eth0 (название интерфейса может отличаться) — добавил текстом, спасибо

      Ответить
  8. Денис

    Автор похоже такой же нуб как и я впервые все это делающий. Только я то понимаю что у меня не тот уровень чтоб учить других, в отличии.
    Удалил указанные правила в PostUp и PostDown отвалился dns на сервере. Вернул, все работает и локалка видится, то есть в моем случае это только все ломает.
    fasttrack никакого смысла нет отключать, достаточно добавить в него исключение.
    И выходит статейка полная лажа. Все самому, как всегда, нужно разбираться, никто не сделает за тебя.

    Ответить
    1. kiberlis автор

      Потому что действительно нужно своей головой думать и внимательнее читать инструкцию, а не писать гневные комментарии!
      1) В инструкции не сказано что нужно полностью удалить правила в PostUp и PostDown
      2) Если вы знаете как добавить исключения в fasttrack, это не значит что вариант с его отключением абсолютно не верный. Дабы исключить проблемы я советую именно отключить fasttrack
      3) Инструкция описывает базовый алгоритм настройки клиента wireguard на Mikrotik. Остальные настройки каждый делает индивидуально под свои задачи! Я и так многое описал в одной статье

      Ответить
  9. Константин

    Можете объяснить, на что влияет параметр Passthrough в Mangle routing marking.

    В одних руководствах он выключен, в других — включен.

    Ответить
    1. kiberlis автор

      Для того чтобы пакет пошел дальше в брандмауэр.

      Ответить
  10. Константин

    Настроил, вот для проброса портов напоминалка:

    1) Добавляем обычный проброс портов

    /ip firewall nat add chain=dst-nat in-interface= protocol= dst-port= action=netmap to-address= to-ports=

    2) Правила маркировки и подмены masquerade для наших особенных пакетов
    /ip firewall mangle
    add chain=prerouting action=mark-connection new-connection-mark= passthrough=yes connection-state=new protocol= in-interface= dst-port= log=no
    add chain=prerouting action=mark-packet new-packet-mark= passthrough=yes connection-mark= log=no
    /ip firewall nat
    add chain=dstnat action=dst-nat to-addresses= to-ports= protocol= dst-address= in-interface= packet-mark= dst-port= log=no
    add chain=srcnat action=masquerade out-interface= packet-mark= log=no

    Ответить
  11. lamaco

    Почему когда весь трафик пускаешь через WG, то все хорошо работает, а когда вписываешь отдельные сайты, то доступ к этим сайтам пропадает? тот же 2ip

    Ответить
    1. kiberlis автор

      2ip скорее всего неправильно прописали, а вообще проблема в использовании сайтами CDN, т.е. IP адреса сайтов постоянно меняются

      Ответить
  12. Евгений

    В моей версии wireguard в конфигурации пиров нет PresharedKey ._.
    Без него, видимо, не работает

    Как его раздобыть?

    Ответить
    1. kiberlis автор

      скорее всего нужно обновить прошивку и появится кнопка PresharedKey. Без нее действительно WG работать не будет

      Ответить
      1. Евгений

        Прошивку Микротика? Нет, она актуальная, 7.8
        Нет PresharedKey (и не было) в конфигурации wireguard. Я делал её по ранней вашей инструкции около года назад, в феврале.

        Через программку wireguard на windows, android и ios работает замечательно и без него 🙂

        Тут вот нашёл, в чём ошибся, исправил, и частично заработала связь.

        Частично — настроил выборочную маршрутизацию
        Добавил а Address Lists нужные мне сайты, но часть из них всё равно не открываются.
        ins***ram вообще никак, tw**ter работает, но не работает окно авторизации

        Добавил урл с www и без, адреса, относящиеся к этому делу, целыми диапазонами, какие смог нагуглить, — ни в какую
        На десктопе под windows не работает ._.

        Подскажите, есть ли решение?

        Ответить
        1. Евгений

          Помогло добавление моря диапазонов в address lists и команда «/ip dns cache flush» на самом микротике ._. Прошу прощения. Всё работает!

          Ответить
          1. churban

            Как прописать моря диапазонов в address lists,как добавить исключение в fasttrack.

          2. kiberlis автор

            Я думаю лучше тут спросить, я микротики все продал

        2. kiberlis автор

          PresharedKey 100% есть Wireguard на микротике, во вкладке Peers надо выбрать пира и еще раз посмотреть.

          Всякие сайты запрещенные РКН работать будут только при полной маршрутизации, частичная маршрутизация отвратительно работает на микротике. Списки сайтов и их ip адекватным путем не подгрузить, решение через L7 тоже работает нестабильно.

          Смое лучшее решение использовать WG для обхода блокировок на конечном устройстве или купить другой роутер и прошить в OpenWRT. WG в OpenWRT гораздо свежее и функциональнее

          Ответить
          1. Евгений

            Да-да, на микротике есть это поле. Этих данных, этого самого preshared key, нет в моих конфигурациях пиров, которые я создал год назад. Честное пионерское, я не выдумываю) Делал такие же vpn’ы позже на других vps, выполняя все те же пункты, и preshared key уже был.

            Насчёт нестабильности работы вот наблюдаю, да.. Работает через раз. Сразу после флюша днс в браузере, на пк и внутри микротика — да, всё открывается в течение нескольких минут. Потом начинает рандомно то отваливаться, то открываться вновь.
            Сверился с вашей инструкцией многократно, — всё настроил верно. Каких-то моих настроек, которые мешали бы работе этого всего, не было и нет.

            Пожалуй, да, брошу это дело, откачусь.
            Всё равно спасибо, интересный опыт и новое знание 🙂
            Чем больше я ковыряю микротик, тем меньше он мне нравится.
            Он может сильно меньше чем заявляет, скажем так. Уже многих аспектов касался.

            В будущем планирую переехать не на openwrt, а на pfSense 🙂

          2. kiberlis автор

            значит надо обновить сборку DWG на своем сервере, preshared key нужен на самом деле.

            Касательно нестабильности я давно в чатике пишу что микротик говно. Плюс функционал очень древний и скудный у микротика.

            Переезжать наверное лучше одновременно и на Openwrt и Pfsense. Pfsense очень удобный относительно Openwrt (особенно фаервол), а OpenWRT более свежий в плане пакетов и более функциональный, плюс есть бесшовный wifi. Сам думаю развернуть обе системы в proxmox на мини пк заточенном под маршрутизатор, останавливает меня только жаба которая душит.

          3. Евгений

            Полную я делал на работе, — работает почти прилично даже на убогом hAP Lite

  13. Евгений

    nslookup на ins****am.com направляет на 127.0.0.1
    Я запутался ._.

    Ответить
  14. Александр

    Предлагаю полностью не лишать микротик fasttrack.

    Вместо полного отключения в п.2.1 правила fasttrack (https://kiberlis.ru/mikrotik-wireguard-client/#21_otklyuchenie_fasttrack) успешно проверил на 2 разных конфигурациях следующий подход:
    1) Если Ваш роутер подключен как dhcp клиент через ether1 и получает динамически ip адрес или имеет статический ip от провайдера на ether1 (неважно) вместо отключаемого по п.2.1 дефолтного правила fasttrack делаем 2 таких:
    /ip firewall filter
    add action=fasttrack-connection chain=forward connection-state=established,related in-interface=bridge1 out-interface=ether1
    add action=fasttrack-connection chain=forward connection-state=established,related in-interface=ether1 out-interface=bridge1

    2) Если Ваш роутер подключен через любой etherХХ или встроенный SFP порт через pppoe (например интерфейс создан как pppoe-out1) к провайдеру, то вместо отключаемого по п.2.1 дефолтного правила fasttrack делаем такие правила:
    /ip firewall filter
    add action=fasttrack-connection chain=forward connection-state=established,related in-interface=bridge1 out-interface=pppoe-out1
    add action=fasttrack-connection chain=forward connection-state=established,related in-interface=pppoe-out1 out-interface=bridge1

    Таким образом «обычный» интернет трафик может быть запущен в режиме fasttrack.
    Vpn интерфейс (я использую и wireguard и l2tp ipsec) ясное дело fasttrack не может.

    Протестировал (на 4011), результат такой:
    -если трафик идет через vpn, ничего естественно не меняется, отмечено выше почему.
    -если трафик идет напрямую без vpn, утилизация процессора снижается в 2 раза.

    В моем случае описанное имеет большой смысл, т.к. я помечаю mangle пакеты для vpn по адрес листу, и оценочно 50% трафика идет прямо, не через vpn.

    Ответить
  15. Всеволод

    Добрый день, пункт 2.5 не хочет заполнять Gateway, wireguard1 там не прописывается, почему ? И не до конца понял как найти файл wg0.conf

    Ответить
  16. Евгений

    Может кто подскажет, что нужно сделать чтобы из сети за сервером wireguard была видна сеть за микротом? Со стороны сервера маршруты в сеть за микротом есть. С сервера IP адрес wireguard интерфейса микрота не пингуется. Хотя со стороны микрота сеть за сервером вижу. Подозреваю что дело в Firewall на микроте. Как его правильно настроить?

    Ответить
  17. Алексей

    Пытаюсь сделать так, чтобы с WG соединением резолвилась сетка микротика.
    Добавил в server.conf конфиг пира микротика, добавил allowedIPs адрес микротика из конфига + свою подсетку (192.168.0.0/16), удалил интерфейсы из PostUp и PostDown, удалил из docker-compose.yml пир микротика и папку peer_mikrotik. В конечном итоге микрот вообще обрубил линк с WG сервером, по логам WG адрес микротика после пересборки docker-compose вообще пропал «` wireguard | [#] ip -4 address add 10.6.0.1 dev wg0
    wireguard | [#] ip link set mtu 1420 up dev wg0
    wireguard | [#] ip -4 route add 10.6.0.9/32 dev wg0
    wireguard | [#] ip -4 route add 10.6.0.8/32 dev wg0
    wireguard | [#] ip -4 route add 10.6.0.7/32 dev wg0
    wireguard | [#] ip -4 route add 10.6.0.6/32 dev wg0
    wireguard | [#] ip -4 route add 10.6.0.5/32 dev wg0
    wireguard | [#] ip -4 route add 10.6.0.4/32 dev wg0
    wireguard | [#] ip -4 route add 10.6.0.3/32 dev wg0
    wireguard | [#] ip -4 route add 10.6.0.2/32 dev wg0
    wireguard | [#] ip -4 route add 10.6.0.11/32 dev wg0
    «`
    Соответсвенно, линка нет и сетки не видно. Подскажите, куда копать

    Ответить