Como meu roteador resolve um URL como http://router.asus.com/ para o seu endereço IP?
38
Normalmente, eu me conecto ao meu roteador pelo endereço IP de 192.168.1.1. No entanto, também posso conectar-me a ele na URL router.asus.com. Meu computador não tem conexão com a Internet. Como é que isso funciona?
Resolver um nome de domínio público para um IP privado parece uma má idéia, BTW.
Dmitry Grigoryev
O @DmitryGrigoryev router.asus.comredireciona para fora da caixa 192.168.1.1e foi incluído pela Asus. Não resolve o IP do meu roteador de fora da minha rede local.
Ryan R
Respostas:
63
Seu roteador possui seu próprio servidor DNS. Quando você o usa online, ele é encaminhado para o DNS do seu ISP, mas também é adicionado à sua própria entrada router.asus.compara apontar para si mesmo.
Como você provavelmente está usando DHCP, ele atribuirá automaticamente suas máquinas a usar seu próprio DNS. Você pode testar isso alterando para um servidor DNS atribuído manualmente (8.8.8.8 por exemplo), liberar o DNS e tentar a mesma URL.
Observe que a visita router.asus.comà minha conexão me leva a um site hospedado na Amazon que parece tentar procurar um roteador compatível na minha rede.
Parece que ele usa o JQuery a seguir para tentar pegar um arquivo JSON específico de um Nome de Máquina na rede:
Você pode ver os nomes que ele tenta acessar na captura de tela. Literalmente, apenas circula e, se for atingido, será redirecionado para o que encontrou.
Interessante. Você pode expandir a anotação que fez. Como o site hospedado na Amazon tem acesso à sua rede local atrás do firewall para procurar um roteador? (Isto é para aqueles que não têm um router Asus compatível ou mudaram seus DNS em seu Asus router Presumo)
Ryan R
@RyanR Added :)
Jonno
13
O servidor não está realmente examinando sua rede. Ele exibe uma página da web com Javascript. Seu navegador executa o javascript. Portanto, é o seu navegador que faz a "verificação". Eles não têm acesso especial à sua rede, é o seu navegador que tem acesso especial.
Aner
6
Definir seu próprio DNS nem sempre funciona para contornar o servidor DNS do roteador. Eu possuo pelo menos um roteador que intercepta solicitações DNS de saída para outros servidores DNS e as responde por si mesmas.
interfect
.localé o que é usado para Bonjour / Zeroconf.
Thorbjørn Ravn Andersen
7
Pessoalmente, não possuo um roteador Asus, e a resposta de Jonno é muito boa, mas há outra maneira possível de os roteadores fazerem isso (mesmo que não seja usado pelo seu particular).
Como essa página não é veiculada em HTTPS, é perfeitamente possível que o roteador intercepte a solicitação HTTP e responda sem precisar falar com nenhum servidor externo. Sabe-se que os roteadores Asus redirecionam páginas em algumas circunstâncias. Observe que, se o redirecionamento ocorrer mesmo sem uma conexão à Internet (ou seja, sem DNS externo), ele deverá ser causado pelo DNS do seu roteador; não há razão para que ambos não possam estar acontecendo.
Meu roteador doméstico Netgear, por exemplo, pode bloquear domínios e palavras-chave (exibindo uma página "bloqueada pelo firewall Netgear"), mesmo que eu não esteja usando o DNS. Eu me certifiquei de que não estivesse interceptando as solicitações de DNS; o nome é resolvido corretamente, mas ir para a página em um navegador da Web resulta na página "bloqueada".
Você pode testar essa teoria configurando seus servidores DNS para, digamos, Google ( 8.8.8.8) e executando ping no nome de domínio redirecionado.
Muito bom ponto. Isso significa que você não pode bloquear domínios HTTPS com o firewall Netgear ou tem a capacidade de bloquear o uso do DNS quando você o está usando e a solicitação é interceptada como um substituto?
Jonno 16/02
2
@ Jonno O problema é que você não pode bloquear domínios HTTPS por si só. Você pode bloquear um IP ou um intervalo de IPs e fazer com que o servidor DNS informe que o IP é diferente (e, portanto, "bloqueie", pois nunca encontrará o destino correto), mas como o roteador não pode ler o endereço IP. Pacotes HTTPS, sua única opção seria: 1. enviar um certificado incorreto, fornecendo uma página de erro "conexão não confiável" para cada site ou 2. bloquear a porta 443 (https) todos juntos. Ou são opções ruins e têm seus próprios problemas.
H2ooooooo 16/02
1
@ h2ooooooo Eu acredito que é mais preciso dizer que algo / alguém em uma posição privilegiada na sua rede não pode bloquear uma página HTTPS. Embora sem uma confiança CA, um MITM não pode distinguir a partir das informações de tráfego HTTPS mais granular do que o endereço do servidor / IP, o pedido é susceptível de ser precedido por pedido DNS de texto simples que faz especificar o domínio. Uma resposta DNS modificada ou negativa definitivamente pode impedir o tráfego para um domínio específico. Se um domínio realmente ofender, crie uma zona autorizada vazia no DNS.
TJD
@tjd Você pode simplesmente criar uma resposta DNS falsa, desde que tenha bloqueado servidores DNS não autorizados das máquinas host (ou melhor ainda; não permita que as pessoas as alterem nas máquinas da empresa).
é assim que meu (e provavelmente) seu roteador faz isso. Seu roteador provavelmente está executando o asuswrt com o dnsmasq. Você pode ter acesso ao shell (pelo menos via telnet) e procurar por si mesmo.
router.asus.com
redireciona para fora da caixa192.168.1.1
e foi incluído pela Asus. Não resolve o IP do meu roteador de fora da minha rede local.Respostas:
Seu roteador possui seu próprio servidor DNS. Quando você o usa online, ele é encaminhado para o DNS do seu ISP, mas também é adicionado à sua própria entrada
router.asus.com
para apontar para si mesmo.Como você provavelmente está usando DHCP, ele atribuirá automaticamente suas máquinas a usar seu próprio DNS. Você pode testar isso alterando para um servidor DNS atribuído manualmente (8.8.8.8 por exemplo), liberar o DNS e tentar a mesma URL.
Observe que a visita
router.asus.com
à minha conexão me leva a um site hospedado na Amazon que parece tentar procurar um roteador compatível na minha rede.Parece que ele usa o JQuery a seguir para tentar pegar um arquivo JSON específico de um Nome de Máquina na rede:
Você pode ver os nomes que ele tenta acessar na captura de tela. Literalmente, apenas circula e, se for atingido, será redirecionado para o que encontrou.
fonte
.local
é o que é usado para Bonjour / Zeroconf.Pessoalmente, não possuo um roteador Asus, e a resposta de Jonno é muito boa, mas há outra maneira possível de os roteadores fazerem isso (mesmo que não seja usado pelo seu particular).
Como essa página não é veiculada em HTTPS, é perfeitamente possível que o roteador intercepte a solicitação HTTP e responda sem precisar falar com nenhum servidor externo. Sabe-se que os roteadores Asus redirecionam páginas em algumas circunstâncias. Observe que, se o redirecionamento ocorrer mesmo sem uma conexão à Internet (ou seja, sem DNS externo), ele deverá ser causado pelo DNS do seu roteador; não há razão para que ambos não possam estar acontecendo.
Meu roteador doméstico Netgear, por exemplo, pode bloquear domínios e palavras-chave (exibindo uma página "bloqueada pelo firewall Netgear"), mesmo que eu não esteja usando o DNS. Eu me certifiquei de que não estivesse interceptando as solicitações de DNS; o nome é resolvido corretamente, mas ir para a página em um navegador da Web resulta na página "bloqueada".
Você pode testar essa teoria configurando seus servidores DNS para, digamos, Google (
8.8.8.8
) e executando ping no nome de domínio redirecionado.fonte
Só queria adicionar ao Jonnos responder que
é assim que meu (e provavelmente) seu roteador faz isso. Seu roteador provavelmente está executando o asuswrt com o dnsmasq. Você pode ter acesso ao shell (pelo menos via telnet) e procurar por si mesmo.
fonte