En el sistema de Windows, hay este archivo en C:\WINDOWS\system32\drivers\etc\hosts
. Este archivo nos permite predeterminar una dirección IP específica a un nombre de host.
El problema ahora es si puedo configurar varias direcciones IP para un nombre de host. Por ejemplo, ¿puedo hacer algo como esto?
192.168.244.128 gateway.net
192.168.226.129 gateway.net
¿Y esperar que el navegador pueda resolver a ambos, ver cuál funcionará y así apuntar a ese?
Si no, ¿hay alguna otra manera de obtener el comportamiento que quiero?
Nota: estoy implementando esta aplicación en mi propia red de área local, por lo que no hay necesidad de internet.
Sí, puede hacer esto, lo he usado para probar escenarios DNS de round-robin sin tener que ingresar los hosts en un DNS.
Cuando una aplicación llama a gethostbyname, recupera la lista completa de direcciones IP (posiblemente en orden aleatorio, dependiendo de las bibliotecas / SO).
fuente
Creo que vas por esto de la manera incorrecta. Avíseme si estoy haciendo las suposiciones equivocadas aquí.
Guión:
Lo que estás tratando de hacer se llama DNS round-robin (también conocido como equilibrio de carga del hombre pobre), pero estás tratando de hacerlo desde el lado del cliente. Esto no parece tener el efecto deseado (al menos en mi caja de Windows XP) incluso si elimino el caché de DNS. Windows solo se resolverá con la primera IP del archivo. Sin embargo, el DNS round-robin no tolera fallas, por lo que esto no lo ayudará a lograr lo que desea.
Solución sugerida:
Balanceador de carga de hardware: algunas marcas son Alteon, Big-IP, Barracuda. Lo que esto hace es básicamente presentar una única IP para que sus usuarios se conecten y reenvíe las solicitudes a los servidores web. Si uno de los servidores deja de estar disponible, ya no le reenviará tráfico. Esta es la opción costosa.
Servicios de equilibrio de carga de red: esta es una tecnología de Microsoft disponible en el servidor de Windows, que le dará una única IP en clúster. Logra el mismo resultado que un equilibrador de carga de hardware, pero de una manera diferente. Todo lo que necesitas hacer es configurarlo .
fuente
De http://www.unc.edu/atn/lsf/docs/7.0.5/lsf_config_ref/index.htm?hosts.5.html~main
Ejemplo de IPv4
En este ejemplo, hostA tiene 2 direcciones IP y 3 alias. El alias hostB especifica la primera dirección, y los alias hostC y host-C especifican la segunda dirección. LSF usa el nombre de host oficial, hostA, para identificar que ambas direcciones IP pertenecen al mismo host.
fuente
Mi sugerencia es usar un servidor DNS interno con DNS round-robin y TTL = 0. Si actualiza el registro DNS (también con el sistema de comprobación automática de IP) cuando un IP / servidor está inactivo, puede tener un sistema de alta disponibilidad.
fuente
He hecho esto en una red doméstica donde asigno IP estáticas a las interfaces de red cableadas e inalámbricas de una computadora portátil, y desde el archivo de hosts de otra máquina apunto un solo nombre de host a ambas direcciones IP. Parece que funciona bien.
fuente
Según este ejemplo, hice el siguiente host 10.18.yx 192.168.zx
Donde hostA es el nombre de host de un servidor que pretendo alcanzar desde la red interna (192.168.yx) y VPN (10.8.zx).
Por lo tanto, funciona bien y puedo hacer que Samba funcione a través de VNP usando el nombre de host, por lo que está bien para mí tener mis unidades conectadas en Windows en ambos casos (LAN o VPN conectadas).
Atentamente.
fuente
@ Plamen Dimitrov Necesitará un dispositivo para manejar ese tipo de equilibrio, posiblemente un interruptor que pueda manejar BGP frente a su FW, o use su FW si es capaz. Si sus Ciscos manejan BGP, busque implementar eso. De esta manera, puede hacer que las dos direcciones IP de su ISP entren en el conmutador de Cisco y que los servidores de destino tengan IP válidas de IP públicas de 24 bits (DIFERENTE DE LAS 2 IP del ISP). En ese momento (está utilizando 3 bloques de IP públicos diferentes, el de sus servidores DEBE SER 24 BITS), necesitaría que cada uno de sus ISP conozca esta solución y ellos deberían estar dispuestos a apoyar el Solución BGP entre ellos, que la mayoría hará. Ahora, cuando se resuelva su FQDN, se resolverá en su bloque de IP de 24 bits, incluso si se caen 1 líneas ISP. El objetivo es sus direcciones de 24 bits siempre estarán disponibles debido a que sus ISP acuerdan enrutar esa dirección de 24 bits a través de sus líneas. Esto también funciona para VPN, ya que todo lo que está usando para VPN son las direcciones de 24 bits, no cualquiera de las IP del ISP que conectó a su Cisco / Switch. En ese punto, debe ser cauteloso con BGP FLAPPING, donde si sus líneas suben y bajan mucho, debido a una línea que recibe DOS, las direcciones DNS cambiarán tanto, en Internet, que los servidores DNS QUITARÁN AUTOMÁTICAMENTE LAS IP QUE LLEVAN A SU BLOQUE DE IP DE 24 BITS. Ese es un ataque de DOS en las soluciones BGP. En ese punto, debe ser cauteloso con BGP FLAPPING, donde si sus líneas suben y bajan mucho, debido a una línea que recibe DOS, las direcciones DNS cambiarán tanto, en Internet, que los servidores DNS QUITARÁN AUTOMÁTICAMENTE LAS IP QUE LLEVAN A SU BLOQUE DE IP DE 24 BITS. Ese es un ataque de DOS en las soluciones BGP. En ese punto, debe ser cauteloso con BGP FLAPPING, donde si sus líneas suben y bajan mucho, debido a una línea que recibe DOS, las direcciones DNS cambiarán tanto, en Internet, que los servidores DNS QUITARÁN AUTOMÁTICAMENTE LAS IP QUE LLEVAN A SU BLOQUE DE IP DE 24 BITS. Ese es un ataque de DOS en las soluciones BGP.
fuente
Leve aclaración aquí, al menos en el mundo de Windows: PUEDE tener dos direcciones IP para un solo nombre en un archivo de hosts. Cuando se consulta, se devuelven todas las direcciones. La aplicación (es decir, el navegador) intentará conectarse a cada uno hasta que se establezca una conexión. IOW, probará todas las direcciones antes de que se agote el tiempo. (Este es un malentendido común ya que muchas personas creen que solo intentará la "primera" dirección).
Puede verificar esto con el siguiente experimento:
Agregue dos o más direcciones para un host en el archivo de hosts, una real y otras falsas. (Reduzca las direcciones falsas alfabéticamente). Abra un navegador e intente conectarse al nombre de host. Ejecute netstat -no al mismo tiempo. Debería ver los intentos de conexión a la dirección falsa. (atascado en SYN_SENT) El navegador finalmente llegará a la buena dirección y se conectará. Hay un retraso en la conexión, pero FUNCIONARÁ.
fuente
ipconfig /flushdns
para asegurarme de que se olvidaron las resoluciones anteriores. Intenté abrir el sitio (local para mi máquina) en una ventana de incógnito en Chrome para evitar los resultados de la memoria caché. Simplemente falló (y esperé varios minutos para ver si eventualmente funcionaría). Presiona actualizar solo para estar seguro. Luego comenté la IP falsa de mi archivo de hosts. Sin hacer nada más, actualicé la página y funcionó. Lo mismo con Firefox.No puede hacer esto con el archivo de hosts.
Tampoco puede hacer esto con DNS: puede servir varias direcciones IP para un solo nombre, pero el navegador elegirá solo una de esas direcciones IP múltiples, lo probará, y si este host está inactivo, el navegador mostrará un error de conexión .
Una posible solución es configurar un servidor proxy y configurar estas dos IP como los padres para el dominio al que sirven. Al menos en el caso de Squid, el proxy probará un servidor y, si falla, probará el segundo servidor. Luego configure su navegador para usar este servidor proxy.
fuente