In che modo il mio router risolve un URL come http://router.asus.com/ nel suo indirizzo IP?


38

In genere mi collego al mio router tramite il suo indirizzo IP di 192.168.1.1. Tuttavia, sono anche in grado di collegarmi all'URL router.asus.com. Il mio computer non ha una connessione a Internet. Come funziona?


6
Risolvere un nome di dominio pubblico a un IP privato sembra una cattiva idea, BTW.
Dmitry Grigoryev,

@DmitryGrigoryev router.asus.comreindirizza fuori dalla scatola 192.168.1.1ed è stato incluso da Asus. Non si risolve nell'IP del mio router dall'esterno della mia rete locale.
Ryan R,

Risposte:


63

Il tuo router ha il suo server DNS. Quando lo usi online, verrà inoltrato al DNS del tuo ISP, ma ha anche aggiunto la propria voce router.asus.comper puntare a se stesso.

Poiché probabilmente stai utilizzando DHCP, assegnerà automaticamente alle tue macchine l'utilizzo del proprio DNS. È possibile verificarlo passando a un server DNS assegnato manualmente (ad esempio 8.8.8.8), svuotare il DNS e quindi provare lo stesso URL.

Nota che visitare router.asus.comcon la mia connessione mi porta a un sito ospitato con Amazon che sembra cercare di cercare un router compatibile sulla mia rete.

Schermata del sito su router.asus.com

Sembra che usi il seguente JQuery per provare a prendere un file JSON specifico da un Nome macchina sulla rete:

$.ajax({
            url: "http://" + target.domainName + "/findasus.json", 
            dataType: "jsonp",
            timeout: 20000,
            global: true,
            complete: function(jqXHR, textStatus){
                switch(jqXHR.status){
                    case 0:
                        target.status = 2;
                        break;
                    default:
                        target.status = 1;
                        iAmAlive({
                            modelName: target.domainName.replace("findasus.local", "ASUS"),
                            ssid: "",
                            ipAddr: target.domainName
                        });
                }

                sessionComplete();
            }
        });

Puoi vedere i nomi a cui tenta di accedere nello screenshot. Passa letteralmente in rassegna e se ottiene un successo reindirizzerà a ciò che ha trovato.


1
Interessante. Puoi espandere la nota che hai fatto. In che modo il sito ospitato su Amazon ha accesso alla tua rete locale dietro il firewall per cercare un router? (Questo è per coloro che non hanno un router Asus compatibile, o hanno cambiato il loro DNS sul loro router Asus presumo)
Ryan R

@RyanR Aggiunto :)
Jonno,

13
Il server non sta effettivamente eseguendo la scansione della rete. Serve una pagina web con Javascript. Il tuo browser esegue javascript. Quindi è il tuo browser che esegue la "scansione". Non hanno un accesso speciale alla tua rete, è il tuo browser ad avere un accesso speciale.
Aner,

6
L'impostazione del proprio DNS non sempre funziona per aggirare il server DNS del router. Possiedo almeno un router che intercetta le richieste DNS in uscita verso altri server DNS e le risponde da solo.
interfaccia il

.localè ciò che viene utilizzato per Bonjour / Zeroconf.
Thorbjørn Ravn Andersen,

7

Personalmente non possiedo un router Asus e la risposta di Jonno è molto buona, ma c'è un altro modo possibile per i router di farlo (anche se non è usato da quello specifico).

Dal momento che quella pagina non viene pubblicata su HTTPS, è del tutto possibile per il router semplicemente intercettare la richiesta HTTP e rispondere senza parlare ad alcun server esterno. I router Asus sono noti per reindirizzare le pagine in alcune circostanze. Si noti che se il reindirizzamento si verifica anche senza una connessione Internet (ovvero senza DNS esterno), deve essere causato dal DNS del router; non c'è motivo per cui entrambi non possano andare avanti, però.

Il mio router domestico Netgear, ad esempio, può bloccare domini e parole chiave (che servono una pagina "bloccata dal firewall Netgear") anche se non sto usando il suo DNS. Mi sono assicurato che non intercettasse le richieste DNS; il nome viene risolto correttamente, ma accedendo alla pagina in un browser Web si ottiene la pagina "bloccata".

Puoi testare questa teoria impostando i tuoi server DNS su, diciamo, di Google ( 8.8.8.8) e eseguendo il ping del nome di dominio reindirizzato.


Ottimo punto Questo significa che non puoi bloccare domini HTTPS con il firewall Netgear o ha la capacità di bloccare usando DNS quando lo stai usando e la richiesta viene intercettata come fallback?
Jonno,

2
@Jonno Il problema è che non puoi bloccare i domini HTTPS di per sé. Puoi bloccare un IP o un intervallo di IP e puoi fare in modo che il server DNS ti dica che l'IP è diverso (e quindi "bloccalo" in quanto non troverà mai la destinazione corretta), ma poiché il router non è in grado di leggere il Pacchetti HTTPS l'unica opzione sarebbe quella di 1. server un certificato improprio che dà una pagina di errore "connessione non attendibile" per ogni sito Web o 2. blocco porta 443 (https) tutti insieme. O sono opzioni schifose e hanno i loro problemi.
h2ooooooo,

1
@ h2ooooooo Credo sia più preciso affermare che qualcosa / qualcuno in una posizione privilegiata sulla tua rete non può bloccare una pagina HTTPS. Mentre senza un attendibile CA, un MITM non può distinguere dalle informazioni traffico HTTPS più granulare che l'indirizzo del server / IP, la richiesta è probabile che sia preceduto da testo semplice richiesta DNS che fa specificare il dominio. Una risposta DNS modificata o negativa potrebbe sicuramente impedire il traffico verso un dominio specifico. Se un dominio è davvero offensivo, crea una zona autorevole vuota per esso nel tuo DNS.
martedì

@tjd Puoi semplicemente creare una falsa risposta DNS purché tu abbia bloccato qualsiasi server DNS non autorizzato dai computer host (o anche meglio; non permettere alle persone di cambiarli sui computer aziendali).
h2ooooooo,

1

Volevo solo aggiungere a Jonnos la risposta

admin@asus-rt-n18u:/tmp/home/root# grep asus.com /etc/*
/etc/hosts:192.168.201.5 router.asus.com

è come il mio (e molto probabilmente) il tuo router lo fa. Il router probabilmente sta eseguendo asuswrt con dnsmasq. Puoi avere accesso alla shell (almeno via telnet) e cercare te stesso.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.