Сервис туннелей

Сервис туннелей (англ. tunnel broker) — это служба, предоставляющая сетевой туннель. Такие туннели обеспечивают инкапсулированное соединение через существующую инфраструктуру к другой инфраструктуре.

Существует множество сервисов туннелей, в том числе служб туннелирования IPv4, однако зачастую данный термин применяется к сервисам туннелей IPv6, как определено в .

Обычно сервисы туннелей IPv6 предоставляют доступ к IPv6 для сетей или отдельных пользователей через IPv4. Как правило, такие сервисы используют так называемые туннели «protocol 41» (proto-41). В них IPv6 инкапсулируется непосредственно внутри пакетов IPv4 посредством установки поля протокола в значение 41 (IPv6) в IPv4-пакете. В случае сервисов туннелей IPv4 туннели предоставляются посредством инкапсуляции IPv4 внутри IPv6, как определено в .

Автоматизированная настройка

Настройка туннелей IPv6 обычно осуществляется с помощью протокола настройки туннелей (TSP) или протокола Tunnel Information Control (TIC). Клиентом, способным на это, является Automatic IPv6 Connectivity Client Utility. Кроме того, TSP может применяться для настройки и туннелей IPv4.

Проблемы с NAT

Туннели proto-41 (прямая инкапсуляция IPv6 в IPv4) могут некорректно работать при расположении за NAT. Один из способов обойти это — назначить фактической конечной точкой туннеля DMZ на оборудовании с NAT. Другая возможность — использовать протоколы AYIYA или TSP, которые отправляют IPv6 внутри пакетов UDP, что позволяет им проходить через большинство схем NAT и даже брандмауэры.

Проблема может возникнуть также из-за истечения состояния в устройстве NAT: NAT запоминает факт исходящего пакета в Интернет, и разрешает ответные пакеты, связанные с изначальным proto-41 пакетом. После истечения этого состояния никакие пакеты из Интернета не принимаются. Это нарушает работоспособность туннеля до тех пор, пока узел пользователя не отправит новый пакет сервису туннелей.

Динамические конечные точки

Если конечная точка не обладает статическим IP-адресом, пользователь или программа должен проинформировать сервис туннелей об изменении адреса конечной точки. Это можно сделать на сайте сервиса либо с помощью автоматизированного протокола, такого как TSP или Heartbeat, используемого в AICCU. В случае службы, использующей TSP, клиент, автоматически инициирующий туннель, обеспечит обновление адреса и порта конечной точки.

Реализации

Первая реализация сервиса туннелей IPv6 была создана в итальянской компании CSELT S.p.A. Ивана Гуардини, автора RFC 3053[1].

Существует ряд сервисов туннелей с собственными реализациями, разработанными в зависимости от различных целей. Ниже приведены наиболее распространённые реализации, применяемые ведущими сервисами туннелей IPv6.

Gogo6 gogoSERVER

gogoSERVER (ранее — Gateway6) использовался в сервисе Freenet6, являвшемся второй по времени внедрения службой туннелей IPv6 (коммерческий запуск — 1999 год). Проект изначально был инициирован Viagenie, затем для коммерческой реализации Gateway6 была выделена компания Hexago, распространявшая Gateway6 (основа Freenet6) как флагманский продукт. В июне 2009 года компания Hexago стала называться gogo6 в результате выкупа менеджментом, а Freenet6 был интегрирован в gogoNET, социальную сеть для специалистов по IPv6[2]. 23 марта 2016 года все сервисы Freenet6/Gogo6 были прекращены.

SixXS sixxsd

sixxsd от SixXS — программное обеспечение, используемое на всех точках присутствия (PoP) SixXS. Это специально разработанное ПО для туннелирования с высокой производительностью и низкими задержками. Разработка sixxsd началась в 2002 году[3] и со временем эволюционировала до версии v4. ПО доступно для интернет-провайдеров, развёртывающих точки присутствия SixXS. Изначально, в 2000 году, SixXS использовал bash-скрипты[4]. Из-за проблем масштабируемости и других ограничений было разработано решение sixxsd. 6 июня 2017 года сервис туннелей SixXS был окончательно закрыт.

CITC ddtb

CITC Tunnel Broker, управляемый рабочей группой IPv6 Task Force Саудовской Аравии, использует собственную реализацию RFC для TSP под названием 'ddtb'[5].

Примечания