| >а DNS сервера располагаются у каждого хостера
DNS - это не база в привычном смысле этого слова, это такой параллельный "Интернет", вернее служба Интернет, организованная в виде сети. Когда вы паркуете доменное имя, вы сообщаете регистратору, где он должен искать информацию о вашем сайте, вводя адреса DNS-серверов вашего хостинга (эти адреса, кстати, тоже где-то зарегистрированы, в другом DNS-сервере). Хостеры, да имеют у себя DNS-сервера, иначе им самим придется обращаться к какому-то DNS-серверу с просьбой прописать там IP-адрес машины, где они расположили сайт с этим доменным именем. Это все будет настолько долго, потребует такого количества работы и будет столько ошибок, что это будет ужас, а не хостинг. Свои сервера можно автоматизировать.
>они куда-то их отправляют(типа база всех DNS)?
Не совсем, видите, адреса организованы через точки (www.softtime.ru) домен третьего уровня www расположен в доменной зоне домена второго уровня softtime, который расположен в домене первого уровня ru. Домен первого уровня обслуживает несколько регистраторов, информация от которых стекается к RuCenter - главному координатору зоны ru. В мире имеются также корневые DNS-сервера, которые сообщают, где искать координаторов доменных зон com, net, ru и т.д. (раньше их было не много, но очень мощных, после ряда атак, их количество увеличили на порядок и разбросали по миру).
>Получается, что второй DNS дублирует первый, это на всякий пожарный, если первый не
>будет доступен?
Да, их можно и больше ввести и 3 и 4 и сколько захотите. Однако, все устроено так, что два - это минимум. Если один выходит из строя или перегружен, обращение пойдет ко второму.
>И интересно что происходит, когда человек вводит в строке браузера sait.ru. Куда этот запрос
>посылается, что в мире находится определенный DNS, в котором есть запись по этому sait.ru
Посылает запрос DNS-серверу вашего провайдера, сейчас вам ничего прописывать не нужно, а раньше при настройке интернета - нужно было в обязательном порядке указывать DNS-сервера провайдера (которые часто просто IP-адресами задаются, так как вы находитесь в локальной сети провайдера и это не публичные DNS-сервера). Сейчас они тоже есть, но определяются, как правило, автоматически. DNS-сервер провайдера делает запрос, разворачивая цепочку доменного имя, сначала спрашивает корневой сервер, где IP-адреса DNS-серверов зоны ru, получив их, начинает опрос этих серверов, спрашивая, где там softtime? Те кумекают и говорят, слушай сходит к регистратору r01 у них в базе - вот его IP-адрес, DNS-сервер идет к r01 и спрашивает, где там softtime? Так посмотрим, у хост-провайдера masterhost, вот три IP-адреса его DNS-серверов. Далее запрос идет к masterhost, нужен softtime.ru, ну да есть такой, выдается IP-адрес. Получив IP-адрес, DNS-сервер отдает его браузеру, а от обращается прямо по IP-адресу.
Чтобы эта вакханалия не происходила каждый раз, провайдер запоминает, что softtime.ru находится вот по этому IP-адресу и в следующий раз, даже спрашивать никого не будет, а просто выдаст вам IP-адрес (кстати, браузеры тоже эти промышляют и DNS-сервера дергают не каждый раз). Запоминает не только провайдер, но и каждый участник этой цепочки, поэтому DNS-запросов сильно меньше, по сравнению с HTTP-запросами и обслуживание DNS-имен становится посильной технической и экономической задачей (оплачиваем это мы с вами, когда регистрируем домен - т.е. такой своеобразный всемирный налог).
К сожалению, IP-адреса иногда меняются, поэтому в кэше может оставаться старая информация, нужно ждать, когда DNS-сервера по всему миру удосужатся перепроверить информацию и поместят в свой кэш новый IP-адрес. Именно поэтому организация сайта без статического IP-адреса - дохлый номер - придется постоянно обновлять информацию по привязке IP-адреса к домену и вас почти никто никогда не будет видеть.
Один IP-адрес может обслуживать тысячи сайтов, которые различаются друг от друга по HTTP-заголовку Host, который каждый браузер обязательно отправляет с запросом, а можно, чтобы на одном IP-адресе был один сайт. Вот такую услугу и предлагают хост-провайдеры (где только IP-адреса берут...). | |