Shanraq.org Shanraq.org
DNS: как имя приводит к серверу
Общество

Информатика: создаём своего цифрового помощника Урок 41 из 46

DNS: как имя приводит к серверу

Узнаем, как имя сайта превращается в сетевой адрес, и почему DNS не подтверждает личность сайта.

Где мы на карте

Это урок 41 из 72, блок «Интернет, веб и облако» (39–46). Мы продолжаем один проект: три вымышленные записи и пять результатов напоминания из версии 1.0 должны сохраниться. На опорной схеме показан ровно тот переход, который можно объяснить и проверить; стрелка не означает, что все промежуточные устройства нарисованы.

DNS: как имя приводит к серверу

Ситуация и вопрос

Вы помните имя друга, но не знаете, где он сейчас. Адресная книга поможет найти актуальный номер, хотя сама она не докажет, кто взял трубку. С сайтом похожая история: человеку легче запомнить имя, а сети нужен адрес. Исследуем, что меняется между вводом assistant.test и попыткой соединения.

Новые слова без пропусков

Доменное имя — читаемая запись вроде assistant.test. DNS — система поиска записей об именах; её часто сравнивают с адресной книгой. DNS-запись A связывает имя с IPv4-адресом, а запись AAAA — с IPv6-адресом. Кэш временно хранит ответ, чтобы не спрашивать снова; TTL ограничивает время его обычного хранения. Это не проверка личности собеседника: подменённый или устаревший адрес возможен, а сертификат TLS проверяется отдельно.

Опорный сигнал

Прочитайте схему слева направо. Для каждой стрелки назовите вход, действие и проверяемый результат. Затем закройте подпись следующей карточки и предскажите её своими словами. Вернитесь к реальному примеру: различайте учебную аналогию, работу localhost и возможный удалённый сайт. Если картинка обещает больше, чем объяснение, исправьте объяснение или рисунок.

Разбираем шаг за шагом

В учебной таблице assistant.test → 203.0.113.7 найдите адрес по имени. Адрес 203.0.113.7 зарезервирован для документации и не является нашим действующим сайтом; .test предназначен для испытаний. Теперь вообразите, что запись поменяли на 203.0.113.8. Один компьютер ещё держит старый ответ в кэше, другой уже получил новый. Почему их попытки подключения могут отличаться? Считайте минуты TTL, но не обещайте точную синхронную смену: кэши и приложения ведут себя по-разному. Наш локальный сервер обходится без этой записи: 127.0.0.1 — явный адрес обратной петли.

Предскажите и проверьте

Не запускайте код сразу. Выпишите точный ожидаемый результат, включая порядок строк и символы. Объясните, что код доказывает, а чего не доказывает: этот маленький пример моделирует одно правило и не создаёт настоящий интернет, TLS-сертификат или открытый сервер. Затем выполните фрагмент в каталоге step-04 и сравните результат посимвольно. Измените один вход, сначала предскажите новый результат, потом проверьте.

records = {"assistant.test": "203.0.113.7"}
print(records["assistant.test"])

Ожидаемый вывод

203.0.113.7

Поймайте ошибку

Нельзя говорить, что DNS «доставляет страницу»: он обычно помогает найти адрес, после чего начинаются другие шаги. Столь же опасно считать, что верный адрес автоматически означает безопасный сайт. Название и адрес — две разные подсказки; доверие к удалённому серверу требует дополнительной проверки.

Изменение проекта

В схеме будущего размещения нарисуйте стрелку от имени к IP и подпишите «поиск DNS». Отдельной стрелкой покажите соединение и будущую проверку TLS. Возле localhost поставьте пометку «учебный выпуск без публичного DNS». Так не создаётся впечатление, будто проект уже опубликован в облаке.

Задание и доказательство

Даны две учебные записи: assistant.test → 203.0.113.7 и library.test → 203.0.113.8. Покажите, какой адрес вернётся для каждого имени. Затем запись первого имени меняется: объясните, почему старый кэш ещё может показывать прежний адрес и почему это не сертификат доверия.

Перенос в новую ситуацию

Кто-то прислал похожее имя с лишней буквой. Даже если DNS вернул рабочий IP, что вы проверите перед вводом пароля? Учебный помощник пароли не просит; отвечайте для знакомого вам настоящего сервиса.

Возврат через 1, 7 и 30 дней

Через 1 день нарисуйте главный переход по памяти и приведите контрпример к слишком простой аналогии. Через 7 дней объясните новый случай однокласснику, не читая готовый текст; проверьте не менее 7 из 10 вопросов. Через 30 дней повторите опыт с локальной веб-версией и убедитесь, что три исходных задачи и пять правил сохранились. Запишите, какой термин всё ещё непонятен, и вернитесь к его первому объяснению.

Первоисточник для проверки

Официальная документация

Следующий урок

TCP и UDP: разные обещания доставки

Если вы нашли ошибку или опечатку в тексте статьи, то сообщите нам об этом

Проверить доказательство проекта

Запишите наблюдение, объяснение, исправление ошибки и изменение своего проекта. Модель укажет первую перепутанную или недоказанную связь, но не даст готовый ответ.

Чтобы проверить, нужно войти. Войти

Комментарии (0)

Пока нет комментариев. Будьте первым.