Я столкнулся с одним вопросом о SO, который инструктирует пользователя возиться с файлом hosts, чтобы обойти "проверку обновлений".

Данное программное обеспечение представляет собой Sublime Text Editor, а OP запрашивает способ отключить проверки обновлений. Решение состоит в том, чтобы добавить строку в файл hosts

127.0.0.1 www.sublimetext.com

Теперь это приемлемо или нет, это другой вопрос. Мне интересно знать, что именно происходит, если я помещаю это в файл hosts и как это решает проблему OP?

2 ответа2

2

Все, что делает файл hosts - это сопоставление доменных имен с IP-адресами. Когда они отображаются на 127.0.0.1, они отображаются на вашем локальном компьютере.

В этом случае, когда программное обеспечение ищет обновления, оно сверяется с известным доменным именем. При перенаправлении этого доменного имени на локальный компьютер вместо правильного компьютера проверка не будет выполнена, и обновление не может произойти. ВНИМАНИЕ, что просмотр веб-сайта www.sublimetext.com также не удастся.

Нет ничего изначально сомнительного в том, чтобы использовать файл hosts на вашем собственном оборудовании, и действительно каждая крупная ОС использует их.

1

Это вопрос о том, как работает интернет.

Когда вы вводите адрес в браузере, таком как Google.com, ваш компьютер должен знать фактический IP-адрес компьютера, к которому вы пытаетесь обратиться. Нужно свериться со списком, чтобы узнать, какой IP-адрес у Google.com сегодня.

Сначала ваш компьютер будет искать в своем DNS-кэше (система доменных имен), как если бы вы недавно были на сайте, тогда ПК больше не нужно искать.

Затем он заглянет в файл Hosts, чтобы узнать, записали ли вы IP-адрес этого сайта самостоятельно.

Если вашему ПК не удастся найти правильный IP-адрес локально, он запросит DNS-сервер, указанный в настройках вашей сетевой карты. Обычно параметр говорит "автоматический", что означает, что ваш компьютер просит ваш маршрутизатор выяснить, и если для маршрутизатора заданы настройки по умолчанию, запрос передается службе DNS вашего провайдера.

Если интернет-провайдер знает правильный IP-адрес, он сообщит об этом вашему ПК, после чего ваш компьютер подключится к Google.com. В противном случае DNS-серверы вашего интернет-провайдера будут искать другие более авторитетные DNS-серверы, которые имеют большие списки тех, кому принадлежит IP-адрес, пока он его не найдет.

Поскольку для поиска DNS-адресов иногда может потребоваться некоторое время, могут возникнуть проблемы с производительностью для ввода данных прямо в файл hosts. А в корпоративных сетях может потребоваться, чтобы определенные внутренние серверы были перечислены вручную. Чаще всего для домашнего пользователя, однако, он привык блокировать доступ к веб-сайтам, перечисляя внутренний IP-адрес локального ПК 127.0.0.1 (localhost). Например, вы можете загрузить большие файлы хостов, содержащие имена серверов рекламы, и затем всякий раз, когда ваш компьютер пытается подключиться к этим серверам для загрузки рекламы, соединение не будет установлено, и вы не увидите рекламу.

В случае вашего примера www.sublimetext.com, когда программное обеспечение пытается получить доступ к веб-сайту, оно направляется на локальный ПК (127.0.0.1). Поскольку он не получит ответ от вашего локального ПК, потому что вы не используете сервер обновления текстовых данных, обновление не будет выполнено.

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