Приглашаем пройти обучение в нашем тренинг-центре и научиться настраивать оборудование MikroTik на профессиональном уровне! Узнайте расписание ближайших курсов и бронируйте место!
Пошаговая инструкция по ZeroTier на MikroTik: как получить доступ к сети без белого IP и проброса портов, настроить firewall и bridge.
Белый IP сегодня есть не у каждого провайдера. Многих абонентов давно и незаметно перевели за CGNAT, и для входящих соединений это значит одно: настраивать проброс портов (port forwarding) снаружи не на что, внешнего адреса для этого просто нет. Вариант остаётся один: VPN. И здесь начинается вторая проблема. Поднять классический IPsec или WireGuard вручную значит сгенерировать ключи на каждой стороне, свести настройки на обеих сторонах и ничего не перепутать в правилах firewall. Для одного устройства это час работы. Для второго офиса или десятого сотрудника — уже другая арифметика.
ZeroTier на MikroTik снимает именно эту проблему: вместо мучительной настройки классического VPN вручную он подключает роутер к готовой виртуальной сети, которая сама находит путь между узлами через NAT. MikroTik в этой связке — узел сети. RouterOS ставит клиент ZeroTier, а составом участников, маршрутами и доступом управляет веб-консоль ZeroTier Central или собственный контроллер (self-hosted controller), если облако не подходит.
На MikroTik разница ощущается сразу: не нужен проброс портов на роутере и синхронизация статических ключей между площадками. Достаточно установить пакет, подключиться к сети по идентификатору и разрешить трафик через firewall.
Содержание
- Что такое ZeroTier и зачем использовать его с MikroTik
- Требования и подготовка перед настройкой
- Создание аккаунта и сети в ZeroTier Central
- Установка ZeroTier на MikroTik
- Настройка интерфейса ZeroTier на MikroTik
- Готовый RouterOS-скрипт для быстрого запуска
- Подключение клиентов и авторизация устройств
- Маршрутизация и доступ к локальной сети
- Продвинутые сценарии — объединение нескольких офисов и BGP
- Собственный Moon-сервер — независимость от инфраструктуры ZeroTier Inc
- Проверка и тестирование соединения
- Устранение типичных неполадок
- ZeroTier в сравнении с другими VPN-решениями (WireGuard, IPsec)
- Бенчмарки — реальная производительность ZeroTier vs WireGuard vs IPsec на MikroTik
- Рекомендации по безопасности и эксплуатации
- Заключение — когда выбирать ZeroTier для MikroTik
- Удалённый доступ к MikroTik за CGNAT
- Настройка собственного контроллера ZeroTier на RouterOS
- Источники
ZeroTier — программно определяемая сеть (SD-WAN, Software-Defined Wide Area Network). Вместо туннеля между двумя точками она строит единую логическую сеть, к которой может присоединиться любое устройство: роутер, компьютер, смартфон, NAS. Технически это эмуляция L2-Ethernet, сети второго уровня модели OSI: участники видят друг друга так, будто подключены к одному коммутатору, даже если физически разделены городами и провайдерами. Отсюда поддержка широковещательного трафика, мостов и многопутевых соединений, которые в туннеле «точка-точка» пришлось бы реализовывать отдельно.
Ключевой механизм ZeroTier — UDP hole punching. Он позволяет двум узлам договориться о прямом соединении, даже если оба сидят за NAT и не имеют белого IP. Публичная инфраструктура ZeroTier помогает узлам «найти» друг друга и синхронизировать отправку UDP-пакетов так, чтобы NAT на обеих сторонах пропустил обратный трафик как «свой».
<
Схема 1. Как ZeroTier соединяет узлы за NAT
На MikroTik это раскрывается в конкретных сценариях:
| Сценарий | Что объединяет ZeroTier | Пример использования |
|---|---|---|
| Домашний доступ | Ваш телефон/ноутбук ↔ домашний MikroTik | Удалённый рабочий стол, доступ к NAS |
| Малый офис | Несколько сотрудников ↔ офисный роутер | Общий доступ к 1С, файловому серверу |
| Site-to-site | MikroTik ↔ MikroTik в разных городах | Объединение сетей филиалов |
| Гибрид | Локальные сети ↔ облачные системы | VPN к серверу в дата-центре |
От простой задачи подключения к одному роутеру до site-to-site между несколькими офисами переход не требует смены технологии — только других настроек маршрутизации, которые мы разберём в разделах «Продвинутые сценарии» и «Маршрутизация и доступ к локальной сети». Прежде чем ставить пакет ZeroTier на роутер, убедитесь, что ваша модель и версия RouterOS вообще его поддерживают.
Прежде чем ставить пакет ZeroTier, убедитесь в трёх вещах: подходит ли ваша модель MikroTik, какая версия RouterOS на ней стоит и открыты ли нужные порты наружу. Пропустите этот шаг — и рискуете потратить время на установку пакета, который ваше устройство просто не поддерживает.
Выбор модели MikroTik и версии RouterOS
Официальный пакет ZeroTier для RouterOS распространяется как NPK-файл и поддерживает только архитектуры ARM и ARM64, начиная с версии RouterOS 7.1rc2 (пакет появился именно тогда; по независимым источникам стабильным его считают начиная с RouterOS 7.4.1) и новее. Для остальных моделей — на архитектуре x86 и для CHR нативного пакета нет: ZeroTier там разворачивают через штатную функцию RouterOS Container, запуская сторонний Docker-образ. Это отдельный сценарий со своими нюансами настройки контейнеров и в объём этого руководства не входит. Мы разбираем путь через NPK-пакет, который подходит подавляющему большинству домашних и офисных роутеров MikroTik.
| Архитектура | Типовые модели | Путь установки |
|---|---|---|
| ARM | hAP ac², hAP ac³, cAP ac, RB4011 | Пакет ZeroTier (NPK) |
| ARM64 | hAP ax², hAP ax³, RB5009 | Пакет ZeroTier (NPK) |
| x86, CHR | Виртуальные машины, x86-роутеры | RouterOS Container |
Точную архитектуру своего устройства проще всего посмотреть в System → Resources, поле Architecture Name — так вы не ошибётесь, даже если модель не попала в таблицу выше.
Необходимые порты и сетевые требования
ZeroTier использует UDP-порт 9993 по умолчанию для исходящих соединений: большинству домашних и офисных сетей открывать входящие порты не требуется, соединение инициирует сам узел, а UDP hole punching делает остальное. Сложнее ситуация с NAT/CGNAT: если провайдер держит вас за двойным NAT (сначала домашний роутер, потом CGNAT провайдера), пробить оба слоя UDP hole punching не всегда получается, и соединение уходит через промежуточный сервер-ретранслятор инфраструктуры ZeroTier. Диагностика такой ситуации — в разделе «Устранение типичных неполадок».
Сеть создаём раньше, чем трогаем роутер: при подключении интерфейса понадобится Network ID, а взять его больше неоткуда.
Регистрация и создание сети
Зайдите на my.zerotier.com и создайте аккаунт: для личного использования до 10 устройств (лимит бесплатного Personal-плана) банковская карта не требуется. После регистрации сервис сразу сгенерирует новую виртуальную сеть со случайным именем и уникальным Network ID, 16-значным шестнадцатеричным идентификатором вида d5e04297a16fa690. Именно его вы скопируете и вставите при подключении маршрутизатора к сети на шаге «Подключение роутера к сети ZeroTier». Имя сети можно сразу переименовать во вкладке Settings: это не влияет на идентификатор и удобно, когда сетей несколько.
Базовые параметры сети в ZeroTier Central
В настройках свежесозданной сети сразу проверьте один параметр: от него зависит, как будут вести себя новые устройства.
IPv4 Auto-Assign: диапазон, из которого сеть будет автоматически раздавать виртуальные адреса участникам (например, 10.154.0.0/24). Диапазон можно сузить, расширить или перевести в ручной режим — это пригодится, когда мы дойдём до маршрутизации к конкретным устройствам локальной сети в разделе «Маршрутизация и доступ к локальной сети».
Аккаунт создан, сеть настроена, Network ID — в буфере обмена.
Официальный пакет распространяется в формате NPK и ставится одним из двух путей: через графический интерфейс или полностью с терминала.
Установка через WebUI/WinBox
Классический способ, который работает на любой версии RouterOS, поддерживающей ZeroTier:
-
Откройте страницу загрузки RouterOS на сайте MikroTik и найдите раздел Extra Packages — там лежит пакет zerotier под вашу архитектуру (ARM или ARM64, см. раздел «Выбор модели MikroTik и версии RouterOS»).
-
Загрузите скачанный .npk-файл на маршрутизатор: в WinBox или WebFig откройте раздел Files и перетащите файл в окно (или используйте кнопку Upload).
-
Перезагрузите устройство — RouterOS распакует и установит пакет автоматически во время старта.
Начиная с RouterOS 7.18, есть более короткий путь: раздел System → Packages умеет скачивать и устанавливать дополнительные пакеты прямо с роутера, без ручной закачки файла. Нажмите Check For Updates, найдите zerotier в списке, включите его кнопкой Enable, примените изменения — и роутер сам предложит перезагрузку.
Установка через CLI
Если WinBox под рукой нет, весь процесс можно выполнить из терминала. Сначала скачайте пакет прямо на роутер командой /tool fetch:
/tool fetch url="<ссылка на .npk из раздела Extra Packages>" dst-path=zerotier.npk
/system reboot
После перезагрузки пакет установлен, но неактивен — его нужно включить. У ZeroTier на RouterOS уже есть инстанс по умолчанию с именем zt1; включается он одной командой:
/zerotier enable zt1
Имя zt1 можно оставить как есть (большинству сценариев этого достаточно), а можно задать своё, если планируете несколько инстансов или просто предпочитаете более говорящее имя:
/zerotier set zt1 name=<ваше-имя>
| Способ | Что нужно | Когда удобнее |
|---|---|---|
| WebUI/WinBox | Скачанный .npk-файл, доступ к Files | Разовая установка, есть графический доступ |
| System → Packages (7.18+) | Только доступ к интернету с роутера | Актуальная версия RouterOS, минимум ручных действий |
| CLI (/tool fetch) | Ссылка на .npk, доступ к терминалу/SSH | Удалённая настройка без WinBox, автоматизация |
Каким бы путём вы ни пошли, результат один: пакет установлен, инстанс zt1 включён и ждёт команды.
Подключаем интерфейс к сети, которую мы создали в ZeroTier Central, и разбираемся, какие параметры интерфейса включать, а какие лучше оставить выключенными.
Подключение роутера к сети ZeroTier
Подключение делается одной командой — укажите Network ID, который скопировали в разделе «Регистрация и создание сети», и инстанс, к которому привязываем интерфейс:
/zerotier interface add network=1d71939404912b40 instance=zt1
Вместо 1d71939404912b40 подставьте свой 16-значный идентификатор. Если в ZeroTier Central включён приватный режим доступа, устройство появится в консоли как ожидающее подтверждения (раздел «Подключение клиентов и авторизация устройств»). После подключения роутер получает виртуальный IP-адрес из диапазона сети, но трафику через новый интерфейс по умолчанию ничего не разрешено: правила firewall для этого обязательны.
Параметры интерфейса и режим контроллера
У интерфейса zerotier1 (имя можно задать своё через name=) есть несколько параметров, которые нужно понимать осознанно, а не оставлять на волю умолчаний:
| Параметр | Что делает | Когда включать |
|---|---|---|
| allow-managed | Разрешает интерфейсу принимать IP-адреса и маршруты, которые раздаёт контроллер (ZeroTier Central или self-hosted controller) | Практически всегда — без него виртуальный адрес просто не назначится |
| allow-default | Разрешает контроллеру подменить маршрут по умолчанию на этом устройстве | Только для сценария «весь трафик клиента идёт через этот роутер» (например, VPN в поездке) |
| allow-global | Разрешает маршруты и адреса, пересекающиеся с публичным IP-пространством | Редкие случаи, когда сеть ZeroTier специально маршрутизирует «настоящие» публичные подсети |
allow-default и allow-global выключены по умолчанию не случайно — это осознанные ограничения безопасности: без явного согласия локальный роутер не отдаст контроллеру возможность перехватывать весь ваш трафик или маршруты в публичном адресном пространстве.
RouterOS умеет быть не только узлом сети, но и self-hosted controller: собственным контроллером ZeroTier, который берёт на себя то, что обычно делает облачная ZeroTier Central — кто в сети, какие маршруты раздавать. Это самостоятельный сценарий с отдельной логикой настройки, разбираем его в дополнительном блоке «Настройка собственного контроллера ZeroTier на RouterOS». Не путайте контроллер с Moon-сервером (раздел «Собственный Moon-сервер»): контроллер управляет составом и правами сети, а Moon отвечает за маршрутизацию трафика между узлами.
Если вы уже прочитали разделы про установку и настройку интерфейса и просто хотите быстрый результат — вот единый блок команд, который делает всё то же самое, но за пару минут вместо получаса ручного набора. Замените плейсхолдеры на свои значения и вставьте в терминал целиком.

