Miami-art.ru

Создание и развитие сайта

GRE (протокол)

13-06-2023

Перейти к: навигация, поиск

GRE (Номер протокола в IP — 47.

Туннелирование подразумевает три протокола:

  • пассажир — инкапсулированный протокол (IP, CLNP, IPX, AppleTalk, DECnet Phase IV, XNS, VINES и Apollo)
  • протокол инкапсуляции (GRE)
  • транспортный протокол (UDP)
Пример работы GRE туннеля. Между двумя маршрутизаторами A и B находится несколько маршрутизаторов, туннель позволяет обеспечить связь между сегментами сети 192.168.1.0/24 и 192.168.3.0/24 так, как если бы маршрутизаторы A и B были соединены прямым линком

Пример применения

Пример стека протоколов

Уровень модели OSI Протокол
5. Сеансовый X.225
4. Транспортный UDP
3. Сетевой (GRE-инкапсуляция) IPv6
Инкапсуляция GRE
3. Сетевой IPv4
2. Канальный Ethernet
1. Физический Ethernet

Как можно понять из схемы, инкапсуляция (не обязательно GRE) нарушает иерархию в модели OSI. Это явление можно рассматривать как разделитель между двумя стеками протоколов, где один выступает "поставщиком услуг" для другого.

Проблема DF-бита

В связи со служебным заголовком размер передаваемых данных внутри IP пакета через GRE-туннель уменьшается при сохранении общего размера пакета. В IP-пакете предусмотрено наличие бита DF (do not fragment), запрещающего разделение пакета на несколько при передаче через среду с меньшим размером MTU. В этом случае пакет с размером полезной области данных (англ. payload), превышающим MTU IP пакета в GRE-туннеле, отбрасывается, что приводит к потерям пакетов при существенной нагрузке (проходят пакеты малого размера, такие как SYN пакеты TCP, ICMP сообщения (ping), но теряются пакеты с данными в TCP потоке (то есть соединение рвётся)). Для решения этой проблемы рекомендуется использовать path-mtu-discovery (определение TCP MSS, то есть максимального размера IP-пакетов на всём пути) при передаче данных через GRE-туннель, чтобы избежать избыточной фрагментации или потери больших пакетов.[1][2]

Проблема NATа

Так как GRE является протоколом сетевого уровня и не использует порты (как протоколы TCP или UDP), а одним из необходимых условий работы механизма PAT является наличие «открытого» порта, то работа протокола GRE через межсетевой экран может быть затруднена[3].

Частным случаем решения проблемы для протокола PPTP является технология PPTP Passthrough, в этом случае межсетевой экран «разрешает» исходящие (клиентские) подключения из защищённой сети.

Примечания

  1. [1]
  2. [2]
  3. NAT and PPTP

Ссылки

  • Проблема DF бита и фрагментации в GRE туннелях
  • Создание VPN GRE туннеля в Linux
  • 1994
  • 1994
  • 2000
  • 2000


GRE (протокол).

© 2018–2023 miami-art.ru, Россия, Смоленск, ул. Загорская 8, офис 99, +7 (4812) 12-23-90