Imaginez une situation qui déroute même les ingénieurs les plus expérimentés. Vous ouvrez un site directement dans votre navigateur et voyez dans le panneau développeur un fier h2 - la connexion se fait en HTTP/2. Puis vous envoyez la même requête via un proxy et vous découvrez avec étonnement que le serveur répond en bon vieux HTTP/1.1. Où est passée la deuxième version du protocole ? Pourquoi le proxy semble-t-il vous avoir fait revenir dans le temps ? Et le plus intriguant : pourquoi HTTP/3, qui fonctionne sur QUIC, refuse-t-il carrément de passer par un proxy classique, comme s'il se heurtait à un mur invisible ?

Cet article est une analyse exhaustive de la couche transport lors d'une utilisation via proxy. Nous n'aborderons pas les sujets des empreintes de connexion ou de la détection d'automatisation. Notre focus, c'est la mécanique pure : ce qui arrive réellement au serveur, où se fait la négociation de la version du protocole, pourquoi le transport UDP est incompatible avec un proxy classique et comment prendre une décision éclairée sur le choix de la version. À la fin de ce contenu, vous comprendrez ce sujet à un niveau qui vous permettra de déboguer les scénarios réseau les plus complexes.