Схема 2. Порядок настройки ZeroTier на MikroTik
# 1. Включаем инстанс ZeroTier
/zerotier enable zt1
# 2. Подключаемся к сети по Network ID из ZeroTier Central
/zerotier interface add network=<NETWORK-ID> instance=zt1 name=zerotier1
# 3. Разрешаем доступ с интерфейса ZeroTier к самому роутеру
/ip firewall filter add chain=input action=accept in-interface=zerotier1 \
place-before=0 comment="ZeroTier: access to router"
# 4. Опционально — доступ к устройствам локальной сети (LAN)
# Раскомментируйте, если нужен доступ не только к самому роутеру,
# и подставьте свой LAN-интерфейс вместо <LAN-INTERFACE>
# /ip firewall filter add chain=forward action=accept in-interface=zerotier1 \
# out-interface=<LAN-INTERFACE> place-before=0 comment="ZeroTier: access to LAN"
| Плейсхолдер | Что подставить |
|---|---|
| <NETWORK-ID> | 16-значный Network ID из ZeroTier Central (раздел «Регистрация и создание сети») |
| <LAN-INTERFACE> | Имя интерфейса или моста вашей локальной сети, например bridge |
place-before=0 в обеих командах — обязательная деталь. Конфигурация RouterOS по умолчанию уже содержит запрещающие правила firewall, и если добавить новое правило простой командой add без указания позиции, оно уйдёт в конец списка и может никогда не сработать, потому что трафик отсеется раньше. place-before=0 ставит правило самым первым, гарантируя, что оно применится раньше правил по умолчанию.
Четвёртая команда закомментирована не просто так: открывать доступ ко всей локальной сети сразу — решение, которое нужно принимать осознанно, а не по умолчанию. Как настроить доступ к конкретному устройству вместо всей подсети и чем отличаются chain=forward и chain=input по существу, разбираем в разделе «Маршрутизация и доступ к локальной сети».
Интерес обычно не только в том, чтобы подключить один MikroTik: к той же сети можно присоединить второй роутер, рабочий компьютер или смартфон, а сеть сама решает, кому из них доверять.
Второй MikroTik подключается так же, как в разделе «Подключение роутера к сети ZeroTier»: установка пакета, zerotier interface add с тем же Network ID. Компьютеры и смартфоны используют официальный клиент ZeroTier для своей системы. На Linux, например, присоединение к сети — одна команда в терминале:
sudo zerotier-cli join <network-id>
Обратите внимание: команда sudo zerotier-cli join выполняется на самом компьютере, а не на MikroTik — это разные устройства с разными командными интерфейсами. На Windows, macOS, Android и iOS принцип идентичный, просто вместо консоли работает официальное приложение ZeroTier: установить, войти в ту же сеть по Network ID.
Дальше важный момент: только что подключившееся устройство появится в консоли ZeroTier Central как ожидающее — оно видит сеть, но не является её полноценным участником, пока администратор вручную не нажмёт «Accept» напротив нужного узла на вкладке Member Devices. Это не сбой, а ожидаемое поведение: сама попытка подключения ещё не означает доступ.
Если сеть используется для чего-то чувствительного (доступа к рабочей инфраструктуре, серверам с данными), отклоняйте или игнорируйте неизвестные устройства в списке ожидающих: лучше лишний раз проверить, чей это ноутбук или телефон, чем выдать доступ по ошибке.
Устройство авторизовано и видит сеть ZeroTier, но «видит сеть» и «видит NAS в соседней комнате» — разные задачи. Разберёмся, как дать удалённому клиенту доступ не только к самому MikroTik, но и к тому, что находится за ним.
Настройка правил firewall для разграничения доступа
В разделе «Готовый RouterOS-скрипт» мы уже добавляли правило для chain=input: оно разрешает трафик, адресованный самому роутеру: управление через WinBox/SSH, доступ к сервисам, запущенным на MikroTik. Для доступа к устройствам локальной сети этого недостаточно — нужна отдельная цепочка, chain=forward, которая отвечает за трафик, который роутер пропускает дальше, к другим интерфейсам.
| Цепочка | За что отвечает | Что получит удалённый клиент |
|---|---|---|
| chain=input | Трафик, адресованный самому MikroTik | Доступ к управлению роутером, но не к сети за ним |
| chain=forward | Транзитный трафик к другим интерфейсам | Доступ к устройствам LAN — если явно разрешено |
Практическое правило для доступа к LAN выглядит так (позицию place-before=0 разбирали в разделе «Готовый RouterOS-скрипт» — логика та же):
/ip firewall filter add chain=forward action=accept in-interface=zerotier1 \
out-interface=bridge place-before=0 comment="ZeroTier: LAN access"
Без этого правила доступ к устройствам локальной сети не заработает: firewall отбросит трафик раньше, чем он дойдёт до адресата.
Доступ к локальной сети через bridge
Чтобы удалённые участники сети ZeroTier видели не только сам MikroTik, но и устройства за ним, включите интерфейс zerotier1 в тот же bridge, что и локальные Ethernet-порты:
/interface bridge port add bridge=bridge interface=zerotier1
В этом случае удалённые устройства оказываются в том же L2-сегменте, что и локальная сеть: получают адрес от локального DHCP-сервера, видят broadcast-трафик, обнаруживают принтеры и NAS через mDNS без дополнительных маршрутов.
Это меняет топологию сети: весь LAN становится единым L2-сегментом с ZeroTier, поэтому доступ получают все устройства локальной сети, а не только выбранные. Прежде чем подключать bridge, убедитесь, что все клиенты, которых вы авторизуете в сети, действительно должны видеть всю локальную сеть целиком (раздел «Рекомендации по безопасности и эксплуатации»).
Bridge-подход из раздела «Маршрутизация и доступ к локальной сети» отлично решают задачу для одной-двух площадок. Проблема начинается, когда офисов становится больше и вы пытаетесь связать их напрямую — каждый с каждым, по схеме site-to-site: тогда число соединений, которые нужно настроить и поддерживать, растёт куда быстрее, чем число самих офисов.
| Офисов | Связей «каждый с каждым» |
|---|---|
| 3 | 3 |
| 5 | 10 |
| 10 | 45 |
| 20 | 190 |
Формула простая: для N офисов нужно N × (N − 1) / 2 прямых соединений. С тремя офисами это ещё терпимо, а вот уже с десятью — 45 туннелей, каждый из которых нужно настроить и не забыть обновить, если поменялась локальная сеть хотя бы на одной площадке. Для этого используют multipoint VPN: топологию, где к одной сети одновременно подключены сразу несколько площадок без необходимости связывать их напрямую друг с другом, и другой протокол маршрутизации.
Интеграция центрального узла (central site)
Вместо полносвязной схемы «все со всеми» разумнее выбрать топологию hub-and-spoke: один MikroTik, в облаке (CHR) или в главном офисе, становится центральным узлом (central site), к которому подключаются остальные площадки-«спицы». Каждая новая площадка настраивается один раз и подключается только к хабу: не нужно вносить изменения в конфигурацию всех остальных офисов при добавлении нового. Хаб координирует обмен маршрутами между площадками, оставаясь единственной точкой, которую нужно поддерживать в актуальном состоянии.
Настройка BGP между площадками
Чтобы маршруты локальных сетей каждой площадки распространялись автоматически, а не настраивались вручную на каждой площадке, поверх сети ZeroTier поднимают BGP (Border Gateway Protocol). На хабе создаётся динамическое BGP-соединение с local.role=ibgp (одна AS на все площадки упрощает схему) и router-id, слушающее пиров из диапазона виртуальных адресов ZeroTier:
/routing/bgp/connection add name=zt-hub local.role=ibgp \
router-id=172.30.0.1 remote.address=172.30.0.0/16 \
remote.as=65000 listen=yes address-families=ipv4
Каждая площадка со своей стороны поднимает обычное BGP-соединение до адреса хаба в сети ZeroTier с тем же local.role=ibgp, remote.as=65000 и собственным router-id. Отдельная команда «редистрибьюта» подключённых сетей не нужна: если для соединения не задан output.filter-chain, RouterOS по умолчанию анонсирует в BGP все активные маршруты, включая локальные подключённые подсети; ограничить список анонсируемых маршрутов можно фильтром /routing/filter/rule, привязанным к output.filter-chain. Дальше протокол делает всё сам: как только на одной площадке появляется новая подсеть или меняется топология, обновлённый маршрут автоматически долетает до всех остальных — без правки routes на каждом роутере вручную. Полная настройка BGP-политик и route reflection выходит за рамки этой статьи; важно другое: сама возможность поднять BGP поверх виртуальной L2-сети ZeroTier ничем не отличается от BGP поверх любого другого канала.
Такая схема масштабируется на десятки офисов без роста сложности конфигурации на каждой отдельной площадке. Но у неё есть общая зависимость с более простыми сценариями: весь трафик между площадками всё ещё опирается на публичную инфраструктуру ZeroTier для первичного установления соединений. Если для вас это неприемлемо — есть способ снизить эту зависимость.
Схема с BGP и хабом решает проблему масштаба. Но у неё остаётся общая слабость: все узлы по-прежнему зависят от публичных root-серверов инфраструктуры ZeroTier Inc. Эти серверы помогают узлам найти друг друга при первом подключении. А если прямой UDP hole punching не проходит (вспомните раздел «Необходимые порты и сетевые требования»), через них же идёт резервный трафик. В терминологии ZeroTier такой собственный relay-сервер называется Moon-сервер (Moon) — личный корневой узел, который можно добавить в маршруты конкретного устройства, чтобы снизить зависимость от публичной инфраструктуры: контролировать задержку, обходить сбои на стороне провайдера сервиса, держать точку рандеву внутри своей инфраструктуры.
На сегодняшний день пакет ZeroTier для RouterOS не поддерживает подключение к собственному Moon-серверу: в CLI попросту нет свойства для указания приватных root-серверов (подтверждено обсуждением на официальном форуме MikroTik: реализация использует стандартный клиент с жёстко заданными публичными серверами ZeroTier Inc., и добавить свои узлы средствами RouterOS сейчас нельзя). Так что если вы рассчитывали настроить Moon прямо в /zerotier — такой команды пока не существует.
Рабочий вариант для тех, кому независимость критична, выглядит иначе: собственный Moon поднимается на отдельном Linux-хосте штатным клиентом ZeroTier (это стандартная, документированная возможность самого ZeroTier, никак не связанная с RouterOS), и к нему подключаются устройства на платформах, где Moon поддерживается официальным клиентом. Сам MikroTik в этой схеме по-прежнему работает через публичную инфраструктуру ZeroTier Inc — до тех пор, пока в RouterOS не появится соответствующая функциональность.
Это не то же самое, что self-hosted controller (раздел «Параметры интерфейса и режим контроллера», а полная настройка — в дополнительном блоке «Настройка собственного контроллера ZeroTier на RouterOS»): контроллер решает, кто состоит в сети, а Moon отвечает только за маршрутизацию трафика между узлами. RouterOS уже умеет быть контроллером, а вот Moon-сервером пока нет.
С этим ограничением остаётся смириться на практике.
Настройка закончена. Осталось убедиться, что всё это действительно работает, а не просто выглядит правильно в конфигурации.
Начните со статуса самого интерфейса:
/zerotier interface print
/ip address print
Обратите внимание на поле с назначенным адресом: если роутер получил виртуальный IP из диапазона вашей сети ZeroTier (раздел «Базовые параметры сети в ZeroTier Central»), значит подключение к сети состоялось. Пустой адрес или статус not-running говорит о том, что соединение ещё не установлено — загляните в раздел «Устранение типичных неполадок».
Последняя проверка — простой ping до виртуального адреса другого узла, а затем до устройства локальной сети, к которому настраивали доступ:
ping 172.30.234.119
ping 192.168.88.3
Если оба ответа приходят, поздравляем: маршрутизация, firewall и авторизация настроены верно, и связка полностью работает. Если нет — переходите к следующему разделу, там разбор всех типичных причин по порядку.
Если проверка из предыдущего раздела показала, что что-то не работает, почти любую из типичных проблем можно диагностировать за пару минут встроенными инструментами RouterOS: команда /zerotier interface print, которую мы уже использовали в разделе «Проверка и тестирование соединения», плюс /zerotier peer print для списка пиров, а для логов — отдельная команда:
/log print where topics~"zerotier"
Разбор по схеме «симптом → причина → решение» для трёх самых частых случаев:

