Мое понимание основной функциональности DNS является предоставление услуги именования / отображения между доменными именами (например blah-whatever.com
) и IP - адресом (например , 100.2.3.4 ).
Кроме того, мое понимание того , как Интернет DNS серверов работы является то , что , когда домен / запись отображение IP изменяется (например, изменение blah-whatever.com
к теперь указывают на 105.2.3.4 , и т.д.), это необходимо изменить , чтобы распространяться через каждый DNS - сервер в мире до того , как изменение может быть названо «полным». Этот период размножения иногда может длиться до 24 часов.
Таким образом, чтобы начать с, если все, что я сказал до сих пор является ошибочными или неверными, пожалуйста, начать исправляя меня!
Предполагая , что я более или менее правильно, я не понимаю , как такие компании , как CloudFlare или DynamicDNS может предложить «мгновенное опрокидывание» -типа услуги , в котором вы изменить DNS запись с ними и - бум - изменение происходит мгновенно влияет.
Я понимаю, что есть нечто, называемое «TTL» (время жить, я полагаю?!?), Который играет роль в этой возможности мгновенного опрокидывания, но так как я уже нечеткий на возможности, чтобы начать с ним трудно понять, что это TTL является или с какой целью она служит.
Поэтому я спрашиваю: что это о Dynamic DNS и его конкурентов, что позволяет им изменять DNS отображениями мгновенно (без учета 24 часа, распространяющиеся изменения DNS, как и все остальные), и каким образом TTL вписывается в этот процесс? Заранее спасибо.
источник
У вас есть некоторые заблуждения, поэтому я постараюсь объяснить весь процесс. (Я хорошо с деталями, так как я участвовал в работе службы общественного динамического DNS).
Допустит, что ваш домен example.com , и скажем , example.com домен размещен с некоторой динамической DNS компанией, давайте назовем его lightfastdns.net (вымышленное имя). Ваш домен содержит запись DNS - somehost.example.com , который в настоящее время указывает на 1.1.1.1 .
При внесении изменений в ваш DNS - записи, это изменение первой представляется в какой - то промежуточный сервер, управляемый lightfastdns.net, например updates.lightfastdns.net . Это происходит почти мгновенно (в долях секунды). Вы можете отправить обновление через веб - интерфейс или с помощью динамического обновления клиента, или через какой - либо API. Это не имеет значения, в любом случае это обновление поступит на какой - то сервер , который обрабатывает DNS обновления.
Этот сервер обновлений помещает обновленную запись (скажем, 1.2.3.4 ) на « мастер » DNS - сервер для домена. Этот DNS-сервер также обслуживается lightfastdns.net . Как быстро это произойдет: зависит от того, как провайдер DNS разработали свои программы. (Это может происходить мгновенно и может происходить каждые 24 часа. Например, gandi.net отправляет обновления DNS раз в час.) Конечно, наш lightfastdns.net сделает это мгновенно.
Этот главный DNS-сервер отправляет обновления на подчиненные DNS-серверы для домена example.com . Этими серверами также управляет та же компания lightfastdns.net . Как быстро это происходит: с современным программным обеспечением мастером мгновенно отправит УВЕДОМИТЬ сообщение для рабов , и они будут немедленно получить обновленную запись от мастера. со старым программным обеспечением мы имели значения освежают и Retry в записи SOA, но сегодня это редко актуально. Конечно, наш lightfastdns.net реализует NOTIFY и обновления распространяются мгновенно.
Теперь мы имеем, что все «авторитетные» серверы для вашего домена получили обновленную запись ( 1.2.3.4 ). Для lightfastdns.net это заняло около двух секунд.
Теперь, мы будем двигаться к дому Ивана в России, и Иван хочет открыть « somehost.example.com » в своем браузере. Если он никогда не открывал это раньше, его браузер не знает адрес, поэтому браузер спросит его операционную систему. Но, если он посетил недавно, адрес может все еще быть сохранены в браузере, и он будет использовать старый (устаревший) адрес! На сколько долго ? - Зависит от браузера Google Chrome, например магазины DNS записи только до 60 секунд. Мы до 60 секунд задержки . этот факт, я бы сказал , что изменения DNS не распространяются на этот браузер еще.
В любом случае, через 60 секунд, или сразу, браузер будет в конечном счете задать операционную систему , чтобы получить адрес. Операционная система уже может знать (старый, устаревший) ответ, и вернуть его, в данном случае я бы сказал , что новая запись не распространяется еще OS Ивана. Как долго ОС будет хранить старое значение - для современных операционных систем это контролируется параметром TTL . TTL в DNS определяет, как долго запись может храниться в кеше. Наш lightfastdns.net позволил использовать довольно низкий TTL - 30 секунд, поэтому мы получили новую задержку до 30 секунд, в целом - до 90 секунд .
Если ОС не знает ответа, или если ответ он знал , что теперь устаревает TTL, OS задаст DNS распознаватель (ISP Иван назначил его с распознавателя DNS dns.moscow-telecom.ru ). Вот, старая запись может находиться в кэше до TTL секунд, или dns.moscow-telecom.ru не может знать адрес. Мы получаем еще 30 секунд, так как dns.moscow-telecom.ru также кэширует DNS не более чем на значение TTL. У нас задержка 120 секунд . То есть то , что называется , что новый DNS запись еще не распространяется на Москва-Телеком DNS - серверов.
Если DNS - сервер провайдер не знает ответа, или если ответ он знал , уже устарел , потому что это TTL истек - dns.moscow-telecom.ru задаст один из АВТОРИТЕТНЫХ серверов DNS для example.net (вы помните их?). Те получили изменения около 118 секунд назад, и они вернутся новый ответ, этот ответ будет немедленно отправлен по цепочке разрешения имен DNS, в ОС и браузер Ивана.
Таким образом, распространяющаяся запись приняла от 2 до 120 секунд, в зависимости от состояния различных кэшей. Более длинные TTL - больше задержки могут иметь место.
Для того, чтобы сделать ее полной - некоторые интернет - провайдеры нарушают стандарты и записи кэша в течение длительного времени. Некоторые старые операционки держали старую запись в течение длительного времени, и старые браузеры тоже. Но для большинства пользователей это работает , как ожидалось.
источник
Нет. Изменение не должно распространяться на каждый DNS-сервер в мире .
Если вы что-то измените и кто-то запросит измененную запись на вашем DNS-сервере, результат будет мгновенным.
Проблема заключается в том, если вы опрошены этом имени раньше, и он получил в кэш. После этого вы получите старый IP, пока кэш не истечет. В DNS вы можете установить, как долго старый запрос является действительным, и этот период часто устанавливается на несколько дней. Для DynDNS это обычно устанавливается ниже, но не все распознаватели DNS соблюдают это.
источник