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 80
y 443
), necesita usar unproxy inversocomonginxpara reenviar solicitudes al servidor interno apropiado.
Debe agregar un A
registro DNS server1.example.com
y server2.example.com
apuntar 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