Схема 3. Диагностика: симптом → причина → решение
| Симптом | Причина | Решение |
|---|---|---|
| Устройство видно в списке peer, но доступа нет | Не пройдена авторизация в приватной сети | Нажать «Accept» в Member Devices на ZeroTier Central — см. раздел «Подключение клиентов и авторизация устройств» |
| Peer авторизован, но LAN-устройства не пингуются | Нет правила firewall (chain=forward) или zerotier1 не в bridge | Проверить оба — раздел «Маршрутизация и доступ к локальной сети» |
| Соединение есть, но заметно тормозит на больших пакетах/файлах | Слишком большой MTU, пакеты фрагментируются и теряются | Уменьшить MTU интерфейса: /interface set zerotier1 mtu=1280 |
Если ни один из этих сценариев не описывает вашу ситуацию — начните с самого простого: перезагрузка инстанса (/zerotier disable zt1 и /zerotier enable zt1) устраняет значительную часть случайных зависаний, прежде чем разбираться в конфигурации детально.
RouterOS давно и хорошо умеет WireGuard и IPsec — оба поддержаны нативно, оба проверены годами эксплуатации. Разберёмся, чем ZeroTier отличается от них по существу, а не только по названию.
| Критерий | ZeroTier | WireGuard | IPsec |
|---|---|---|---|
| Простота настройки | Минимальная — пакет, Network ID, firewall-правило | Требует обмена ключами между каждой парой узлов вручную | Сложнее всех: политики, proposal'ы, согласование параметров на обеих сторонах |
| NAT-traversal | Встроенный UDP hole punching «из коробки» (раздел «Что такое ZeroTier») | Работает, но обычно требует хотя бы одну сторону с доступным портом | Плохо переносит NAT без дополнительного NAT-T, особенно двойной NAT |
| Site-to-site с несколькими офисами | Одна сеть на всех, масштабируется через BGP при росте числа площадок (раздел «Продвинутые сценарии») | Каждая пара узлов — отдельный туннель, конфигурация растёт с числом офисов | То же самое — полносвязная схема или отдельный концентратор |
| Управление составом сети | Централизованно, через access control в ZeroTier Central или self-hosted controller | Вручную — добавление/удаление ключа на каждом узле | Вручную — отзыв сертификата/ключа на каждом узле |
Из таблицы видно главное различие: WireGuard и IPsec — это туннели между конкретными точками, которые вы настраиваете и поддерживаете сами, тогда как ZeroTier представляет собой управляемую сеть, где организационная часть (кто участник, какие маршруты) вынесена в отдельный слой управления. Для точечного site-to-site между двумя офисами разница не всегда критична, но при росте числа площадок или частой смене устройств (сотрудники, временные подрядчики) управляемость начинает перевешивать.
Что не показывает эта таблица — так это реальную скорость. Простота настройки не означает автоматически такую же производительность, а у каждого протокола здесь своя цена.
Единого лабораторного теста, где все три протокола тестировали бы на одном и том же MikroTik по одной методике, в открытых источниках не существует. Вместо того чтобы подгонять цифры под красивую таблицу, здесь собраны реальные замеры throughput, опубликованные на форумах MikroTik и ZeroTier — с честной оговоркой, где именно они получены.
| Протокол | Железо | Throughput (отдача / приём) |
|---|---|---|
| IPsec (AES-128 CBC/SHA1) | hAP ax2-класса | ≈250–280 / 150–160 Мбит/с (после фикса регрессии производительности в RouterOS 7.20beta5) |
| WireGuard | То же железо, тот же тред форума | ≈430 / 400 Мбит/с — примерно в 2,5 раза быстрее IPsec на этом устройстве |
| ZeroTier | RB4011 (заметно более мощная платформа) | ≈100 Мбит/с по сообщениям пользователей — упирается в один поток CPU |
IPsec и WireGuard в этой таблице сравнимы напрямую: оба замера с одного и того же треда на одинаковом железе. А вот цифра по ZeroTier — с отдельного обсуждения и на более мощном устройстве, поэтому её нельзя читать как «ZeroTier в 2–4 раза медленнее WireGuard на том же роутере»; корректнее вывод другой: даже на более сильной платформе ZeroTier упирается в потолок раньше, потому что обрабатывает шифрование в пользовательском пространстве (userspace) одним потоком, тогда как WireGuard и IPsec в RouterOS используют аппаратное ускорение AES-NI на уровне ядра.
Отдельного контролируемого замера latency для всех трёх протоколов на MikroTik в открытых источниках не нашлось. Вместо того чтобы придумывать цифру, важно понимать причину разницы: у аппаратно ускоренного шифрования в ядре задержка на обработку пакета минимальна и предсказуема, а у userspace-реализации ZeroTier добавляется накладной расход на переключение контекста между ядром и процессом — тем заметнее, чем выше поток трафика.
Если для вашего сценария важна максимальная пропускная способность на слабом железе, WireGuard или IPsec выиграют почти всегда. Если важнее простота развёртывания и управляемость сети из раздела «ZeroTier в сравнении с другими VPN-решениями», готовность пожертвовать частью скорости обычно того стоит. А раз скорость не главный козырь ZeroTier, тем важнее не открывать доступ шире, чем действительно нужно.
Настройка — разовое действие, а безопасность сети ZeroTier требует внимания на регулярной основе. Вот три правила, которые нужно соблюдать постоянно, а не проверить один раз и забыть.
Держите сеть в приватном режиме и периодически проверяйте список устройств. Приватный режим — это защита по умолчанию, но сама авторизация устройства не разовая операция «включил и забыл». Раз в месяц-два заходите в Member Devices и проверяйте: все ли авторизованные устройства всё ещё должны быть в сети, не остался ли доступ у уволенного сотрудника или у ноутбука, который уже год как продан.
Не расширяйте bridge без необходимости. В bridge-режиме доступ получает вся локальная сеть целиком, а не выбранное устройство. Подключайте к общему bridge только тех клиентов, которым действительно нужно видеть всё, что происходит в LAN, а не отдельный сервис.
Обновляйте RouterOS и пакет ZeroTier регулярно. Пакет ZeroTier обновляется как отдельный компонент, вместе с остальными extra packages (раздел «Установка ZeroTier на MikroTik»), а не автоматически при обновлении основной прошивки. Устаревшая версия — это не только пропущенные исправления безопасности, но и пропущенные улучшения производительности, о которых говорили в разделе «Бенчмарки».
| Что проверять | Как часто |
|---|---|
| Список авторизованных устройств в Member Devices | Раз в 1–2 месяца |
| Список устройств, подключённых через bridge (нет ли лишних) | При каждом изменении инфраструктуры |
| Версия RouterOS и пакета ZeroTier | При выходе новых релизов (2 раза в месяц) |
Эти три пункта не требуют глубоких технических знаний — только привычки регулярно к ним возвращаться, а не считать настройку разовой задачей.
Коротко о том, когда ZeroTier на MikroTik — действительно подходящий выбор (и когда лучше присмотреться к альтернативам):
-
Домашний доступ — попасть на рабочий стол или NAS из любой точки без белого IP и без ручной настройки туннеля;
-
Малый офис — дать сотрудникам доступ к общим ресурсам, управляя составом сети из одной консоли, а не раздавая ключи вручную;
-
Несколько площадок — объединить офисы в одну сеть ZeroTier, а при росте числа точек перейти на BGP и центральный узел, а не по схеме «каждый с каждым», где число соединений растёт быстрее числа офисов.
Из этого списка нужно явно исключить один случай: если для вашего сценария скорость важнее управляемости — присмотритесь к WireGuard или IPsec: как показали разделы «Сравнение» и «Бенчмарки», ZeroTier не самый быстрый вариант, зато самый простой в администрировании.
Главное правило статьи остаётся прежним: прежде чем что-либо устанавливать, проверьте архитектуру и версию RouterOS — это определяет, пойдёте ли вы по пути нативного пакета или контейнера.
И последнее: авторизация устройств и контроль доступа — основа безопасности всей схемы, а не формальная процедура. Если однажды зависимость от публичной инфраструктуры ZeroTier Inc станет для вас критичной, у RouterOS уже сегодня есть self-hosted controller, а вот собственный Moon-сервер, как мы выяснили, придётся ждать будущих версий RouterOS.
Если ваш случай всё же не укладывается в эту статью — официальная документация RouterOS и ZeroTier, а также форум MikroTik помогут найти решение и для нестандартных ситуаций. Удачи в настройке!
Отдельный, но частый случай: провайдер вообще не выдаёт вам белый IP-адрес, а прячет за собственным NAT вместе с другими абонентами — это и есть CGNAT (Carrier-Grade NAT). Классический проброс портов (port forwarding) здесь физически невозможен: нет самого внешнего адреса, на который его можно было бы настроить.
Всё, что описано в этой статье, работает за CGNAT без единого изменения. ZeroTier не требует открывать входящие порты вообще — роутеру достаточно исходящего UDP, который CGNAT никак не блокирует (раздел «Необходимые порты и сетевые требования»).
Проверить, что вы действительно за CGNAT, просто: сравните IP-адрес на WAN-интерфейсе MikroTik (System → Resources или /ip address print на интерфейсе провайдера) с тем, что показывает любой внешний сервис определения IP. Если адреса различаются — вы за CGNAT, и это нормально для ZeroTier.
Всё, что мы делали раньше, использовало облачную ZeroTier Central как управляющий слой сети. Но RouterOS умеет быть self-hosted controller — то есть сам решать, кто состоит в сети, какие адреса и маршруты раздавать, без обращения к чужому облаку:
/zerotier controller add name=zt-private instance=zt1 private=yes \
ip-range=172.27.27.10-172.27.27.20 routes=172.27.27.0/24
Параметр private=yes включает ручное подтверждение новых узлов, только управление теперь происходит из терминала RouterOS, а не из веб-консоли.
Это не то же самое, что Moon-сервер из раздела «Собственный Moon-сервер»: контроллер решает вопрос членства в сети, а не вопрос независимости маршрутизации трафика — тот остаётся за Moon, которого в RouterOS пока нет. Даже с собственным контроллером узлы по-прежнему могут обращаться к публичным root-серверам ZeroTier Inc для установления P2P-соединения.
Технические факты в статье сверены с официальной документацией MikroTik и ZeroTier, а также независимыми источниками по состоянию на август 2026 года:
-
MikroTik Documentation — ZeroTier (RouterOS): help.mikrotik.com/docs/spaces/ROS/pages/83755083/ZeroTier
-
ZeroTier Documentation — MikroTik: docs.zerotier.com/mikrotik/
-
ZeroTier — тарифы и лимиты бесплатного Personal-плана: zerotier.com/pricing/
-
TechOverflow — поддерживаемые модели MikroTik для ZeroTier: techoverflow.net/2022/08/22/which-mikrotik-devices-support-zerotier/
-
MKController — обзор изменений в RouterOS 7.18: mkcontroller.com/docs/reference/mikrotik-routeros-7-18-improvements/
-
MikroTik RouterOS Docs — BGP Peering (eBGP/iBGP): mikrotikdocs.fyi/routing/bgp-peering-ebgp-ibgp/
-
GnTech Blog — настройка BGP в RouterOS 7: blog.gntech.me/posts/2026-05-29-mikrotik-routeros7-bgp-configuration/
