Acessar IP interno usando IP público

31

Eu tenho um modem DSL com um endereço IP público ( 201.206.x.x ) e tenho um servidor da 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 web, assim, se eu acessar 201.206.x.x de fora da minha rede, ele mostra minha página da web, o mesmo acontece 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 tenho que mudar no modem para configurar este redirecionamento?

    
por willvv 19.03.2011 / 23:41

8 respostas

17

O problema é que a regravação de pacotes geralmente só pode ocorrer ao atravessar o firewall. De um modo geral, os roteadores não podem executar a reescrita necessária quando a solicitação está chegando da mesma rede para a qual a solicitação seria reescrita. A solução comum para esse problema é colocar um proxy da web fora da rede que faça o loop da solicitação pelo firewall.

Eu suspeito que seu problema específico é que você gostaria de acessar o site por meio de seu nome de host DNS. Você pode lidar com isso usando o DNS "split-horizon", de modo que fique atento ao local de onde a solicitação está vindo e responda apropriadamente: Se a solicitação estiver vindo de dentro da sua rede, ela distribuirá 192.168.0.50 para solicitações vindas de sua rede. rede e o IP público para todos os outros.

Qualquer uma dessas sugestões pode ser implementada em qualquer host fora de sua rede, como uma micro instância do Amazon EC2 (gratuita).

    
por 20.03.2011 / 00:02
14

Eu diria que @Insyte está em algo quando fala sobre o problema ser uma questão de resolução de DNS ... o que significa que o problema é a reescrita de pacotes (leia @Insyte post novamente para essa explicação).

Supondo que você tenha a seguinte configuração:

  1. IP público: 201.206.x.y
  2. IP privado: 192.168.0.50
  3. Encaminhamento de porta para todos os 80 (e 443 se você estiver usando SSL) no IP 201.206.x.y192.168.0.50

Você digita o seguinte no seu navegador, enquanto está na sua rede interna:

http://www.yourwebsite.com

e o erro ocorre. Então, solução: hackear seu arquivo de hosts.

No Windows, vá para C:\windows\system32\drivers\etc\hosts (observe que não há extensão nesse arquivo). No Linux, o arquivo está localizado em /etc/hosts .

Se você abrir o arquivo no Bloco de Notas, poderá ver as entradas usadas para substituir o DNS. Se você deseja atualizar esse arquivo, você precisará abrir o Bloco de Notas (ou qualquer programa que esteja usando para editar o arquivo) com direitos de Administrador - caso contrário, você não poderá salvar o arquivo.

Adicione isso ao seu arquivo de hosts:

192.168.0.50 www.yourwebsite.com

Em seguida, reinicie seu navegador , insira o URL e violà! Está funcionando. Então, isso significa que seu navegador não depende do seu DNS para resolver seu domínio para o IP. Em vez disso, estamos ignorando isso e dizendo: Navegador, basta ir ao meu IP interno para esse nome de domínio, em vez de pedir ao DNS o endereço IP .

Se você estiver em um escritório, poderá obter todas as pessoas que precisam acessar esse site interno, hackear o arquivo de hosts ou, se tiver um DNS interno, adicionar uma entrada a ele.

Outra ideia é ter um servidor proxy interno (para toda a navegação na web, etc) e, em seguida, hackear o arquivo hosts no servidor proxy. Isso significa que seu navegador dirá, Proxy, você pode, por favor, obter o recurso http://www.mywebsite.com e o proxy diz Claro, e como me disseram para ignorar o DNS desse domínio, eu vou apenas dar o IP que foi codificado no meu arquivo de hosts .

    
por 20.03.2011 / 01:32
8

Este é um problema comum na maneira como alguns roteadores lidam com o tráfego destinado a seu 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 seus roteadores é o reflexo NAT . Isso permitirá que o roteador manipule solicitações internas para que o IP público use as mesmas regras de encaminhamento de porta, como se a solicitação viesse de fora da rede.

    
por 20.03.2011 / 02:27
2

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 quando visitar seu IP interno (192.168.0.1)

Mas o que parece estar acontecendo aqui é que ele identifica a solicitação recebida (201.206.x.x) Como vindo de dentro, decide dar a você a página de configuração ao invés da rota normal para o seu servidor web ...

Agora, se você estiver usando um modem no nível do consumidor, provavelmente não será possível alterar isso (desculpe)

Mas talvez você possa: Experimente e veja se há configurações 'listen' na sua página de configuração do administrador

Lá você pode tentar alterar sua página de administração para outra porta Ou limitar os endereços a ouvir por

    
por 20.03.2011 / 00:00
2

Talvez o problema seja que a administração remota é permitida.

    
por 20.03.2011 / 00:08
2

Você pode adicionar uma rota para acessar o IP público do servidor diretamente por meio de 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 parâmetro -p ao comando acima.

Então, toda vez que você visitar o IP público, o computador passará pelo IP local do servidor como gateway. Como o servidor conhece seu próprio IP público, ele processará o pacote de si mesmo, em vez de encaminhá-lo para a rede local.

Você precisa garantir que o IP local do servidor estático.

    
por 12.03.2015 / 04:14
0

Tendo esse mesmo problema. Consegui consertar isso adicionando o nome do host DNS à lista de Mapeamento de Host DNS do meu roteador. Eu encontrei essas configurações listadas na lista de opções avançadas do meu roteador.

    
por 05.12.2015 / 06:31
0

No meu roteador, eu tive que desativar a "aceleração de NAT" (Cut Through Forwarding), pois isso quebrou o loopback de NAT ...

    
por 09.04.2016 / 18:37