Eu tenho um modem DSL com um endereço IP público ( 201.206.x.x
) e um servidor web na minha rede interna ( 192.168.0.50
).
Eu configurei o modem para encaminhar solicitações para a porta 80 para o meu servidor da web; portanto, se eu acessar 201.206.x.x
de fora da minha rede, ele mostrará minha página da web, o mesmo acontecerá se eu acessar 192.168.0.50
de um computador dentro da minha rede.
Agora, o problema é que, quando tento acessar 201.206.x.x
da minha rede interna, o navegador tenta se conectar à configuração do modem DSL, em vez de redirecionar minha solicitação para o servidor da Web.
Quais configurações eu preciso alterar no modem para configurar esse redirecionamento?
Respostas:
O problema é que a reescrita de pacotes geralmente só pode ocorrer ao atravessar o firewall. Em geral, os roteadores não podem executar a reescrita necessária quando a solicitação chega da mesma rede na qual a solicitação seria reescrita. A solução comum para esse problema é colocar um proxy da Web fora da rede que faz o loop da solicitação de volta pelo firewall.
Suspeito que seu problema específico é que você deseja acessar o site por meio do nome do host DNS. Você pode lidar com isso usando o DNS com "horizonte dividido", para prestar atenção à origem da solicitação e responder adequadamente: Se a solicitação vier de dentro da sua rede, ele distribuirá 192.168.0.50 para solicitações provenientes do seu rede e o IP público para todos os outros.
Qualquer uma dessas sugestões pode ser implementada em qualquer host fora da sua rede, como uma micro instância (gratuita) do Amazon EC2.
fonte
Eu diria que o @Insyte está interessado em algo quando fala sobre o problema ser uma resolução de DNS .. o que significa que o problema está sendo reescrito por pacotes (leia o post do @Insyte novamente para obter essa explicação).
Supondo que você tenha a seguinte configuração:
201.206.x.y
192.168.0.50
201.206.x.y
→192.168.0.50
Você digita o seguinte no seu navegador enquanto está na sua rede interna:
e o erro ocorre. Então, solução: corte seu arquivo de hosts.
No Windows, vá para
C:\windows\system32\drivers\etc\hosts
(observe, não há extensão nesse arquivo). No Linux, o arquivo está localizado em/etc/hosts
.Se você abrir esse arquivo no Bloco de Notas, poderá ver as entradas usadas para substituir o DNS. Se você deseja atualizar esse arquivo, será necessário abrir o Bloco de notas (ou qualquer outro programa que esteja usando para editar o arquivo) com direitos de administrador - caso contrário, não será possível salvar o arquivo.
Adicione isso ao seu arquivo hosts:
192.168.0.50 www.yourwebsite.com
Em seguida, reinicie o navegador , digite o URL e violà! Está funcionando. Portanto, isso significa que seu navegador não depende do seu DNS para resolver seu domínio com o IP. Em vez disso, estamos substituindo isso e dizendo: Navegador, basta ir ao meu IP interno para esse nome de domínio, em vez de solicitar o endereço IP ao DNS .
Se você estiver em um escritório, poderá obter todas as pessoas que precisam acessar este site interno, invadir o arquivo de hosts ou, se tiver um DNS interno, poderá adicionar uma entrada.
Outra idéia é ter um servidor proxy interno (para toda a navegação na web, etc.) e depois hackear o arquivo hosts no servidor proxy. Isso significa que o seu navegador dirá: Proxy, você pode me
http://www.mywebsite.com
fornecer o recurso e o proxy diz Claro, e porque me disseram para ignorar o DNS desse domínio, darei o IP que foi codificado meu arquivo hosts .fonte
Esse é um problema comum na maneira como alguns roteadores lidam com o tráfego destinado ao endereço público a partir de um endereço interno - eles não seguem as mesmas regras de encaminhamento de porta que as solicitações de fora da rede. O que você precisa procurar nos roteadores é a reflexão da NAT . Isso permitirá que o roteador lide com solicitações internas do IP público para usar as mesmas regras de encaminhamento de porta como se a solicitação viesse de fora da rede.
fonte
Eu poderia ajudá-lo melhor se você pudesse me fornecer sua marca e modelo de modem ...
Mas o que acontece aqui é que normalmente uma página de configuração de roteador ou modem deve aparecer apenas ao visitar seu IP interno (192.168.0.1)
Mas o que parece estar acontecendo aqui é que ele identifica a solicitação recebida (201.206.xx) Como vem de dentro, decide fornecer a página de configuração em vez da rota normal para o servidor da Web ...
Agora, se você estiver usando um modem no nível do consumidor, provavelmente não poderá alterar isso (desculpe)
Mas talvez você possa: Experimente e veja se há configurações de 'escuta' na sua página de configuração de administrador
Lá, você pode tentar alterar sua página de administração para outra porta ou limitar os endereços a sua escuta.
fonte
Talvez o problema seja que a administração remota seja permitida.
fonte
Você pode adicionar uma rota para acessar o IP público do servidor diretamente através do seu IP local. No Windows, o comando é como
route add [public IP] mask 255.255.255.255 [the server's local IP]
Para adicionar uma rota persistente, adicione o
-p
parâmetro ao comando acima.Cada vez que você visita o IP público, o computador passa pelo IP local do servidor como gateway. Como o servidor conhece seu próprio IP público, ele processará o pacote por conta própria, em vez de encaminhá-lo para a rede local.
Você precisa garantir que o IP local do servidor esteja estático.
fonte
Tendo esse mesmo problema. Consegui consertar isso adicionando o nome do host DNS à lista de Mapeamento de host DNS do meu roteador. Encontrei essas configurações listadas na lista de opções avançadas do meu roteador.
fonte
No meu roteador, tive que desativar a "aceleração NAT" (Cut Through Forwarding), pois isso quebrou o loopback do NAT ...
fonte