Cabeceras del equilibrador de carga
Obtenga información sobre el uso de cabeceras HTTP "X" y de host en un equilibrador de carga.
Las solicitudes y respuestas HTTP suelen incluir campos de cabecera que proporcionan información contextual sobre el mensaje. RFC 2616 define un juego estándar de campos de cabecera HTTP. Algunos campos de cabecera no estándar que empiezan por X-
son comunes. El servicio Load Balancer agrega o cambia la cabecera Host y las siguientes cabeceras X-
cuando transfiere solicitudes a los servidores. Debido a que estas cabeceras siempre se agregan y no se pueden desactivar, no puede eliminar ni cambiar cabeceras mediante un juego de reglas.
Las solicitudes y respuestas HTTP suelen incluir campos de cabecera que proporcionan información contextual sobre el mensaje. RFC 2616 define un juego estándar de campos de cabecera HTTP. Algunos campos de cabecera no estándar que empiezan por X-
son comunes. El servicio Load Balancer agrega o cambia la cabecera Host y las siguientes cabeceras X-
cuando transfiere solicitudes a los servidores. Debido a que estas cabeceras siempre se agregan y no se pueden desactivar, no puede eliminar ni cambiar cabeceras mediante un juego de reglas.
X-Forwarded-For
Proporciona una lista de direcciones IP de conexión.
El equilibrador de carga agrega la última dirección de peer remoto al campo X-Forwarded-For
de la solicitud entrante. La coma y el espacio preceden a la dirección agregada. Si la cabecera de solicitud del cliente no incluye un campo X-Forwarded-For
, este valor será igual al valor X-Real-IP
. El cliente de solicitud original es la primera dirección IP (situada más a la izquierda) de la lista, suponiendo que el contenido del campo entrante es fiable. La última dirección es el último peer (más reciente), es decir, el equipo desde el que el equilibrador de carga recibió la solicitud. El formato es:
X-Forwarded-For: original_client, proxy1, proxy2
Ejemplo de campo entrante:
X-Forwarded-For: 202.1.112.187
Ejemplo de campo con dirección IP de proxy agregada:
X-Forwarded-For: 202.1.112.187, 192.168.0.10
X-Forwarded-Host
Identifica el host y el puerto originales solicitados por el cliente en la cabecera de solicitud HTTP del host
. Esta cabecera ayuda a encontrar el host original, porque el nombre de host o el puerto del proxy inverso (equilibrador de carga) pueden diferir del servidor original que gestiona la solicitud.
X-Forwarded-Host: www.oracle.com:8080
X-Forwarded-Port
Identifica el número de puerto del listener que el cliente ha utilizado para conectarse al equilibrador de carga. Por ejemplo:
X-Forwarded-Port: 443
X-Forwarded-Proto
Identifica el protocolo que el cliente ha utilizado para conectarse al equilibrador de carga, ya sea http
o https
. Por ejemplo:
X-Forwarded-Proto: https
IP Real X
Identifica la dirección IP del cliente. Para el servicio de Load Balancer, el "cliente" es el último peer remoto.
El equilibrador de carga intercepta el tráfico entre el cliente y el servidor. Por tanto, los logs de acceso del servidor solo incluyen la dirección IP del equilibrador de carga. La cabecera X-Real-IP
proporciona la dirección IP del cliente. Por ejemplo:
X-Real-IP: 192.168.0.10
Identificador de Solicitud X
El ID de solicitud puede ayudarle con el seguimiento y la gestión de una solicitud proporcionando un identificador de solicitud único expuesto en las cabeceras de solicitud y respuesta HTTP.
Cuando el ID de solicitud está activado, el nombre de cabecera por defecto X-Request-ID se incluye en la cabecera de solicitud HTTP desde el equilibrador de carga hasta las respuestas de cabecera HTTP y backend. Si no está activado, el equilibrador de carga no agrega esta cabecera de ID de solicitud única a la solicitud transferida al backend del equilibrador de carga o a la respuesta devuelta.
Puede introducir un nombre de cabecera diferente en lugar de utilizar el predeterminado. Cualquier nombre de cabecera personalizada debe empezar por "X-".
Host
Identifica el host original y, opcionalmente, el puerto solicitado por el cliente en la cabecera de solicitud HTTP Host. Por ejemplo:
Host: www.oracle.com