GRE — Загальна інкапсуляція маршрутизації¶
GRE (Generic Routing Encapsulation) — протокол тунелювання від Cisco, що дозволяє інкапсулювати пакети будь-якого мережевого протоколу всередині IP-пакетів, утворюючи логічне з'єднання (тунель) між двома маршрутизаторами через довільну IP-мережу.
Опис¶
GRE додає мінімальний заголовок (4–16 байт) до оригінального пакету і вкладає результат у новий IP-пакет з протоколом 47. Завдяки простоті заголовка GRE підтримує передачу не лише IPv4, а й IPv6, IPX, MPLS та інших протоколів — звідси й назва "generic" (загальний). Тунельний інтерфейс GRE виглядає для ОС як звичайний мережевий інтерфейс, через який можна запускати динамічну маршрутизацію (OSPF, BGP) і будь-які інші сервіси.
Ключова особливість GRE — відсутність вбудованого шифрування і автентифікації. Це свідомий компроміс: простота і мала затримка важливіші за безпеку на рівні протоколу. Захист трафіку реалізується окремо — поверх GRE запускають IPsec (класична схема GRE over IPsec) або розгортають GRE всередині вже зашифрованого WireGuard-тунелю.
GRE підтримує keepalive — механізм перевірки доступності далекого кінця тунелю, що дозволяє автоматично перемикати маршрути при падінні з'єднання. Ще одна особливість — підтримка multicast: на відміну від більшості VPN-протоколів, GRE може передавати мультикастовий трафік, необхідний для роботи OSPF та інших протоколів динамічної маршрутизації.
MTU (Maximum Transmission Unit) є важливим параметром при налаштуванні GRE: кожен рівень інкапсуляції зменшує MTU на розмір заголовка. Неправильний MTU призводить до фрагментації або "мовчазних" втрат пакетів, що важко діагностувати. Типово встановлюють MTU 1476 для GRE over IPv4 (1500 − 24 байти заголовка GRE+IP).
В контексті UMTC¶
У мережах UMTC GRE використовується переважно там, де потрібно запустити протокол динамічної маршрутизації між вежами — наприклад, OSPF для автоматичного перерахунку маршрутів при зміні топології mesh-мережі. OSPF потребує multicast, який GRE передає, а WireGuard — ні.
Типовий сценарій: GRE-тунелі між MikroTik-роутерами позицій, захищені IPsec, з OSPF, що автоматично розповсюджує маршрути до підмереж абонентів. При падінні одного зі з'єднань OSPF перераховує маршрути через альтернативний шлях за лічені секунди.
RouterOS підтримує GRE через інтерфейс /interface gre. Для налаштування потрібно лише вказати локальну і віддалену IP-адресу; все інше — звичайна IP-конфігурація на тунельному інтерфейсі.
Пов'язані терміни¶
- ipsec — протокол захисту, що застосовується поверх GRE для шифрування тунелю
- ospf — протокол динамічної маршрутизації, який часто запускають всередині GRE-тунелів
- bgp — протокол маршрутизації між автономними системами, сумісний з GRE
- vxlan — альтернативний протокол тунелювання, орієнтований на L2-з'єднання у датацентрах
- wireguard — сучасна захищена альтернатива для L3-тунелів без підтримки multicast
- mikrotik — платформа, де GRE налаштовується через /interface gre
Посилання¶
- RFC 2784 — GRE — базова специфікація протоколу
- RFC 2890 — GRE Key and Sequence Number — розширення заголовка
- MikroTik: GRE Tunnel — налаштування в RouterOS
Шлях: glossary/gre.md