Мой провайдер кеширует DNS?

13

Я зашел на мой zoneedit.com, изменил mydomain.com, чтобы он указывал на другой IP. Но изменения еще не вступили в силу.

Это потому что мой провайдер DNS кеширует?

Alex
источник

Ответы:

22

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

Кэтрин Макиннес
источник
1
Есть ли способ проверить записи DNS / TTL у ваших интернет-провайдеров, не связываясь с ними?
PussInBoots
12

Я столкнулся с той же проблемой и исправил ее с помощью Google DNS

Откройте настройки сети / IP. Используйте DNS-серверы как:

8.8.8.8
8.8.4.4

Это Google DNS, и он решит вашу проблему, пока ваш провайдер не обновит кетч введите описание изображения здесь

Voo
источник
1
Отличное временное исправление. Можно просто переключиться на DNS-серверы Google на день или два, пока их тупой провайдер (который не уважает TTL) не очистит кэш DNS. Я использую это, и это работало отлично. Большое спасибо!
its_me
2

Здесь есть две вещи. Один из них - это время, которое требуется вашему регистратору домена для размещения записей DNS, предоставленных вами через веб-форму или панель управления, на DNS-серверах регистратора. Этот процесс обновления обычно происходит в течение 15 минут.

Во-вторых, есть поле TTL каждого RR (запись реестра), которое в основном говорит: если кто-то спрашивал о domain.com ранее, кэшируйте domain.com -> IP-адрес RR в течение TTL-секунд (кэшируйте, поэтому мне не нужно спрашивать авторитетный сервер снова / каждый раз, когда какой-то хост спрашивает о domain.com). Значения TTL варьируются, обычно они установлены на 1 день == 86400 секунд.

На самом деле вы можете проверить, кэшировал ли DNS-сервер вашего провайдера результат, явно запросив DNS-сервер провайдера, используя команды:

nslookup domain.com ns1.isp.com
dig domain.com @ns1.isp.com

TTL в поле ответа будет указывать, сколько времени RR кэшируется на сервере.

colemik
источник
Я думаю, что если я получу «запрос истек», это означает, что они не кешировали его
Omu
1

Alex:

Да. DNS-запись вашего домена задает значение TTL («время жизни»), которое предписывает клиентским компьютерам (и серверам имен ISP) кэшировать результаты в течение определенного периода времени перед повторным запросом. Стандартные значения 24-48 часов являются типичными.

Вот одна хорошая практика для того, чтобы будущие переходы проходили более плавно: перейдите за несколько дней до даты сокращения и измените значение TTL на очень короткое, например, 300 секунд. Когда вы настраиваете новый IP-адрес, вы можете установить его обратно на 24 часа. С вашей точки зрения, главное преимущество длинных TTL заключается в том, что посетители вашего сайта получат преимущество в производительности от кэшированных DNS-запросов. Это также снижает нагрузку на серверы имен вашего домена.

В свете текущей ситуации вы можете изучить возможность продолжения зеркалирования вашего контента в течение нескольких дней по старому адресу (если ваш сайт статичен) или настройки HTTP-сервера на старом IP-адресе вашего домена для направления запросов на новый IP-адрес (если ваш сайт динамический).

Ура,

миль

штурмовик типа "Скайхки"
источник
1

Ваш Интернет-провайдер использует DNS-сервер, который кэширует записи DNS до тех пор, пока вы говорите об этом.

Если вы управляете записью DNS, одним из аспектов этой записи является «TTL», который сообщает DNS-серверам (и правильно действующим клиентам), как долго следует кэшировать это значение после того, как оно получит его от авторитетного DNS-сервера.

Обратите внимание - между вашим интернет-провайдером и DNS-сервером вашего интернет-провайдера существует огромное различие. Ничто не заставляет вас использовать DNS-сервер вашего интернет-провайдера. Вы можете запустить рекурсивный сервер самостоятельно, вы можете использовать DNS-серверы Google, вы можете использовать OpenDNS.

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

Крис
источник
-1

Обновление записей зоны может занять до 72 часов для распространения по всему миру. И да, ваш провайдер кеширует DNS-запросы

Редактировать: есть ряд онлайн-инструментов, которые вы можете использовать для отслеживания хода обновления. Проверьте это.

Ираклис
источник
1
@ Ираклис: Это неверно. Вы "распространяете" миф. Записи DNS не распространяются, они кешируются. Они кэшируют TTL рассматриваемой записи, а не 72 часа, если TTL не равен 72 часам.
Joeqwerty
7
@joeqwerty, в защиту @ Ираклиса, это вопрос перспективы. Записи активно не выгружаются, это правда, но можно было бы назвать процесс истечения срока действия кэшей и получения распространения новых записей. С определенной точки зрения. Например, запись 7 в викисловарях en.wiktionary.org/wiki/propagate
dsolimano
1
@dsolimano: Без обид, но я не согласен. Независимо от того, как вы смотрите на это, у распространения слова есть определенное определение, которое не открыто для интерпретации. Его «представление» о том, что записи DNS распространяются и что это распространение занимает 72 часа, неверно, и поддержка такой идеи только способствует распространению ложной информации о том, как работает DNS.
Joeqwerty
4
Я все еще чувствую, что термин «распространение» описывает, как DNS-записи обновляются лучше, даже если это не означает технически подталкивающих значений. Во всяком случае, но это только я.
Ираклис
1
Распространение очень хорошо работает как термин, который, как правило, понимают пользователи, не являющиеся техническими специалистами.
ceejayoz