2 o más servidores web comparten una ip estática

2 o más servidores web comparten una ip estática

Obtuve 1 IP estática de mi ISP. Obtuve 2 NS (del proveedor de NS) que apuntan mi nombre de dominio hacia mi IP pálida. Mi pregunta: ¿Cómo puedo hacer para que server1.domainname.td llegue al servidor 1 dentro de mi red, server2.domainname.td para llegar al servidor 2
también ubicado en mi red local (servidor1 = 192.168.1.2 y servidor2 = 192.168.1.3), ambos con uso solo del puerto 80 (sin reenvío de puerto) (servidor1=ms win server2=Linux) Segunda pregunta: Cómo llegar a server3.domainname.td en un servidor ubicado fuera de mi red (otra IP estática en Internet)

Respuesta1

Si solo tiene una dirección IP (por lo tanto, un puerto 80y 443), necesita usar unproxy inversocomonginxpara reenviar solicitudes al servidor interno apropiado.

Debe agregar un Aregistro DNS server1.example.comy server2.example.comapuntar a su dirección pública.

ElnginxEs posible que el servidor se esté ejecutando en su puerta de enlace si tiene un buen enrutador conOpenWrtfirmware o un enrutador profesional con capacidades de proxy. De lo contrario, deberá utilizar uno de los servidores internos y configurar un reenvío de puertos desde el enrutador al servidor interno.

Hay muchos tutoriales en línea sobre cómo configurarnginx como proxy inverso.

Tenga en cuenta que esta configuración será lenta y propensa a fallar. Para una implementación profesional, utilice un alojamiento web externo.

Respuesta2

Si solo le preocupa el tráfico web (puerto 443 o puerto 80), como han sugerido otros, utilice nginx. Es muy liviano. Es lo que hago.

Suponiendo Linux, en /etc/nginx cree un archivo para su red (por ejemplo, proxy.conf):

server {
    listen       80;
    server_name  server1.domainname.td;

    location / {
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $host;
        proxy_pass http://localhost:8085;
    }
}

cree esta estrofa en un archivo (digamos...route.conf) y colóquela en /etc/nginx (supongo que Linux). Agregue tantas estrofas como sean necesarias para sus propósitos. En /etc/nginx/nginx.conf, inclúyalo:

include /etc/nginx/route.conf  (do this before the closing bracket)

En cuanto al servidor 3, cambie proxy_pass a su nombre de host o ip:

proxy_pass http://youroutsideserver ..

ACTUALIZAR: Como indicó Piotr, coloque su archivo route.conf en /etc/nginx/sites-available y enlace simbólicamente a su directorio habilitado para sitios

ln -s /etc/nginx/sites-available/router.conf /etc/nginx/sites-enabled

información relacionada