BandaAncha.eu

Comunidad de usuarios
de fibra, móvil y ADSL

entrada nat

robofortea

Me gustaria exponer una pequeña duda teórica que tengo desde hace un tiempo. No tengo muy claro como buscar un hilo existente que hable de este asunto en particular, así que me vais a disculpar por soltar este rollo. Ya si acaso me redirijis a donde sea conveniente.

Se trata de lo siguiente: supongamos que tengo una lan con tres servidores web. Digamos que las ip son la típicas: 192.168.1.1 para la puerta de enlace y 101, 102 y 103 para cada servidor respectivamente. La IP pública la que sea.

Cuando un cliente de fuera de la lan intenta conectar con uno de los servidores escribe en su url el nombre del dominio etc. La dns traduce a la ip pública y allá va.

Aquí viene mi duda: teniendo en cuenta que los tres tienen la misma ip pública, cuando la petición llega al router, como sabe cual de los tres es el destinatario?

bien, supongo que simplemente se me escapa algun detalle, a pesar de todo lo que he leido sobre el tema, y que con una breve explicación se resuelve la duda. Si no es así y resulta que me pierdo algo gordo entenderé perfectamente que no os querrais extender mucho y agradeceré que me deis unas directrices donde pueda investigar.

Muchas gracias y saludos

campi

Cuando abres un puerto con Nat lo abres para una sola ip por lo que el router sabe perfectamente donde ir... Montar un sistema como el que comentAs requiere de un balanceador de carga, en windows server tienes el servicio NLB que creo que sirve para lo que necesitas... Basicamente creas una ip virtual pa cual sera la que reciba toda la informacion que viene del router

robofortea

gracias por responder.
Habia oído algo respecto a los puertos, pero no lo acabo de pillar.
Cuando se hace la conversion en el servidor DNS, ya sale con el puerto al que debe ir? Es que si no no veo como.
Gracias y saludos

🗨️ 7
mceds

No. El puerto lo deciden los navegadores que se van a conectar a tu(s) servidor(es) web y ése va a ser el 80/443 salvo que se especifique otra cosa en la URI.

BocaDePez
BocaDePez

Los DNS van a traducir únicamente el nombre a una IP.

Si no abres 3 puertos diferentes en tu router NAT, y por lo tanto obligas a la gente a meter el número de puerto en la URL del navegador, pues necesitarás sistemas de balanceo internos a nivel de capa 7 que sean capaces de hacer un análisis de la cabecera HTTP y redirigir la petición al servidor correspondiente.

Hay equipos dedicados que hacen la tarea, pero son caros. Busca información en Internet sobre "Switches de capas 4-7" , "Layer 4-7 balancing" o similares.

Si no montas un switch dedicado, tendrás que hacerlo en un equipo por software tú mismo. Bien usando Linux/Unix o usando Windows. El servicio NLB de Windows Server que comentó camPI más arriba yo no le he usado, pero podría ser interesante mirarlo.

O eso, o pides a tu proveedor de Internet que te presupueste n IPs públicas.

🗨️ 5
robofortea

perdonad por no haber respondido antes. Estaba fuera y ocupado.

Vuestros comentarios me demuestran que tengo que investigar bastante. Todo eso del balanceador de carga y NLB es nuevo para mi.

Gracias por vuestros consejos. Saludos!

🗨️ 4
mceds
🗨️ 3
robofortea
🗨️ 2
mceds
🗨️ 1