2 ou mais servidores web compartilham um IP estático

2 ou mais servidores web compartilham um IP estático

Recebi 1 IP estático do meu ISP. Recebi 2 NS (do provedor NS) apontando meu nome de domínio para meu IP wan. Minha pergunta: Como faço para que server1.domainname.td alcance o servidor 1 dentro da minha rede, server2.domainname.td alcance o servidor 2
também colocado em minha rede local (server1 =192.168.1.2 e server2=192.168.1.3) ambos com uso apenas da porta 80 (sem encaminhamento de porta) (server1 = ms win server2 = Linux) Segunda pergunta: Como acessar server3.domainname.td em um servidor colocado fora da minha rede (outro ip estático na internet)

Responder1

Se você tiver apenas um endereço IP (portanto, uma porta 80e 443), você precisará usar umproxy reversocomonginxpara encaminhar solicitações ao servidor interno apropriado.

Você precisa adicionar um Aregistro DNS server1.example.come server2.example.comapontar para seu endereço público.

Onginxservidor pode estar em execução no seu gateway se você tiver um bom roteador comOpenWrtfirmware ou um roteador profissional com recursos de proxy. Caso contrário, você precisará usar um dos servidores internos e configurar um encaminhamento de porta do roteador para o servidor interno.

Existem muitos tutoriais online sobre como configurarnginx como proxy reverso.

Observe que esta configuração será lenta e propensa a falhas. Para uma implantação profissional, use uma hospedagem externa.

Responder2

Se você está preocupado apenas com o tráfego da web (porta 443 ou porta 80), como outros sugeriram, use o nginx. É muito leve. É o que eu faço.

Assumindo Linux, em /etc/nginx crie um arquivo para sua rede (por exemplo, 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;
    }
}

crie esta estrofe em um arquivo (digamos...route.conf) e coloque-a em /etc/nginx (presumo linux). Adicione quantas estrofes forem necessárias para seus propósitos. Em /etc/nginx/nginx.conf, inclua-o:

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

Quanto ao server3, altere proxy_pass para seu nome de host ou ip:

proxy_pass http://youroutsideserver ..

ATUALIZAR: Como Piotr indicou, coloque seu arquivo route.conf em /etc/nginx/sites-available e crie um link simbólico para seu diretório habilitado para sites

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

informação relacionada