EN EN

🛠️ EoIP не соединяется: Чек-лист отладки туннеля (MikroTik)

Опубликовано 16.10.2025

🛠️ EoIP не соединяется: Чек-лист отладки туннеля (MikroTik)

Протокол EoIP (Ethernet over IP) от MikroTik используется для создания L2-туннеля поверх IP-сети, позволяя объединить две удалённые локальные сети в один широковещательный домен.
Если ваш EoIP-туннель не устанавливается (нет флага “R” — Running), следуйте этому пошаговому чек-листу.


1. Проверка IP-связности (L3)

Перед началом убедитесь, что маршрутизаторы видят друг друга на уровне IP.

Ping до удалённой стороны:

/ping 203.0.113.2 count=4

Если пинг не проходит — проверьте маршруты и NAT:

/ip route print
/ip firewall nat print

Убедитесь, что маршрут до удалённого IP существует и NAT не перенаправляет GRE-трафик.

Правильные адреса: Проверьте, что в настройках EoIP в поле remote-address указан корректный WAN-IP противоположного маршрутизатора:

/interface eoip print

Пример:

0 name="eoip-tunnel1" mtu=1476 arp=enabled remote-address=203.0.113.2 tunnel-id=0

2. Проверка конфигурации EoIP-туннеля

Tunnel ID: Должен совпадать на обеих сторонах.

/interface eoip
add name=eoip-tunnel1 remote-address=203.0.113.2 tunnel-id=0

Local Address: Если WAN не основной:

local-address=192.168.1.1

Проверка состояния:

/interface print

Пример:

Flags: D - dynamic, X - disabled, R - running
 #   NAME            TYPE       MTU
 0 R ether1          ether      1500
 1   eoip-tunnel1    eoip       1476

Если флага R нет — туннель не активен.


3. Проверка Firewall (GRE и NAT) ⛔

Разрешение GRE:

/ip firewall filter
add chain=input protocol=gre action=accept comment="Allow GRE for EoIP"

Добавьте это правило на обоих маршрутизаторах в цепочку input.

NAT bypass: Если EoIP работает за NAT или внутри L2TP/IPsec, исключите повторный NAT:

/ip firewall nat
add chain=srcnat dst-address=203.0.113.2 action=accept comment="Bypass NAT for EoIP"

4. Проверка MTU (Maximum Transmission Unit) 📏

EoIP добавляет заголовки GRE и IP, уменьшая допустимый размер пакета.

Настройка MTU:

/interface eoip
set [find name=eoip-tunnel1] mtu=1400

Диагностика фрагментации:

/tool ping 203.0.113.2 size=1500 do-not-fragment

Если пинг с do-not-fragment не проходит — уменьшите MTU. Рекомендуемые значения:

  • PPPoE — 1300–1400
  • IPoE — 1450–1476

5. Проверка моста (Bridge) и L2-связности

Если туннель поднялся, но трафик не идёт:

Добавление в мост:

/interface bridge
add name=bridge1
/interface bridge port
add bridge=bridge1 interface=ether2
add bridge=bridge1 interface=eoip-tunnel1

Ether2 — локальный LAN, EoIP — туннель.

Проверка IP:

/ip address print

Убедитесь, что обе стороны находятся в одной подсети и нет IP-конфликтов.


6. Диагностика и логи

Логи:

/log print

Проверьте сообщения, связанные с GRE и EoIP.

Трассировка:

/tool traceroute 203.0.113.2

Используйте для проверки пути до удалённого маршрутизатора.


⚠️ Типичные ошибки и решения

ПроблемаПричинаРешение
Нет флага RНет IP-связностиПроверить ping, маршруты, NAT
Туннель есть, но нет трафикаEoIP не в bridgeДобавить в мост вместе с LAN
Периодические обрывыПровайдер блокирует GRE / меняется IPИспользовать IPsec или GRE поверх L2TP
Потери пакетовMTU слишком большойУменьшить MTU до 1400 или 1300
Одна сторона за NATGRE не проходитПробросить порт или использовать L2TP/IPsec
Разная маршрутизацияАсимметрия путейНастроить policy routing
PPPoE без MSS-clampПотеря TCP-сессий
/ip firewall mangle add chain=forward protocol=tcp tcp-flags=syn action=change-mss new-mss=1360 passthrough=yes comment="Clamp MSS for EoIP"
``` |
| GRE not allowed | Firewall блокирует GRE | Разрешить GRE в `input` и `forward` |
| Нет ARP | Неверный `local-address` или NAT | Указать корректный WAN-IP |

---

## 💡 Советы по надёжности

1. **Фиксируйте MTU вручную** — избегайте автоопределения.  
2. **Netwatch-мониторинг:**
 ```bash
 /tool netwatch add host=203.0.113.2 interval=1m up-script="/interface eoip enable eoip-tunnel1" down-script="/interface eoip disable eoip-tunnel1"
  1. Используйте IPsec при работе через публичные сети.

  2. Логируйте GRE-пакеты для диагностики:

    /ip firewall filter add chain=input protocol=gre action=log log-prefix="GRE-IN"
    

🧩 Резюме

Чек-лист для EoIP:

  1. Проверить IP-связь.
  2. Убедиться в совпадении tunnel-id.
  3. Разрешить GRE в Firewall.
  4. Проверить MTU.
  5. Добавить EoIP в Bridge.

После исправлений интерфейс должен появиться с флагом R (Running) и начать передавать трафик.


🔗 Полезные ссылки

Нужна помощь?

Свяжись со мной и я помогу решить проблему

Похожие посты