Что такое и для чего используются TUN/TAP на серверах

Что такое TUN и TAP?

TUN и TAP являются виртуальными сетевыми драйверами ядра системы. Основное назначение драйверов TUN/TAP обеспечивает прием и передачу сетевых пакетов для программ и компонетов пользовательского пространства. Его можно рассматривать как простое устройство типа Point-to-Point, которое вместо классического приема пакетов с физического носителя получает их от программы пользовательского пространства и вместо отправки пакетов через физический носитель записывает их в программу пользовательского пространства.

Хотите узнать свой IP компьютера быстро и легко? Воспользуйтесь нашим онлайн-приложением для моментального определения вашего IP!

Если иными словами,  TUN/TAP будет создает виртуальный сетевой интерфейс на хосте с операционной системой семейства Linux. Созданный интерфейс будет функционирует так же, как и любой другой интерфейс, ему можно назначить IP-адрес, анализировать трафик, направить трафик на него и т. д. Когда трафик отправляется в его интерфейс, трафик будет сразу отправляеться в программу пользовательского пространства, а не в реальную сеть.

В отличие от обычных сетевых устройств в системе (физические устройства маршрутизируют пакеты по кабелям Ethernet), TUN/TAP — это полностью виртуальный интерфейс, который имитирует эти физические соединения в ядре операционной системы (часть операционной системы, которая всегда активна на вашем устройстве). памяти и имеет полный контроль над всем в системе).

Где используются TUN и TAP?

В основном TUN/TAP используется для VPN и прокси для предоставления более быстрой и безопасной передачи данных через сеть.

Преимущество TUN/TAP заключается в том, что приложения пользовательского пространства, такие как VPN-клиенты, могут взаимодействовать с этими устройствами, как если бы они были реальными. Это позволяет операционной системе вводить пакеты в обычный сетевой стек по мере необходимости, в результате чего данные передаются туда и обратно, как если бы использовались физические сетевые устройства.

Несмотря на то, что устройства Tun и Tap очень похожи, они предназначены для достижения разных целей в ядре. Клиенты VPN, которые предоставляют OpenVPN, в основном используют устройства TUN, поэтому этап установки клиента OpenVPN обычно включает установку драйвера TUN/TAP.

Устройства TUN и TAP используются клиентами VPN для установления туннеля. Без драйверов для этих виртуальных устройств данные, зашифрованные VPN-клиентом, не смогут перемещаться от клиента к сетевому стеку. В случае VPN TAP используется для передачи кадров Ethernet и для мостового соединения, а TUN используется для передачи IP-пакетов (маршрутизация). Стоит отметить, что устройства TUN/TAP используются только с некоторыми протоколами VPN (такими как OpenVPN и WireGuard).

TUN -интерфейсы

Устройства TUN (туннельные) работают на уровне 3, что означает, что данные (пакеты), которые вы получите от файлового дескриптора, будут основаны на IP. Данные, записываемые обратно на устройство, также должны быть в форме IP-пакета.

Они обычно используются VPN-клиентами для установления соединения между клиентом и сетевым стеком ОС. Это позволяет VPN шифровать ваши данные перед их пересылкой на VPN-сервер через туннель.

Поскольку TUN работает на третьем уровне сетевого стека, он работает исключительно с пакетами сетевых протоколов (пакеты IPv4 и IPv6). Более того, поскольку устройства TUN находятся на третьем уровне, их можно использовать только для маршрутизации (но не для моста).

TAP -интерфейсы

TAP (сетевой ответвитель) работает так же, как TUN, однако вместо того, чтобы иметь возможность только записывать и получать пакеты уровня 3 в или из файлового дескриптора, он может использовать необработанные пакеты Ethernet. Обычно вы увидите TAP-устройства, используемые виртуализацией KVM/Qemu, где TAP-устройство назначается виртуальному гостевому интерфейсу во время создания.

Преимущество устройств TAP заключается в том, что, несмотря на то, что они виртуальные, они работают и ведут себя так же, как настоящие сетевые адаптеры, и могут передавать любые сетевые протоколы (IPv4, IPv6, Netalk, IPX и т. д.) и кадры Ethernet.

Для работы устройств TAP и TUN в системе должны быть установлены драйверы/адаптеры. На VPS и VDS компании ГиперХост все конфигурации сделаны, и вы можете сразу же приступить к настройке и работе с VPN.