1. Introduction
HTTP fournit la méthode CONNECT (voir Section 9.3.6 de HTTP) pour créer un tunnel TCP [TCP] vers une destination et un mécanisme similaire pour UDP [CONNECT-UDP]. Cependant, ces mécanismes ne peuvent pas tunneliser d'autres protocoles IP [IANA-PN] ni transmettre les champs de l'en-tête IP.
Ce document décrit un protocole pour tunneliser IP à travers un serveur HTTP agissant comme un proxy spécifique à IP sur HTTP. Cela peut être utilisé pour divers cas d'utilisation, tels que le VPN d'accès à distance, le VPN site à site, la communication point à point sécurisée ou le tunnelisation de paquets à usage général.
Le relais IP fonctionne de manière similaire au relais UDP [CONNECT-UDP], par lequel le proxy lui-même est identifié avec une URL absolue, contenant éventuellement la destination du trafic. Les clients génèrent ces URL à l'aide d'un modèle d'URI [TEMPLATE], comme décrit dans la Section 3.
Ce protocole prend en charge toutes les versions existantes de HTTP en utilisant des datagrammes HTTP [HTTP-DGRAM]. Lors de l'utilisation de HTTP/2 [HTTP/2] ou HTTP/3 [HTTP/3], il utilise HTTP Extended CONNECT, comme décrit dans [EXT-CONNECT2] et [EXT-CONNECT3]. Lors de l'utilisation de HTTP/1.x [HTTP/1.1], il utilise HTTP Upgrade, tel que défini dans la Section 7.8 de HTTP.
Ce document met à jour [CONNECT-UDP] pour modifier l'URI bien connu "masque" ; voir Section 12.3.