Я установил несколько доменов в своей капле, и они ссылаются друг на друга. В настоящее время, когда я выполняю nslookup для этих доменов из капли, разрешение DNS обрабатывается 67.207.67.3, который является DNS-сервером Digital Ocean, и он, к счастью, указывает на ту же каплю (localhost) через общедоступный IP-адрес.
Чтобы сэкономить время поиска и ускорить «время загрузки страницы» страниц, ссылающихся на эти домены, я попробовал выполнить следующие шаги, но рисую полностью пустой:
Попытка сохранить эти 235 мс времени поиска DNS
Изменен файл / etc / hosts так, чтобы эти домены указывали на localhost (127.0.0.1), однако это не имеет никакого эффекта.
Изменил файл /etc/cloud/templates/hosts.redhat.tmpl и вставил туда записи, но поиск происходит на сервере DO DNS.
Убедитесь, что в /etc/nsswitch.conf указано, что порядок разрешения - «файлы», за которым следует «DNS».
Перезапустил сетевой сервис, чтобы опубликовать все изменения. Пытался перезагрузить ... Все равно не повезло.
Что мне не хватает? Как мне изменить приоритет разрешения имен, чтобы он сначала просматривал файл hosts, а если запись не найдена, он затем просматривал DNS-серверы?
Я вижу записи серверов имен в / etc / network / interfaces и /etc/resolv.conf, однако я не уверен, что их изменение приведет к каким-либо результатам.
Любые указатели будут оценены по достоинству. Заранее спасибо.
Я предполагаю, что вы тестируете nslookup
/host
/dig
?
Они не смотрят в /etc/nsswitch.conf
и сначала спрашивают DNS, поскольку они являются инструментами диагностики DNS.
Попробуйте выполнить пинг до домена, который он должен разрешить. 127.0.0.1
согласно /etc/hosts
.
Все остальные демоны также должны разрешить 127.0.0.1
, если они этого не сделают, вставьте содержимое /etc/nsswitch.conf
и /etc/hosts