Русская Википедия:TUN/TAP
В терминологии компьютерных сетей, TUN и TAP — виртуальные сетевые драйверы ядра системы. Они представляют собой программные сетевые устройства, которые отличаются от обычных аппаратных сетевых карт.
TAP эмулирует Ethernet-устройство и работает на канальном уровне модели OSI, оперируя кадрами Ethernet. TUN (сетевой туннель) работает на сетевом уровне модели OSI, оперируя IP-пакетами. TAP используется для создания сетевого моста, тогда как TUN — для маршрутизации.
Пакет, посылаемый операционной системой через TUN/TAP устройство, обрабатывается программой, которая контролирует это устройство. Получение данных происходит через специальный файловый дескриптор, таким образом, программа просто считывает данные с файлового дескриптора. Сама программа также может отправлять пакеты через TUN/TAP устройство, выполняя запись в тот же файловый дескриптор. В таком случае TUN/TAP устройство доставляет (или «внедряет») такой пакет в сетевой стек операционной системы, эмулируя тем самым доставку пакета с внешнего устройства.
Устройства TUN/TAP могут быть как временными (создаются, используются, удаляются), так и постоянными. Так же, как и физическим интерфейсам, им можно назначать адреса, применять правила сетевых экранов, анализировать трафик и т. д.
TUN/TAP используются для:
- Виртуальных частных сетей:
- OpenVPN, Ethernet/IP по TCP/UDP; шифрование, компрессия
- Slonax 3G
- tinc [1], Ethernet/IPv4/IPv6 по TCP/UDP; шифрование, компрессия, mesh
- VTun [2], Ethernet/IP/serial/Unix пайпы по TCP; шифрование, компрессия, шейпер трафика
- OpenSSH
- ICMPTX [3], IP по ICMP (ping)
- NSTX [4], iodine [5], IP по DNS
- HTun [6], IP по HTTP
- coLinux, Ethernet/IP по TCP/UDP
- Hamachi
- VPN-X Java TAP Wrapper, VPN-X может быть P2P VPN, а также SSL VPN
- Виртуальных машин:
Драйверы TUN/TAP доступны, по крайней мере, для следующих ОС:
- FreeBSD
- Mac OS X
- Linux 2.1.60+
- Microsoft Windows 2000/XP/Vista/7 — используется для реализации сети в виртуальных машинах MS Virtual Server
- OpenBSD
- NetBSD
- Solaris
- QNX на данный момент только TAP
Ссылки
- http://vtun.sourceforge.net/
- http://www.kernel.org/pub/linux/kernel/people/marcelo/linux-2.4/Documentation/networking/tuntap.txt
- https://web.archive.org/web/20071224015346/http://www-user.rhrk.uni-kl.de/~nissler/tuntap/ ( or http://tuntaposx.sourceforge.net/download.xhtml ) - Mac OS X TUN/TAP драйвер