Tunnelprotokolle: Wie ein Protokoll ein anderes umhüllt

11 Min. gelesenVernetzung

Ein Tunnelprotokoll nimmt Pakete eines Protokolls auf und verpackt sie in Pakete eines anderen. So funktionieren VPNs, so gelangte IPv6 über ein IPv4-Internet in die Welt, so erstrecken sich Unternehmensnetzwerke über Kontinente und so können Sie mit SSH Ihr Heimnetzwerk durch eine Hotel-Firewall erreichen. Hier erfahren Sie, was Tunneling eigentlich ist und welche Protokolle wichtig sind.

Der vollständige Artikeltext ist unten in englischer Sprache aufgeführt.

Die Kernidee

Ein Tunnelprotokoll nimmt ein Paket eines Protokolls, verpackt es in die Nutzlast eines anderen Protokolls und sendet das Ergebnis über ein Netzwerk, das normalerweise nicht das Original übertragen würde. Die Umhüllung heißt encapsulation. Das verpackte Paket wandert durch ein Netzwerk, das nur das äußere Protokoll versteht, und wird am anderen Ende entpackt. Ein in ein IP-Paket verpackter Ethernet-Frame kann über das öffentliche Internet zwischen zwei LANs übertragen werden. Eine in HTTPS eingebundene TCP-Verbindung kann eine Firewall passieren, die nur Port 443 zulässt.

