Схема EoIP-туннеля MikroTik: конфигурация по документации RouterOS

Настройка туннеля EOIP на MikroTik — это создание проприетарного канала второго уровня по инкапсуляции Ethernet-фреймов в GRE поверх IP (protocol 47). Технология поддерживается только оборудованием MikroTik под управлением RouterOS и позволяет объединить удалённые офисы в один широковещательный домен без выделенного L2VPN у провайдера.

Что такое туннель EOIP и как он работает в RouterOS

EOIP — это Ethernet over IP tunnel, проприетарный протокол MikroTik, реализованный в RouterOS с 2005 года. По документации wiki.mikrotik.com протокол является расширением GRE (Generic Routing Encapsulation, RFC 2784, март 2000 года). Заголовок EOIP добавляет 42 байта: 20 байт IP-заголовка, 8 байт GRE-заголовка, 14 байт исходного Ethernet-фрейма.

Спецификация EOIP не является открытой — совместимости с оборудованием других вендоров (Cisco, Juniper, Huawei) EOIP не гарантирует. Настройка туннеля EOIP возможна только между двумя устройствами под RouterOS: аппаратными маршрутизаторами MikroTik, CHR (Cloud Hosted Router) или x86-сборкой. По данным официального wiki, поддерживаются до 65 536 одновременных туннелей на одном устройстве.

После установления туннель работает как виртуальный Ethernet-интерфейс: его можно добавить в bridge, назначить IP-адрес, повесить VLAN. Именно это делает EOIP удобным для объединения LAN-сегментов удалённых офисов в общий broadcast-домен.

Подготовка перед созданием туннеля EOIP

Настройка туннеля EOIP требует подготовки на обеих сторонах. По документации MikroTik нужны статические публичные IP-адреса либо динамический адрес с работающим Dynamic DNS. Без внешней доступности хотя бы одной стороны установить соединение невозможно.

Проверьте прохождение GRE через промежуточных провайдеров — не все ISP пропускают protocol 47. Также убедитесь, что MTU физического канала позволяет накрутить дополнительные 42 байта: типичное значение MTU интерфейса EOIP — 1400 байт при физическом канале 1500 (Ethernet). При работе через PPPoE или L2TP запас MTU нужно уменьшать до 1360–1380 байт, иначе пакеты будут фрагментироваться.

Также необходим уникальный Tunnel ID — целое число от 0 до 65 535. Значение должно совпадать на обеих сторонах туннеля EOIP: если на одном роутере указан ID 10, то и на втором тоже 10. Разные ID означают разные туннели, они не соединятся. В компаниях с несколькими офисами имеет смысл вести таблицу назначенных Tunnel ID — иначе через год эксплуатации сложно вспомнить, какой номер уже занят и почему новый канал между филиалами вдруг перестал подниматься.

Создание EOIP через WinBox — пошаговая инструкция

По документации MikroTik настройка туннеля EOIP через WinBox выполняется в пять шагов и занимает 5–7 минут на каждой стороне.

Шаг 1. Откройте WinBox и подключитесь к первому роутеру. Далее откройте раздел Interfaces, нажмите «+» и выберите EoIP Tunnel.

Шаг 2. В открывшемся окне определите имя интерфейса (например, eoip-office1), MTU 1400, Tunnel ID (например, 100), Remote Address — публичный IP второго роутера. Нажмите OK.

Шаг 3. Затем повторите настройку на втором роутере: имя eoip-office2, MTU 1400, Tunnel ID 100, Remote Address — публичный IP первого роутера.

Шаг 4. Далее объедините EOIP-интерфейс с LAN-мостом. Откройте Bridge → Ports, нажмите «+», выберите интерфейс eoip-office1 и bridge с локальной сетью. Повторите на втором роутере.

Шаг 5. Установите проверку: откройте New Terminal и выполните ping на IP-адрес удалённого хоста в LAN. Ответ подтверждает, что настройка туннеля EOIP завершена корректно.

Команды CLI для настройки туннеля EOIP

Опытные администраторы предпочитают CLI — команды короче и точнее. Настройка через терминал по документации RouterOS выглядит так на роутере A (публичный IP 203.0.113.1) и роутере B (публичный IP 198.51.100.2).

На роутере A: /interface eoip add name=eoip-B remote-address=198.51.100.2 tunnel-id=100 mtu=1400. Затем добавьте интерфейс в мост: /interface bridge port add bridge=bridge-lan interface=eoip-B.

На роутере B: /interface eoip add name=eoip-A remote-address=203.0.113.1 tunnel-id=100 mtu=1400, затем /interface bridge port add bridge=bridge-lan interface=eoip-A. Далее проверьте статус: /interface eoip print — поле R (running) должно быть заполнено, что означает установленное соединение.

Опционально задайте параметр local-address= — если у роутера несколько внешних IP, RouterOS выберет исходящий адрес по таблице маршрутизации, что может сломать асимметричные каналы. Явное указание local-address устраняет проблему. Параметр keepalive=10,3 заставляет RouterOS отправлять keepalive-пакеты каждые 10 секунд и считать туннель упавшим после 3 пропущенных подтверждений — это ускоряет обнаружение обрыва канала связи.

