Fexyn
Fexyn

Глоссарий

Что такое VPN tunneling

Заворачивание IP-пакетов внутрь пакетов другого протокола, чтобы они путешествовали по ненадёжной сети инкапсулированными.

Tunneling — техника переноса одного сетевого протокола внутри другого. VPN-туннель берёт IP-пакеты, которые твоё устройство в норме отправляет в открытый интернет, оборачивает их в другой протокол и форвардит на VPN-сервер, который разворачивает их с другой стороны. Внутренние пакеты не достигают локальной сети — только внешняя обёртка.

Слово "туннель" — метафора. Никакой физической трубы и никакого выделенного маршрута. Пакеты идут по тем же роутерам, свитчам и подводным кабелям, что и всё остальное. Меняется то, что эти роутеры могут видеть: только внешнюю обёртку.

Как работает инкапсуляция на самом деле

У каждого IP-пакета есть заголовок (куда идёт, откуда, какой протокол несёт) и payload (данные). Tunneling рассматривает весь оригинальный пакет — заголовок и payload — как непрозрачные байты, потом строит вокруг новый пакет.

WireGuard-туннель работает так: устройство хочет отправить TCP-пакет на 1.1.1.1. WireGuard шифрует весь этот пакет ChaCha20-Poly1305, добавляет свой заголовок, оборачивает результат в UDP-датаграмму и отправляет эту датаграмму на публичный IP VPN-сервера на порт 51820. Для локальной сети единственный видимый пакет — "UDP от твоего устройства к VPN-серверу". TCP-пакет внутри нечитаем.

VPN-сервер реверсирует процесс: получает UDP, снимает заголовок WireGuard, расшифровывает и форвардит внутренний пакет в его настоящий destination.

Что туннелируют разные протоколы

Каждый VPN-протокол определяется в основном тем, что он туннелирует внутри чего.

  • WireGuard туннелирует IP-пакеты внутри UDP. Заголовок фиксированного размера, минимальный. Описан в Donenfeld 2017.
  • OpenVPN туннелирует IP-пакеты внутри TLS, который сам идёт по TCP или UDP. TLS handshake устанавливает session-ключи; data-пакеты шифруются AES-GCM или ChaCha20. См. RFC основополагающего TLS.
  • IPsec туннелирует IP-пакеты внутри Encapsulating Security Payload (ESP) заголовка, описанного в RFC 4303. ESP идёт прямо поверх IP (протокол 50) или, для NAT traversal, поверх UDP/4500.
  • VLESS Reality туннелирует IP-пакеты внутри кастомного VLESS-frame, внутри TLS 1.3, внутри TCP. TLS handshake форвардит настоящий сторонний сертификат, делая соединение статистически неотличимым от обычного HTTPS. См. Reality.

Общий момент в том, что внутренние пакеты никогда не появляются в публичной сети в исходной форме.

Tunneling vs шифрование

Часто путают. Tunneling — это инкапсуляция, шаг обёртки. Шифрование — делает обёрнутое содержимое нечитаемым. Туннель может существовать без шифрования (GRE, IP-in-IP), и шифрование может существовать без tunneling (TLS поверх одного TCP-соединения). VPN делают и то и другое: инкапсулируют, потом шифруют инкапсулированный payload.

Практическое следствие: любой, кто наблюдает сеть, видит только внешнюю обёртку. Знает, что ты говоришь с конкретным VPN-сервером и примерно сколько данных движется. Не знает, какие сайты ты посещаешь, какие приложения открыты, на какие IP нацелены внутренние пакеты.

Почему форма туннеля имеет значение

Сетевые противники не могут читать содержимое туннеля, но видят, что он есть. UDP-сигнатура WireGuard распознаваема; некоторые сети её блокируют. OpenVPN over TCP-443 на первый взгляд выглядит как HTTPS, но имеет признаки под deep packet inspection. Reality идёт дальше, обеспечивая, чтобы внешняя обёртка была неотличима от настоящего TLS-соединения с популярным сайтом.

Выбор протокола туннеля определяет, что наблюдатель может детектировать, что может заблокировать и сколько overhead на пакет. Тонкий заголовок WireGuard стоит примерно 32 байта на пакет. OpenVPN over TCP стоит больше и добавляет head-of-line blocking. Выбор правильного туннеля — центральное решение в дизайне любого VPN-клиента.

Связанные термины

Попробуй Fexyn бесплатно 7 дней

Приложение для Windows доступно сейчас в бета-версии. WireGuard, VLESS Reality и OpenVPN — без логов истории просмотров, DNS-запросов и содержимого трафика.

Цены
Что такое VPN tunneling | Fexyn VPN