Введение

Канал связи между двумя сетями

IP-туннель — это канал связи сети Интернет-протокола (IP) между двумя сетями. Он используется для передачи другого сетевого протокола посредством инкапсуляции его пакетов. IP-туннели часто используются для соединения двух изолированных IP-сетей, не имеющих прямого маршрута друг к другу, через базовый маршрутизируемый протокол через промежуточную транспортную сеть. В сочетании с протоколом IPsec они могут использоваться для создания виртуальной частной сети между двумя или более частными сетями через общедоступную сеть, такую как Интернет. Другое распространенное применение — соединение фрагментированных установок IPv6 через сеть IPv4. При IP-туннелировании каждый IP-пакет, включая адресную информацию исходной и целевой IP-сетей, инкапсулируется в другой формат пакета, характерный для транзитной сети. На границах между исходной сетью и транзитной сетью, а также между транзитной сетью и целевой сетью, используются шлюзы, которые устанавливают конечные точки IP-туннеля в транзитной сети. Таким образом, конечные точки IP-туннеля становятся стандартными IP-маршрутизаторами, устанавливающими стандартный IP-маршрут между исходной и целевой сетями. Пакеты, проходящие через эти конечные точки из транзитной сети, освобождаются от заголовков и заключительных данных формата транзитного кадра, используемых в протоколе туннелирования, и преобразуются в собственный формат IP, после чего передаются в IP-стек конечных точек туннеля. Кроме того, любые другие протокольные инкапсуляции, используемые во время передачи, такие как IPsec или Transport Layer Security, удаляются. IP в IP, иногда называемый ipencap, является примером инкапсуляции IP в IP и описан в RFC 2003. Другие варианты IP в IP включают IPv6 в IPv4 (6in4) и IPv4 в IPv6 (4in6). IP-туннелирование часто прозрачно обходит простые правила брандмауэра, поскольку скрыта специфическая природа и адресация исходных датаграмм. Для блокировки IP-туннелей обычно требуется программное обеспечение для управления контентом.

История

Первая спецификация IP-туннелирования была представлена в RFC 1075, где описывался DVMRP – первый протокол маршрутизации IP-мультикаста. Поскольку мультикаст использовал специальные IPv4-адреса, для тестирования DVMRP требовался способ передачи IP-дейтаграмм через участки Интернета, которые ещё не поддерживали мультикаст-адреса. Решением стало IP-туннелирование. Первоначальный подход к IP-туннелированию использовал опцию IP Loose Source Route and Record (LSRR) для сокрытия мультикаст-адреса от маршрутизаторов, не поддерживающих мультикаст. Маршрутизатор назначения, поддерживающий мультикаст, удалял опцию LSRR из пакета и восстанавливал мультикаст-адрес в поле IP-адреса назначения пакета. Другим подходом, описанным в спецификации DVMRP, был IP в IP. IP в IP вскоре стал предпочтительным методом и впоследствии был использован в Mbone.