Zum Hauptinhalt springen

1. Einführung

HTTP stellt die Methode CONNECT (siehe Abschnitt 9.3.6 von HTTP) zum Erstellen eines TCP [TCP]-Tunnels zu einem Ziel und einen ähnlichen Mechanismus für UDP [CONNECT-UDP] bereit. Diese Mechanismen können jedoch keine anderen IP-Protokolle [IANA-PN] tunneln oder Felder des IP-Headers übermitteln.

Dieses Dokument beschreibt ein Protokoll zum Tunneln von IP durch einen HTTP-Server, der als IP-spezifischer Proxy über HTTP fungiert. Dies kann für verschiedene Anwendungsfälle verwendet werden, wie z. B. Remote-Access-VPN, Site-to-Site-VPN, sichere Punkt-zu-Punkt-Kommunikation oder universelles Paket-Tunneling.

IP-Proxying funktioniert ähnlich wie UDP-Proxying [CONNECT-UDP], wobei der Proxy selbst mit einer absoluten URL identifiziert wird, die optional das Ziel des Datenverkehrs enthält. Clients generieren diese URLs mithilfe einer URI-Vorlage [TEMPLATE], wie in Abschnitt 3 beschrieben.

Dieses Protokoll unterstützt alle vorhandenen Versionen von HTTP unter Verwendung von HTTP-Datagrammen [HTTP-DGRAM]. Bei Verwendung von HTTP/2 [HTTP/2] oder HTTP/3 [HTTP/3] verwendet es HTTP Extended CONNECT, wie in [EXT-CONNECT2] und [EXT-CONNECT3] beschrieben. Bei Verwendung von HTTP/1.x [HTTP/1.1] verwendet es HTTP Upgrade, wie in Abschnitt 7.8 von HTTP definiert.

Dieses Dokument aktualisiert [CONNECT-UDP], um die bekannte URI "masque" zu ändern; siehe Abschnitt 12.3.