- Подготовка к настройке WireGuard. Обновление прошивки Mikrotik RouterOS 6 до RouterOS 7
- Настройка WireGuard VPN клиента на Mikrotik RouterOS
- Отключение Fasttrack
- Добавление интерфейса WireGuard и клиентской конфигурации Peer
- Создание таблицы маршрутизации для маркированных пакетов VPN трафика Wireguard
- Создание списков адресов и правил разметки пакетов маршрута Wireguard VPN
- Полное туннелирование трафика VPN Wireguard на Mikrotik
- Выборочное туннелирование трафика VPN Wireguard на Mikrotik
- Создание правила маршрутизации для Wireguard VPN
- Разрешение соединения Wireguard VPN в Firewall-Nat
- Смена DNS провайдера
- MTU fix для Mikrotik Wireguard (mss clamp to pmtu)
- VPN туннель в локальную сеть
- Для голого Wireguard
- Для WireHole
- Общие рекомендации
Данная инструкция подробно описывает настройку 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
Привет, а что если от провайдера инет не по dhcp, а по статике, получается из инструкции мы пропускаем поле Add Default Route на Special Classless, на что это влияет?
Special Classless для DHCP клиента позволяет использовать другие правила маршрутизации, по умолчанию Add Default Route означает что будет использоваться только выбранный DHCP клиент. Default Route Distance указывает непосредственно приоритет, чем больше число — тем ниже приоритет соединения
Добрый вечер,
настроил по вашей инструкции связку vps(wireguard) + Routeros7(hyper-v) работает.
Но возникла проблема, т.к. у меня интернет идет через другой роутер то имеются проблемы с доступностью (клиент -> vps -> routeros7(доступ есть) -> ПК (доступа нет)).
С тем учетом что Routeros7 за dns идет на VPS и успешно может пинговать основной роутер находящейся в той же подсети.
Как мне лучше всего реализовать доступность внешнего клиента до устройств в локальной сети? менял dns запись на конечном устройстве и основном роутере на шлюз routeros7 не сработало, подскажите пожалуйста, как можно решить мою проблему или может ссылочку на статью, где это обьясняют. Заранее спасибо
если я вас правильно понял, то внешний доступ к локальной сети описан в пятом пункте инструкции.
В противном случае лучше напишите в мой чат. Там гораздо легче обсуждать подобные вопросы.
Подключаю Микротик как клиента, в интерфейсе wireguard микротик генерирует паблик кей(на основе приват кей с сервера) отличающийся от пабликея сгенерированного на сервере для пира, что не так? Или это не важно?
publickey где смотрите на сервере?
на данный момент главное чтобы был одинаковый PresharedKey
Настроил точно по инструкции, но пакеты только уходят но не приходят
Где-то ошиблись. Пишите в чат или ищите ошибку самостоятельно
Тоде самое инструкция не работает
Работает. Несколько дней назад настраивали
Делал подключение по всем сайтам, но после пункта 2.5 пропадает связ с роутером по его внутреннему ip 192.168.88.1 получается на него зайти только через winbox по mac адресу. Как это исправить? Ещё я бы поменял местами пунк 2.5 и 2.6 чтоб не отваливался интернет
Я почти всегда подключаюсь к микротику по mac. Добавил как примечание в инструкцию, спасибо!
в 2.4.Б. опечатка, в dst lisе. на картинке при этом все правильно. я сделал этот пункт, но выборочное туннелирование не заработало.
скорее всего сайты с CDN в выборочное туннелирование добавляете. Они действительно работать не будут по данному мануалу так как их IP адреса постоянно обновляются. Есть два решения проблемы: 1) использование L7 , 2) использование списков заблокированных сайтов. Оба решения мне не понравились, и я полностью перешел на OpenWRT пытаясь больше не использовать микротик с ROS
Просьба для голого WireGuard правила PostUp и PostDown из wg0.conf в текстовом виде тоже прописать, скриншот очень мелкий, легко ошибиться.
В правилах PostUp и PostDown нужно удалить свой интерфейс -o eth0 (название интерфейса может отличаться) — добавил текстом, спасибо
Автор похоже такой же нуб как и я впервые все это делающий. Только я то понимаю что у меня не тот уровень чтоб учить других, в отличии.
Удалил указанные правила в PostUp и PostDown отвалился dns на сервере. Вернул, все работает и локалка видится, то есть в моем случае это только все ломает.
fasttrack никакого смысла нет отключать, достаточно добавить в него исключение.
И выходит статейка полная лажа. Все самому, как всегда, нужно разбираться, никто не сделает за тебя.
Потому что действительно нужно своей головой думать и внимательнее читать инструкцию, а не писать гневные комментарии!
1) В инструкции не сказано что нужно полностью удалить правила в PostUp и PostDown
2) Если вы знаете как добавить исключения в fasttrack, это не значит что вариант с его отключением абсолютно не верный. Дабы исключить проблемы я советую именно отключить fasttrack
3) Инструкция описывает базовый алгоритм настройки клиента wireguard на Mikrotik. Остальные настройки каждый делает индивидуально под свои задачи! Я и так многое описал в одной статье
Можете объяснить, на что влияет параметр Passthrough в Mangle routing marking.
В одних руководствах он выключен, в других — включен.
Для того чтобы пакет пошел дальше в брандмауэр.
Настроил, вот для проброса портов напоминалка:
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
Почему когда весь трафик пускаешь через WG, то все хорошо работает, а когда вписываешь отдельные сайты, то доступ к этим сайтам пропадает? тот же 2ip
2ip скорее всего неправильно прописали, а вообще проблема в использовании сайтами CDN, т.е. IP адреса сайтов постоянно меняются
В моей версии wireguard в конфигурации пиров нет PresharedKey ._.
Без него, видимо, не работает
Как его раздобыть?
скорее всего нужно обновить прошивку и появится кнопка PresharedKey. Без нее действительно WG работать не будет
Прошивку Микротика? Нет, она актуальная, 7.8
Нет PresharedKey (и не было) в конфигурации wireguard. Я делал её по ранней вашей инструкции около года назад, в феврале.
Через программку wireguard на windows, android и ios работает замечательно и без него 🙂
Тут вот нашёл, в чём ошибся, исправил, и частично заработала связь.
Частично — настроил выборочную маршрутизацию
Добавил а Address Lists нужные мне сайты, но часть из них всё равно не открываются.
ins***ram вообще никак, tw**ter работает, но не работает окно авторизации
Добавил урл с www и без, адреса, относящиеся к этому делу, целыми диапазонами, какие смог нагуглить, — ни в какую
На десктопе под windows не работает ._.
Подскажите, есть ли решение?
Помогло добавление моря диапазонов в address lists и команда «/ip dns cache flush» на самом микротике ._. Прошу прощения. Всё работает!
Как прописать моря диапазонов в address lists,как добавить исключение в fasttrack.
Я думаю лучше тут спросить, я микротики все продал
PresharedKey 100% есть Wireguard на микротике, во вкладке Peers надо выбрать пира и еще раз посмотреть.
Всякие сайты запрещенные РКН работать будут только при полной маршрутизации, частичная маршрутизация отвратительно работает на микротике. Списки сайтов и их ip адекватным путем не подгрузить, решение через L7 тоже работает нестабильно.
Смое лучшее решение использовать WG для обхода блокировок на конечном устройстве или купить другой роутер и прошить в OpenWRT. WG в OpenWRT гораздо свежее и функциональнее
Да-да, на микротике есть это поле. Этих данных, этого самого preshared key, нет в моих конфигурациях пиров, которые я создал год назад. Честное пионерское, я не выдумываю) Делал такие же vpn’ы позже на других vps, выполняя все те же пункты, и preshared key уже был.
Насчёт нестабильности работы вот наблюдаю, да.. Работает через раз. Сразу после флюша днс в браузере, на пк и внутри микротика — да, всё открывается в течение нескольких минут. Потом начинает рандомно то отваливаться, то открываться вновь.
Сверился с вашей инструкцией многократно, — всё настроил верно. Каких-то моих настроек, которые мешали бы работе этого всего, не было и нет.
Пожалуй, да, брошу это дело, откачусь.
Всё равно спасибо, интересный опыт и новое знание 🙂
Чем больше я ковыряю микротик, тем меньше он мне нравится.
Он может сильно меньше чем заявляет, скажем так. Уже многих аспектов касался.
В будущем планирую переехать не на openwrt, а на pfSense 🙂
значит надо обновить сборку DWG на своем сервере, preshared key нужен на самом деле.
Касательно нестабильности я давно в чатике пишу что микротик говно. Плюс функционал очень древний и скудный у микротика.
Переезжать наверное лучше одновременно и на Openwrt и Pfsense. Pfsense очень удобный относительно Openwrt (особенно фаервол), а OpenWRT более свежий в плане пакетов и более функциональный, плюс есть бесшовный wifi. Сам думаю развернуть обе системы в proxmox на мини пк заточенном под маршрутизатор, останавливает меня только жаба которая душит.
Полную я делал на работе, — работает почти прилично даже на убогом hAP Lite
nslookup на ins****am.com направляет на 127.0.0.1
Я запутался ._.
Предлагаю полностью не лишать микротик 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.
Добрый день, пункт 2.5 не хочет заполнять Gateway, wireguard1 там не прописывается, почему ? И не до конца понял как найти файл wg0.conf
Может кто подскажет, что нужно сделать чтобы из сети за сервером wireguard была видна сеть за микротом? Со стороны сервера маршруты в сеть за микротом есть. С сервера IP адрес wireguard интерфейса микрота не пингуется. Хотя со стороны микрота сеть за сервером вижу. Подозреваю что дело в Firewall на микроте. Как его правильно настроить?
Пытаюсь сделать так, чтобы с 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
«`
Соответсвенно, линка нет и сетки не видно. Подскажите, куда копать