IP в IP — это протокол туннелирования IP , который инкапсулирует один пакет IP в другой пакет IP. Чтобы инкапсулировать пакет IP в другой пакет IP, добавляется внешний заголовок с Source IP, точкой входа туннеля, и Destination IP, точкой выхода туннеля. При этом внутренний пакет остается неизменным (за исключением поля TTL, которое уменьшается). Поля Don't Fragmentи Type Of Serviceдолжны быть скопированы во внешний пакет. Если размер пакета, включая внешний заголовок, больше , инкапсулятор фрагментирует пакет. Декапсулятор повторно соберет пакет.Path MTU
ИСпакет, инкапсулированный в IP-пакет
Внешний заголовок IP имеет следующие поля:
Версия: 4 бита
Это поле — номер версии интернет-протокола. Установите 4, чтобы указать IPv4.
Длина интернет-заголовка (IHL): 4 бита
Это поле представляет собой длину внешнего заголовка IP.
Это поле представляет собой длину инкапсулированного IP-пакета (включая внешний IP-заголовок, внутренний IP-заголовок, полезную нагрузку IP).
Идентификация: 16 бит
Это поле используется для идентификации фрагментов датаграммы, что будет полезно при повторной сборке датаграммы, поскольку инкапсулятор может фрагментировать датаграмму. Для внешнего заголовка IP генерируется новый номер.
Флаги: 3 бита
В этом поле определены три флага.
Зарезервировано (R): 1 бит
Зарезервировано. Должно быть установлено на 0.
Не фрагментировать (DF): 1 бит
Это поле указывает, может ли датаграмма быть фрагментирована или нет. Если этот бит установлен в 1 во внутреннем заголовке, то во внешнем заголовке этот бит также установлен в 1, что говорит о том, что эта датаграмма не может быть фрагментирована. Если этот бит установлен в 0 во внутреннем заголовке, то во внешнем заголовке может быть установлено в 0 или 1.
Дополнительные фрагменты (MF): 1 бит
Это поле обязательно, когда датаграмма фрагментирована, говоря о том, содержит ли датаграмма еще какие-то фрагменты. Это поле не копируется из внутреннего заголовка.
Смещение фрагмента: 13 бит
Это поле используется при повторной сборке фрагментов.
Это поле используется для отслеживания времени жизни датаграммы. Внутренний заголовок TTL уменьшается перед инкапсуляцией и не изменяется в декапсуляторе. Внешний заголовок TTL устанавливается на значение, при котором датаграмма доставляется в конечную точку туннеля.
Это поле указывает протокол транспортного уровня датаграммы, следующей за этим заголовком. Значение установлено на 4 для IP в IP. Не путать со значением 4 в поле Version , которое указывает на IPv4.
Контрольная сумма заголовка: 16 бит
Это поле представляет собой контрольную сумму IP внешнего заголовка.
Исходный IP-адрес: 32 бита
Это поле представляет собой IP-адрес инкапсулятора.
IP-адрес назначения: 32 бита
Это поле представляет собой IP-адрес декапсулятора.
Параметры: 0 - 320 бит, дополненные до кратных 32 бит
Это поле в общем случае НЕ копируется из внутреннего заголовка IP. Могут быть добавлены новые опции.
^ C. Perkins (октябрь 1996 г.). Инкапсуляция IP в IP. Сетевая рабочая группа. doi : 10.17487/RFC2003 . RFC 2003. Предложенный стандарт. Обновлен RFC 3168 и 6864.