Один из моих клиентов перенес свой сайт на массовый хостинг. Они обновили настройки DNS своего домена для записей A и CNAME, но не смогли определить, разрешается ли сайт новой учетной записи хостинга (новому IP-адресу).
При устранении проблем с DNS следует помнить о нескольких вещах: понимать, как работает DNS, понимать, как работает регистратор вашего домена, и понимать, как хост управляет своей записью домена.
Содержание
Как работает ДНК
Когда вы вводите домен в браузере:
- Домен ищется в Интернете текстовый сервер чтобы определить, куда отправить запрос.
- В случае запроса веб-домена (http) это сделает сервер имен. вернуть IP-адрес компьютеру.
- Затем ваш компьютер сохраняет его локально, так называемый ваш DNS-кеш.
- Запрос отправляется хосту, который пересылает запрос внутренне и представляет ваш сайт.
Как работает ваш регистратор доменов
Примечание: Не каждый регистратор доменов фактически управляет вашим DNS. Например, у меня есть клиент, который регистрирует свои домены через Yahoo! Хотя похоже, что Yahoo! делает это внутри своей администрации, Yahoo! является только реселлером Tucows. В результате, когда вы меняете настройки DNS в Yahoo!, обновление этих изменений может занять несколько часов. настоящий регистратор доменов.
Когда ваши настройки DNS обновляются, они распространяются на множество серверов в Интернете. В большинстве случаев это происходит в течение нескольких секунд. Это одна из причин, по которой люди будут платить за управляемый DNS. Компании, занимающиеся управлением DNS, обычно одновременно избыточны и невероятно быстры… часто быстрее, чем ваш регистратор доменов.
После обновления интернет-серверов при следующем запросе DNS вашей системой будет возвращен IP-адрес, на котором размещен ваш веб-сайт. ПРИМЕЧАНИЕ: Помните, я сказал, что в следующий раз ваша система сделает запрос. Если вы ранее запрашивали этот домен, Интернет может быть обновлен, но ваша локальная система может разрешать старый IP-адрес на основе вашего DNS-кеш.
Как работает DNS вашего хоста
IP-адрес, возвращаемый и кэшируемый вашей локальной системой, обычно не уникален для одного сайта. Хост может иметь десятки или даже сотни веб-сайтов, размещенных на одном IP-адресе (обычно это сервер или виртуальный сервер). Поэтому, когда ваш домен запрашивается с IP-адреса, ваш хост перенаправляет ваш запрос в определенную папку на сервере и отображает вашу страницу.
Как исправить проблемы с DNS
Поскольку здесь три системы, то и системы устранения неполадок тоже три! Сначала вам нужно проверить свою локальную систему, чтобы увидеть, на что указывает IP-адрес в вашей системе:
Это легко сделать, открыв окно терминала и набрав:
ping domain.com
Или вы можете выполнить поиск по конкретному текстовому серверу:
nslookup domain.com

Если вы обновили настройки DNS у регистратора домена, убедитесь, что ваш кеш DNS очищен и вы хотите повторить запрос. Чтобы очистить кэш DNS в macOS:
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder
sudo killall mDNSResponderHelper
sudo dscacheutil -flushcache

На этом этапе вы можете попробовать выполнить команду ping еще раз или nslookup чтобы узнать, назначается ли домену новый IP-адрес.
Следующим шагом будет проверка актуальности DNS-серверов Интернета. Поддерживать ДНК материал удобно для этого: вы можете получить полный отчет о ДНК через их платформу, и это действительно хорошо.
Если вы видите, что IP-адрес отображается правильно в Интернете, а ваш сайт по-прежнему не отображается, вы можете обойти интернет-серверы и заставить вашу систему отправить запрос непосредственно на IP-адрес. Это можно сделать, обновив свой hosts
файл и очистите свою ДНК. Для этого откройте терминал и введите:
sudo nano /etc/hosts

Введите системный пароль и нажмите Enter. Это отобразит файл прямо в терминале для редактирования. Переместите курсор с помощью стрелок и добавьте новую строку с IP-адресом, за которым следует имя домена.

Нажимать control-o
на клавиатуре, чтобы сохранить файл, затем вернитесь, чтобы подтвердить имя файла. Выйдите из редактора, нажав Control-x, что вернет вас в командную строку. Не забудьте очистить кеш. Если сайт не работает должным образом, возможно, это локальная проблема вашего хостера, и вам следует связаться с ним и сообщить об этом.
Последнее замечание: Не забудьте вернуть исходную версию файла хостов. Вы не хотите оставлять запись, которую хотите автоматически обновлять!
Выполнив эти шаги, я смог убедиться, что мои записи DNS в регистраторе обновлены, что мои записи DNS в Интернете обновлены, что кэш DNS моего Mac обновлен и что DNS моего веб-хоста был в курсе. Все идет нормально!