XPLZ8 IPv6-over-IPv4 (Teredo, 6in4) ist das klassische Beispiel.
  • Sicherheit: Ein unsicheres Protokoll in ein verschlüsseltes einschließen. SMB über SSH, einfaches HTTP über TLS (= HTTPS), Unternehmensverkehr über IPsec.
  • Netzwerkvirtualisierung: Sorgen Sie dafür, dass sich zwei physisch getrennte Netzwerke wie eins verhalten. Tailscale, ZeroTier, MPLS L3VPN, VXLAN – alle nutzen Tunneling unter der Haube. OpenVPN-over-TCP/443 sieht für eine Firewall wie HTTPS aus, die alles andere blockiert.
  • Fernzugriff: Geben Sie einem externen Mitarbeiter eine IP-Adresse innerhalb des Unternehmensnetzwerks. Das Unternehmens-VPN ist strukturell ein Tunnel.
  • Die wichtigsten Tunnelprotokolle

    XPLZ42 Nur UDP.
  • OpenVPN – flexibel, TLS-basiert, läuft über TCP oder UDP. Kann als HTTPS ausgeblendet werden. slow.
  • PPTP – historisch häufig, 2012 endgültig kaputt.
  • SSTP – Microsofts TLS-getunneltes VPN-Protokoll, nur Windows-Ursprung friends
    • GRE (Generic Routing Encapsulation) – Von Cisco entwickelt, überträgt beliebige Netzwerkschichtprotokolle innerhalb von IP. Grundlage für viele Unternehmens-VPN-Setups und die L3-Unterlage für Dinge wie NVGRE.
    • IP-in-IP – der einfachste Fall, bei dem einfach ein IP-Paket in ein anderes verpackt wird. RFC 2003.
    • Teredo – IPv6 über IPv4-Tunneling für Hosts hinter NAT. Von Microsoft entwickelt.
    • 6in4 – manuell konfigurierte IPv6-über-IPv4-Tunnel, die häufig von Tunnel-Broker-Diensten verwendet werden IPv6.

    Datacenter-Overlays

    • VXLAN – Virtual Extensible LAN. Umschließt Ethernet-Frames innerhalb von UDP. Das dominierende Overlay-Protokoll in modernen Rechenzentren.
    • GENEVE – neuerer, flexiblerer Konkurrent von VXLAN. Wird in einigen Cloud-Provider-Unterlagen verwendet.
    • NVGRE – Microsofts GRE-basierte Variante umgekehrt) und dynamisches SOCKS-Proxying (verwenden Sie SSH als allgemeinen SOCKS5-Proxy). Alle Tunnelvarianten: SSH wickelt beliebigen TCP-Verkehr in seinen verschlüsselten Kanal ein. Der klassische Befehl ssh -L 5432:database.internal:5432 jumpbox ist ein Tunnel. httptunnel und Cloudflare Tunnel wickeln beliebiges TCP in HTTP CONNECT-Anfragen oder WebSocket-Verbindungen ein. Weniger effizient als Direktverbindungen; zuverlässige Umgehung des letzten Auswegs.

      Der TCP-über-TCP-Zusammenbruch

      Die häufigste betriebliche Gefahr bei der VPN-Bereitstellung. Wenn Sie eine TCP-Verbindung innerhalb einer anderen TCP-Verbindung tunneln (z. B. OpenVPN-TCP, das das HTTPS eines Benutzers überträgt), sind jetzt two-Neuübertragungs-Timer im Spiel. Wenn ein Paketverlust auftritt, versuchen beide Schichten, die Übertragung erneut durchzuführen. Das Überlastungsfenster des inneren TCP erweitert sich; Die Puffer des äußeren TCP können nicht mithalten. Die Latenz steigt exponentiell an.

      Aus diesem Grund ist WireGuard nur UDP und OpenVPN-UDP wird OpenVPN-TCP vorgezogen, wann immer das Netzwerk dies zulässt. OpenVPN-TCP ist ein bewusster Kompromiss für den speziellen Fall, in dem die Firewall-Durchquerung wichtiger ist als der Durchsatz.

      Der Sicherheitsaspekt

      Tunneling ist moralisch neutral. Dieselben Techniken, mit denen Ihr Unternehmens-VPN Remote-Mitarbeiter schützt, können von Malware verwendet werden, um Daten über DNS-Tunnel oder HTTPS-Tunnel zu exfiltrieren, die wie normaler Datenverkehr aussehen. Unternehmenssicherheitsteams investieren erhebliche Anstrengungen in die Erkennung feindlicher Tunnel mithilfe von DPI, Flussanalyse und Richtliniendurchsetzung an Ausgangspunkten.

      Die Standardregel: Ein Tunnel ist genau so sicher wie sein inneres Protokoll plus sein äußeres Protokoll plus das Bedrohungsmodell des Betreibers. OpenVPN-Tunneling für einfaches HTTP macht HTTP für das Ziel nicht sicher; Dadurch wird die Verbindung zwischen Client und OpenVPN-Server sicher.

      So überprüfen Sie, ob ein Tunnel funktioniert.

        XPLZ22 test
  • Häufig gestellte Fragen

    Was ist der Unterschied zwischen einem Tunnel und einem VPN?
    Ein VPN ist eine Anwendung des Tunnelings. Der Tunnel ist der Kapselungsmechanismus; Das VPN ist das darauf aufbauende Produkt (Schlüsselverwaltung, Konfiguration usw.). Alle VPNs sind Tunnel, aber nicht alle Tunnel sind VPNs – eine TLS-Sitzung ist technisch gesehen ein Tunnel, eine SSH-Portweiterleitung ist ein Tunnel, ein MPLS-L3VPN-Underlay verwendet Tunneling.
    Warum ist TCP-über-TCP schlecht?
    Zwei Neuübertragungs-Timer kämpfen gegeneinander. Wenn Pakete verloren gehen, versuchen es sowohl das innere als auch das äußere TCP erneut. Das innere Überlastungsfenster wächst über den Puffer des äußeren hinaus, die Latenz steigt exponentiell an und der Durchsatz bricht zusammen. In verlustarmen Umgebungen ist es tolerierbar; In verlustbehafteten Netzwerken ist es die schlechteste mögliche VPN-Konfiguration. Verwenden Sie UDP-basiertes Tunneling, wo immer das Netzwerk dies zulässt.
    Kann eine Firewall einen Tunnel immer erkennen?
    Moderne DPI können gängige Tunnelsignaturen identifizieren (OpenVPN, WireGuard-Handshakes). Verschleierungstools verpacken Tunnel so, dass sie wie gewöhnliches HTTPS oder andere zulässige Protokolle aussehen. Das Wettrüsten ist konstant. Bei nicht feindseligen Netzwerken prüfen die grundlegenden Firewall-Regeln nicht tief genug, um Tunnel anhand des Inhalts zu identifizieren.
    Ist HTTPS ein Tunnel?
    Technisch gesehen ja. HTTPS umschließt HTTP in TLS. Die Beziehung ist strukturell identisch mit OpenVPN, das beliebigen IP-Verkehr innerhalb von TLS umschließt. Die Grenze zwischen „Protokoll“ und „Tunnel“ ist hauptsächlich eine Frage der Terminologie; HTTPS wird normalerweise nicht als Tunnel bezeichnet, da die inneren und äußeren Protokolle für die Zusammenarbeit konzipiert sind, der Kapselungsmechanismus jedoch derselbe ist.
    Welches Tunnelprotokoll sollte ich für ein VPN wählen?
    Für den modernen Verbraucher- oder Geschäftsgebrauch: WireGuard. Für restriktive Netzwerke: OpenVPN-TCP/443 mit TLS-Verschleierung. Für natives iOS/macOS ohne Drittanbieter-Clients: IKEv2/IPsec. Vermeiden Sie PPTP (kaputt) und vermeiden Sie bloßes L2TP (verwenden Sie stattdessen IKEv2/IPsec).
    Tunneling-Protokolle erklärt: Wie ein Protokoll ein anderes umhüllt | VPN Master Pro