En-têtes de l'équilibreur de charge

Découvrez comment utiliser les en-têtes HTTP "X" et d'hôte dans un équilibreur de charge.

Les demandes et les réponses HTTP incluent souvent des champs d'en-tête qui fournissent des informations contextuelles sur le message. La RFC 2616 définit un ensemble standard de champs d'en-tête HTTP. Certains champs d'en-tête non standard, qui commencent par X-, sont communs. Le service d'équilibreur de charge ajoute ou modifie les en-têtes X- suivants lors de la transmission des demandes à vos serveurs. Comme ces en-têtes sont toujours ajoutés et ne peuvent pas être désactivés, vous ne pouvez pas les supprimer ou les modifier à l'aide d'un jeu de règles.

Les demandes et les réponses HTTP incluent souvent des champs d'en-tête qui fournissent des informations contextuelles sur le message. La RFC 2616 définit un ensemble standard de champs d'en-tête HTTP. Certains champs d'en-tête non standard, qui commencent par X-, sont communs. Le service d'équilibreur de charge ajoute ou modifie les en-têtes X- suivants lors de la transmission des demandes à vos serveurs. Comme ces en-têtes sont toujours ajoutés et ne peuvent pas être désactivés, vous ne pouvez pas les supprimer ou les modifier à l'aide d'un jeu de règles.

X-Forwarded-For

Fournit une liste des adresses IP de connexion.

L'équilibreur de charge ajoute la dernière adresse d'appairage distant au champ X-Forwarded-For de la demande entrante. Une virgule et un espace précèdent l'adresse ajoutée. Si l'en-tête de la demande client n'inclut pas de champ X-Forwarded-For, cette valeur est égale à la valeur X-Real-IP. Le client ayant fait la demande initiale est la première adresse IP (la plus gauche) dans la liste, en supposant que le contenu du champ entrant soit fiable. La dernière adresse représente le dernier pair (le plus récent), autrement dit, l'ordinateur à partir duquel l'équilibreur de charge a reçu la demande. Le format est :

X-Forwarded-For: original_client, proxy1, proxy2

Exemple de champ entrant :

X-Forwarded-For: 202.1.112.187

Exemple de champ avec l'adresse IP de mandataire ajoutée :

X-Forwarded-For: 202.1.112.187, 192.168.0.10

X-Forwarded-Host

Identifie l'hôte et le port initiaux demandés par le client dans l'en-tête de la demande HTTP Host. Cet en-tête vous aide à trouver l'hôte initial, car le nom d'hôte ou le port du mandataire inverse (équilibreur de charge) peut différer de celui du serveur initial gérant la demande.

X-Forwarded-Host: www.oracle.com:8080

X-Forwarded-Port

Identifie le numéro de port du module d'écoute utilisé par le client pour se connecter à l'équilibreur de charge. Par exemple :

X-Forwarded-Port: 443

X-Forwarded-Proto

Identifie le protocole utilisé par le client pour se connecter à l'équilibreur de charge, soit http ou https. Par exemple :

X-Forwarded-Proto: https

X-Real-IP

Identifie l'adresse IP du client. Pour le service Équilibreur de charge, le "client" est le dernier pair distant.

Votre équilibreur de charge intercepte le trafic entre le client et votre serveur. En conséquence, les journaux d'accès de votre serveur n'incluent que l'adresse IP de l'équilibreur de charge. L'en-tête X-Real-IP fournit l'adresse IP du client. Par exemple :

X-Real-IP: 192.168.0.10

X-Request-Id;

L'ID demande peut vous aider à suivre et à gérer une demande en fournissant un identificateur de demande unique exposé dans les en-têtes de demande et de réponse HTTP.

Lorsque l'ID demande est activé, le nom d'en-tête par défaut X-Request-ID est inclus dans l'en-tête de la demande HTTP de l'équilibreur de charge aux réponses d'en-tête dorsal et HTTP. Si cette option n'est pas activée, l'équilibreur de charge n'ajoute pas cet en-tête d'ID demande unique à la demande transmise au système dorsal de l'équilibreur de charge ou à la réponse retournée.

Vous pouvez entrer un nom d'en-tête différent au lieu d'utiliser la valeur par défaut. Tout nom d'en-tête personnalisé doit commencer par "X-".

Hôte

Identifie l'hôte initial et, éventuellement, le port demandé par le client dans l'en-tête de la demande HTTP de l'hôte. Par exemple :

Host: www.oracle.com