Назад | Перейти на главную страницу

Знает ли преобразователь DNS об используемом протоколе прикладного уровня?

3G-соединение моего iPad обычно взламывается и показывает мне страницу приветствия моего провайдера каждый раз, когда я впервые захожу в Интернет. Я заметил, что это происходит только при использовании HTTP, и страницы, использующие HTTPS или любой другой протокол, будут извлечены без каких-либо проблем.

Сначала я подозревал, что мой провайдер просто обнюхивает мой запрос, чтобы определить, является ли он HTTP, и если это так, он отправляет моему iPad собственный HTTP-ответ, который перенаправляет его на эту надоедливую страницу. Однако у меня нет возможности проверить это, потому что нет способа изменить преобразователь DNS для соединения 3G или проверить заголовки ответов HTTP.

Сегодня я немного исследовал и увидел, как некоторые пользователи обсуждают это на форуме. Один из них подтвердил, что провайдер действительно перехватывает HTTP-запрос, поскольку это происходит только при использовании этого протокола, а другой сказал, что на самом деле это не то, что происходит, и провайдер фактически просто манипулирует ответом DNS. Другой пользователь подтвердил, что когда он изменил настройки DNS, страница перестала отображаться для него.

Это вызвало у меня вопрос. Определитель DNS каким-то образом знает, какой протокол я использую?
Есть ли другой способ, которым это могло произойти? Или то, что я читаю на этом форуме, на самом деле неправда?

Определитель DNS каким-то образом знает, какой протокол я использую?

Нет, но это можно догадаться. Я имею в виду, что www. начальный URL, скорее всего, является веб-сервером.

Но это совершенно не нужно. Провайдер должен переписывать HTTP-запросы, когда они проходят через так называемый прозрачный прокси. И там они получают целевой IP и имя запрошенного домена.

DNS ничего не знает об использовании приложением отправляемых запросов. И не должно / не может. Это одна из основных причин, по которой печально известный взлом «поисковика сайта» оказался такой плохой идеей, а «справочные страницы» на основе DNS обычно не работают.

Например, для flame.org я могу: ssh, mail, web, ftp, finger или jabber. Все, что делает DNS, - это возвращает имя для сопоставления адреса (или другого типа данных). Если я решу попробовать перенаправить только HTTP-запросы, это будет неудачей.