mini|Die simulierten Netzwerkgeräte tauschen ihre Daten auf verschiedenen Ebenen (Layern) des OSI-Modells aus
TUN und TAP sind virtuelle Netzwerk-Kernel-Treiber, die Netzwerkgeräte über Software simulieren. TUN steht hierbei für Netzwerk-Tunnel und TAP für Network-TAP, also eine Netzwerk-Ausleitung. Die englische Abkürzung TAP stellt ein Backronym dar und steht für aber auch für . Während sich normalerweise hinter einem Netzwerkgerät (wie zum Beispiel eth0) direkt eine entsprechende Hardware in Form einer Netzwerkkarte verbirgt, werden Pakete, die an ein TUN/TAP-Gerät gesendet werden, an ein Programm im Userspace weitergeleitet und andersherum. Damit ein Userspace-Programm auch auf TUN/TAP-Geräte zugreifen kann, haben diese im Gegensatz zu realen Ethernet-Karten eine Gerätedatei mit der Bezeichnung tunN bzw. tapN unterhalb von /dev.
Unterschied zwischen TUN und TAP TUN simuliert ein Ende-zu-Ende-Netzwerkgerät (OSI-Layer 3) und kommuniziert per IP-Paketen mit der Software, während TAP eine Punkt-zu-Punkt-Verbindung via Ethernet-Gerät simuliert (OSI-Layer 2) und über Ethernet-Frames mit der Software kommuniziert.
Beispiele für Anwendungen Benutzt wird TUN/TAP u. a. für: Virtual Private Networks OpenVPN, Ethernet/IP über TCP/UDP; verschlüsselt, komprimiert tinc , Ethernet/IPv4/IPv6 über TCP/UDP; verschlüsselt, komprimiert VTun , Ethernet/IP/serial/Unix pipe über TCP; verschlüsselt, komprimiert, traffic shaping ICMPTX , IP über ICMP (ping) NSTX , IP über DNS HTun , IP über HTTP peervpn , Ethernet über UDP OpenSSH ; verschlüsselt, ggf. komprimiert; Schalter -w
Netzwerke von virtuellen Maschinen Bochs coLinux QEMU VirtualBox Hercules (S/390-Emulator)
Implementierungen TUN/TAP-Treiber sind zumindest für die folgenden Plattformen verfügbar: FreeBSD Mac OS X Linux, beginnend ab ungefähr Version 2.1.60 Microsoft Windows 2000/XP OpenBSD NetBSD Solaris
Weblinks Projektseite auf sourceforge Dokumentation zu Universal TUN/TAP Gerätetreiber für Linux
Kategorie:Netzwerktechnik