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 englisch Test Access Point aber auch für englisch Terminal Access Point. 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.

Die simulierten Netzwerkgeräte tauschen ihre Daten auf verschiedenen Ebenen (Layern) des OSI-Modells aus

Unterschied zwischen TUN und TAP

Bearbeiten

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

Bearbeiten

Benutzt wird TUN/TAP u. a. für:

Implementierungen

Bearbeiten

TUN/TAP-Treiber sind zumindest für die folgenden Plattformen verfügbar:

Bearbeiten