Универсальная инкапсуляция маршрутизации - Generic Routing Encapsulation

Универсальная инкапсуляция маршрутизации
Протокол связи
ЦельСетевое туннелирование
Разработчики)Cisco Systems
Введено1994[1]
RFC (ы)RFC1701, RFC1702, RFC2784

Универсальная инкапсуляция маршрутизации (GRE) это протокол туннелирования разработан Cisco Systems это может инкапсулировать Большое разнообразие сетевой уровень протоколы внутри виртуального двухточечные ссылки или многоточечные связи через протокол Интернета сеть.

Пример использования

  • В сочетании с PPTP создать VPN.
  • В сочетании с IPsec VPN чтобы разрешить передачу маршрутной информации между подключенными сетями.
  • В мобильность протоколы.
  • В A8 / A10 интерфейсы для инкапсуляции IP-данных в / из функции управления пакетами (PCF).
  • Linux и BSD может устанавливать специальный IP-адрес через туннели GRE, которые совместимы с оборудованием Cisco.
  • Распределенный отказ в обслуживании (DDoS) защищенное устройство на незащищенное конечная точка.

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

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

Основываясь на принципах многоуровневости протокола в OSI, инкапсуляция протокола, а не конкретно GRE, нарушает порядок уровней. Его можно рассматривать как разделитель между двумя разными стеками протоколов, один из которых выступает в качестве носителя для другого.

IP как протокол доставки

Пакеты GRE, инкапсулированные в IP использовать протокол IP тип 47.[2]

Заголовок пакета

Стандартный заголовок пакета GRE (RFC2784)

Стандартный GRE заголовок пакета структура, как определено RFC 2784 и RFC 2890, представлен на диаграмме ниже.

0Биты 1–1213–1516–31
CЗарезервировано0ВерсияТип протокола
Контрольная сумма (необязательный)Зарезервировано1 (необязательный)
C
Контрольная сумма немного. Установите в 1, если присутствует контрольная сумма.
Зарезервировано0
Зарезервированные биты; установлен на 0.
Версия
Номер версии GRE; установлен на 0.
Тип протокола
Указывает на тип протокола эфира инкапсулированной полезной нагрузки. (Для IPv4, это будет шестнадцатеричный код 0800.)
Контрольная сумма
Присутствует, если установлен бит C; содержит контрольную сумму для заголовка GRE и полезной нагрузки.
Зарезервировано1
Присутствует, если установлен бит C; установлен на 0.


Стандартный заголовок пакета GRE (RFC1701, устаревший)

Более новая структура заменила исходную структуру, как определено в RFC 1701:

Биты 0–45–78-1213–1516–31
CрKSsПовторятьФлагиВерсияТип протокола
Контрольная сумма (необязательный)Смещение (необязательный)
Ключ (необязательный)
Порядковый номер (необязательный)
Маршрутизация (необязательно, переменной длины)

В исходном GRE RFC определены дополнительные поля в заголовке пакета, которые устарели в текущем стандарте:

р
Бит маршрутизации. Установите в 1, если присутствует информация о маршрутизации и смещении.
K
Ключевой бит. Установите в 1, если ключ присутствует.
S
Бит порядкового номера. Установите в 1, если присутствует порядковый номер.
s
Бит строгого исходного маршрута.
Повторять
Рекурсия биты управления.
Флаги
Зарезервировано для использования в будущем, установлено на 0.
Смещение
Присутствует, если установлен бит R или C; содержит действительную информацию, только если установлен бит R. Поле смещения, указывающее смещение в пределах Маршрутизация поле к активной записи исходного маршрута
Ключ
Присутствует, если установлен бит K; содержит значение ключа для конкретного приложения.
Порядковый номер
Присутствует, если установлен бит S; содержит порядковый номер пакета GRE.
Маршрутизация
Присутствует, если установлен бит R; содержит список записей исходного маршрута, поэтому имеет переменную длину

Заголовок пакета PPTP GRE

В Туннельный протокол точка-точка (PPTP), определенный в RFC 2637, использует вариантную структуру заголовка пакета GRE, представленную ниже. PPTP создает туннель GRE, через который отправляются пакеты PPTP GRE.

Биты 0–45–789-1213–1516–31
CрKSsПовторятьАФлагиВерсияТип протокола
Длина ключевой полезной нагрузкиКлючевой идентификатор вызова
Порядковый номер (необязательный)
Номер подтверждения (необязательный)
C
Контрольная сумма немного. Для пакетов PPTP GRE это значение равно 0.
р
Бит маршрутизации. Для пакетов PPTP GRE это значение равно 0.
K
Ключевой бит. Для пакетов PPTP GRE установлено значение 1. (Все пакеты PPTP GRE несут ключ.)
S
Бит порядкового номера. Установите 1, если указан порядковый номер, указывающий на пакет данных PPTP GRE.
s
Бит строгого исходного маршрута. Для пакетов PPTP GRE это значение равно 0.
Повторять
Рекурсия биты управления. Для пакетов PPTP GRE они установлены в 0.
А
Присутствует номер подтверждения. Установите в 1, если предоставляется номер подтверждения, указывающий на пакет подтверждения PPTP GRE.
Флаги
Биты флагов. Для пакетов PPTP GRE они установлены в 0.
Версия
Номер версии GRE. Для пакетов PPTP GRE установлено значение 1.
Тип протокола
Для пакетов PPTP GRE это шестнадцатеричное значение 880B.
Длина ключевой полезной нагрузки
Содержит размер полезной нагрузки, не включая заголовок GRE.
Ключевой идентификатор вызова
Содержит идентификатор вызова однорангового узла для сеанса, которому принадлежит пакет.
Порядковый номер
Присутствует, если установлен бит S; содержит порядковый номер полезной нагрузки GRE.
Номер подтверждения
Присутствует, если установлен бит A; содержит порядковый номер самого высокого пакета полезной нагрузки GRE, полученного отправителем.

Стандарты

  • RFC 1701: Универсальная инкапсуляция маршрутизации (GRE) (информационный)
  • RFC 1702: Общая инкапсуляция маршрутизации в сетях IPv4 (информационный)
  • RFC 2637: Туннельный протокол точка-точка (информационный)
  • RFC 2784: Универсальная инкапсуляция маршрутизации (GRE) (предлагаемый стандарт, обновленный RFC 2890 )
  • RFC 2890: Расширения ключа и порядкового номера в GRE (предлагаемый стандарт)
  • RFC 8086: Инкапсуляция GRE в UDP (предлагаемый стандарт)

Смотрите также

Виртуализация сети с использованием универсальной инкапсуляции маршрутизации - передает пакеты L2 через GRE

использованная литература

  1. ^ Универсальная инкапсуляция маршрутизации (GRE). IETF. Октябрь 1994 г. Дои:10.17487 / RFC1701. RFC 1701. Получено 14 мая, 2018.
  2. ^ RFC 1702: Общая инкапсуляция маршрутизации в сетях IPv4. Октябрь 1994 г.

внешние ссылки