Hola a todos y bienvenidos de nuevo.
Ahora, en el video de hoy, vamos a discutir acerca de la captura de la IP del cliente detrás de LP.
Ahora, cuando trabajas en una organización, este es uno de los temas más importantes que vas a implementar
para la mayoría de los casos de uso.
Así que vamos a entender esto en detalle.
Ahora bien, en una configuración típica en la que se dispone del equilibrador de carga elástico, la aplicación
backend no recibe la dirección IP del cliente.
Por ejemplo, digamos que usted tiene la instancia EC dos que está detrás del equilibrador de carga.
Ahora tienes un cliente con la dirección IP 192 168 0. 10.
Así, cuando un cliente envía una solicitud al equilibrador de carga elástico,
éste la reenvía a la instancia EC2 backend.
Ahora, en tal caso, el EC dos instancia aquí sabrá que la solicitud de puerta de entrada punto PHP ha venido de un recurso
con la dirección IP de un 7231 10. 5 de acuerdo.
Así que usted ve consiguió solicitud de uno 7231 10. 5 ahora aunque esto se ve bien, pero en muchos de los casos
de uso es muy importante que la instancia EC2 back end conozca la dirección IP del cliente que hizo la petición.
Así, por ejemplo, en lugar de un 7231 10. 5 este fácil de instancia necesita la IP original
del cliente, que es 192 168 0. 10 Y esto es lo que vamos a tratar en el vídeo de hoy.
Ahora, dependiendo del tipo de balanceador de carga así como del listener, la forma en que la IP del cliente
es reenviada al servidor backend también cambia.
Por ejemplo, en un equilibrador de carga clásico para escuchas basadas en HTTP, la IP del cliente se reenvía por defecto a los
servidores.
Sin embargo, para las escuchas basadas en TCP IP, es necesario activar el protocolo proxy para el equilibrador de carga de aplicaciones.
La IP del cliente se pasa con la petición, por lo que hay que utilizar la cabecera x forwarded for en la aplicación para capturar
la dirección del cliente.
Ahora vamos a discutir esto desde un punto de vista táctico también porque esto es un poco confuso.
Así que esperemos un momento y completemos la parte teórica.
Ahora, cuando hablamos del equilibrador de carga de red, la preservación de la dirección IP del cliente
está habilitada, por ejemplo, y los grupos de destino de tipo IP con protocolo UDP y TCP UDP.
Así que este es el valor predeterminado y no se puede desactivar.
Sin embargo, puede activar o desactivar la preservación de la IP del cliente para los grupos de destino basados en TCP y TLS.
Así que hagamos una cosa.
Vamos a entenderlo rápidamente desde un punto de vista práctico.
Ahora para el video de hoy, tengo un balanceador de carga de red y tengo un balanceador de carga de aplicaciones,
ambos.
Enviará la petición a la misma instancia EC2 que veis aquí.
Ahora vamos a abrir rápidamente y ver qué es exactamente lo que aloja la instancia.
Así que desde el navegador, si voy a añadir la URL todo lo que hace, se indica.
Bienvenido a Motor X.
Ahora desde la instancia EC dos donde el motor X se está ejecutando, vamos a seguir adelante y rápidamente
hacer un tale en var log motor x acceso punto log.
De acuerdo.
Investigaremos qué capta exactamente la solicitud.
Así que en primer lugar, vamos a seguir adelante y copiar el DNS del equilibrador de carga de aplicaciones.
Y desde una nueva pestaña, haré rápidamente un rulo en el DNS de ALB.
Así que en esta etapa, vamos a esperar rápidamente.
De acuerdo.
Ya tenemos respuesta.
Verás, teníamos una solicitud de puerta que se hizo y la dirección IP es la IP del equilibrador de carga de aplicaciones.
De hecho, si quieres hacerlo más sencillo, puedes hacer test dot.
Y ahora ves aquí para la petición de prueba, la la dirección IP es la del balanceador de carga.
Ahora aquí se menciona un punto más importante con los estados que utilizan la cabecera x forwarded for en la aplicación
para capturar la IP del cliente.
Así que el balanceador de carga también está enviando la IP del cliente a la instancia EC2.
Sin embargo, la aplicación o el servidor web que se ejecuta en el AC dos también debe utilizar el encabezado x
forwarded for.
Ahora déjame también mostrarte rápidamente así que aquí tienes la IP de LP, pero en el último tienes la IP real del cliente.
Así que esta dirección IP que ves es la dirección IP actual de mi ISP que me ha sido asignada.
Ahora bien, ¿cómo se captura esta dirección IP específica?
Hagamos un control C.
Ahora, si usted mira rápidamente en la configuración asociada con el motor X, ahora de nuevo, desde un
punto de vista práctico en los exámenes, usted no necesita saber sobre el motor X en detalle, pero sólo te estoy mostrando porque
podría ayudarle en escenarios del mundo real.
Ahora en el motor x formato de registro sobre su primera es la dirección remota.
Así que esta es la dirección que se sustituye por la dirección IP del equilibrador de carga elástico.
Aparte de eso, también está capturando el http x reenviado para.
Así que aquí la dirección IP del cliente real será reemplazada porque de todos modos, el balanceador de carga está enviando la
dirección IP del cliente con el encabezado x forwarded for.
Así que a nivel del motor x lo capturas.
Y esta es la razón por la que al final de la línea se ve la dirección IP del cliente.
Muy bien, esto es para el balanceador de carga de aplicaciones.
Ahora, en caso de que no lo tengas configurado en el motor X, no lo verás.
Así que en el formato de registro tendrá que editar explícitamente.
Ahora, volviendo de nuevo al registro de acceso.
Esta vez enviaremos la solicitud a la instancia EC dos a través del equilibrador de carga de red.
Volvamos al equilibrador de carga de red.
Copiaré el nombre DNS.
Haremos un curl en nlrp3.
Así que esperemos rápidamente un momento.
Haré rápidamente una llamada.
De nuevo, tenemos una respuesta aquí.
Ahora, si miras en el log, tenemos el log NLB txt.
Ahora aquí dentro, ves que la dirección IP es 1010.
Así que directamente estás viendo la dirección IP del cliente.
Realmente no es necesario capturar la cabecera x forwarded for para encontrar la dirección IP del cliente si estamos utilizando
el balanceador de carga de red.
De acuerdo.
Así que espero que con esto en mejores términos, usted entendió en cómo el IP del cliente puede ser capturado.
Una vez más, todo depende del receptor y del equilibrador de carga elástico que esté utilizando.
Ahora, antes de concluir una cosa más que quería mostrarles.
De hecho, veamos qué grupo de destino utiliza este equilibrador de carga de red.
Se trata de utilizar un grupo objetivo denominado muestra Grupo objetivo.
Así que vamos.
A los grupos destinatarios, el grupo destinatario de la muestra.
Ahora, si miras en los atributos, hay un atributo específico relacionado con preservar la dirección IP
del cliente.
Este es el atributo importante.
Ahora, en caso de que deshabilite este atributo específico, volvamos al equilibrador de carga.
Copiemos de nuevo a Dennis.
Así que desde el CL, ejecutaré el mismo conjunto de comandos en el NLB de demostración.
También vamos a capturar los registros de nuevo para que cuando llamemos esta vez.
Verás, en lugar de la IP del cliente.
Esta vez estamos viendo la IP del balanceador de carga para la petición get en NLP.
De acuerdo.
Dependiendo de las necesidades, hay cierta flexibilidad.
Sin embargo, la mayoría de las veces en muchos de los casos de uso necesitará la preservación de la dirección IP del cliente
activada.
Con esto concluiremos el vídeo de hoy.