Шифрование EOIP поверх IPsec — работа с секретами

По стандарту GRE трафик EOIP передаётся в открытом виде — протокол не шифруется. Для конфиденциальности используется связка EOIP + IPsec, официально описанная в документации wiki.mikrotik.com в разделе IPsec/Site-to-Site.

Шифрование включается через параметры туннеля: в свойствах EOIP-интерфейса заполните поля IPsec Secret (общий ключ) и Allow Fast Path = no. RouterOS автоматически создаст IPsec-политику с ESP-инкапсуляцией и AES-256-CBC по умолчанию, что соответствует рекомендациям RFC 8221 (октябрь 2017 года).

Пропускная способность после включения IPsec падает: по внутренним тестам MikroTik на устройстве hEX (RB750Gr3) чистый EOIP держит 900 Мбит/с, а с шифрованием — около 200 Мбит/с из-за отсутствия аппаратного ускорения AES. На устройствах серии CCR с чипом Tilera-Gx пропускная способность с IPsec достигает 3–5 Гбит/с. Для устройств CCR2004 и CCR2116 с поддержкой аппаратного AES-NI средняя задержка добавления IPsec составляет около 2 миллисекунд на пакет, что делает связку EOIP+IPsec пригодной даже для VoIP-трафика с чувствительностью к джиттеру.

Отличие EOIP от других туннелей MikroTik

Настройка туннеля EOIP отличается от PPTP, L2TP и OpenVPN по уровню OSI и функциональности. EOIP работает на втором уровне (L2), а PPTP/L2TP/OpenVPN — на третьем (L3). Это значит, что через EOIP проходят broadcast-фреймы, ARP, DHCP-запросы и любой не-IP-трафик.

По сравнению с GRE (RFC 2784) EOIP инкапсулирует не только IP-пакеты, но и весь Ethernet-фрейм с MAC-адресами. По сравнению с VXLAN (RFC 7348, август 2014 года) EOIP проще в настройке, но не поддерживает multicast для управления рассылками и не имеет VNI-идентификаторов. По сравнению с L2TPv3 EOIP быстрее и легче, но лишён стандартизации и совместимости.

EOIP не рекомендуется использовать через нестабильные каналы: при потерях пакетов broadcast-шторм в объединённом домене может парализовать LAN обеих сторон. В таких случаях лучше применять L3-туннели с маршрутизацией. По внутренним тестам MikroTik, при задержке канала свыше 60 миллисекунд производительность EOIP падает на 40–60% из-за особенностей обработки Ethernet-фреймов. Для географически распределённых площадок разумный компромисс — сочетание EOIP с BGP-маршрутизацией по IP-подсетям офисов.

Типичные ошибки и ограничения EOIP

Настройка туннеля EOIP имеет ряд ограничений, о которых прямо сказано в документации. Знание типовых ошибок экономит часы диагностики.

Туннель не поднимается: причины и проверка

Флаг R в выводе /interface eoip print отсутствует — соединение не установлено. Причины: провайдер режет GRE (protocol 47), несовпадающий Tunnel ID, неверный Remote Address, NAT без DMZ на промежуточном роутере, брандмауэр блокирует входящий GRE. Проверка: /tool sniffer quick protocol=gre покажет, доходят ли пакеты до внешнего интерфейса роутера.

Петля через bridge и broadcast-шторм

Если два туннеля EOIP соединяют одни и те же LAN-сегменты в кольцо без STP, возникает петля второго уровня. Broadcast-шторм за секунды забивает канал и роняет обе площадки. По рекомендации wiki.mikrotik.com обязательно включайте RSTP на bridge: /interface bridge set bridge-lan protocol-mode=rstp. Дополнительно рекомендуется ограничить широковещательный и multicast-трафик через bridge filter, чтобы посторонние DHCP-серверы и mDNS-объявления одного офиса не проникали во второй и не создавали конфликтов IP-адресации между сегментами.

Вопрос-ответ

Что такое EOIP простыми словами? Ethernet over IP — проприетарный туннель MikroTik, который передаёт Ethernet-фреймы поверх IP через GRE. Позволяет объединить LAN двух офисов в один L2-домен.

Совместим ли EOIP с Cisco или Juniper? Нет. EOIP не является открытым стандартом IETF, его реализация есть только в RouterOS. Для межвендорной связи используйте L2TPv3, VXLAN или EVPN — эти протоколы стандартизированы и поддерживаются большинством современных корпоративных маршрутизаторов.

Какой MTU установить на EOIP-интерфейсе? По документации MikroTik — 1400 байт при физическом MTU 1500. Если ниже, канал становится «узким горлышком» и производительность падает.

Нужен ли статический IP для EOIP? Да, либо статический публичный IP хотя бы на одной стороне, либо работающий Dynamic DNS. Через двусторонний NAT без проброса protocol 47 туннель не поднимется.

Оцените статью
uchet-jkh.ru
Добавить комментарий