38

Обычно я подключаюсь к маршрутизатору по его IP-адресу 192.168.1.1 . Тем не менее, я также могу подключиться к нему по адресу router.asus.com . Мой компьютер не подключен к Интернету. Как это работает?

3 ответа3

63

У вашего роутера есть собственный DNS-сервер. Когда вы используете его в Интернете, он будет перенаправлять на DNS вашего интернет-провайдера, но он также добавляет свою собственную запись на router.asus.com чтобы указать на себя.

Поскольку вы, вероятно, используете DHCP, он автоматически назначит вашим компьютерам использовать собственный DNS. Вы можете проверить это, перейдя на DNS-сервер, назначенный вручную (например, 8.8.8.8), очистить DNS и затем попробовать тот же URL-адрес.

Обратите внимание, что посещение router.asus.com с моим подключением приводит меня на сайт, размещенный на Amazon, который пытается найти совместимый маршрутизатор в моей сети.

Снимок экрана сайта на router.asus.com

Похоже, что он использует следующий JQuery, чтобы попытаться получить определенный файл JSON с Имени машины в сети:

$.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();
            }
        });

Вы можете увидеть имена, к которым он пытается получить доступ на скриншоте. Буквально только проходит через, и если он получает удар, он будет перенаправлен на то, что он нашел.

7

У меня лично нет маршрутизатора Asus, и ответ Джонно очень хороший, но есть другой возможный способ сделать это (даже если он не используется вашим конкретным).

Поскольку эта страница не обслуживается по HTTPS, маршрутизатор может полностью перехватить HTTP-запрос и ответить на него, не обращаясь к нему на внешнем сервере. Известно, что маршрутизаторы Asus при некоторых обстоятельствах перенаправляют страницы. Обратите внимание, что если перенаправление происходит даже без подключения к Интернету (то есть без внешнего DNS), оно должно быть вызвано DNS вашего маршрутизатора; нет никакой причины, что оба не могли бы продолжаться, все же.

Мой домашний маршрутизатор Netgear, например, может блокировать домены и ключевые слова (обслуживая страницу "заблокирован брандмауэром Netgear"), даже если я не использую его DNS. Я убедился, что он не перехватывает запросы DNS; имя разрешается правильно, но переход на страницу в веб-браузере приводит к "заблокированной" странице.

Вы можете проверить эту теорию, настроив свои DNS-серверы, скажем, на Google (8.8.8.8) и пропингуя перенаправленное доменное имя.

1

Просто хотел добавить к Йонносу ответ, что

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

Вот как мой (и, скорее всего) ваш маршрутизатор делает это. Ваш маршрутизатор, вероятно, работает asuswrt с dnsmasq. Вы можете иметь доступ к оболочке (по крайней мере, через telnet) и искать сами.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .