chur » 06 сен 2004, 11:28
По пунктам.
1. Алгоритм разрешения имени pivo.ivanov.provider.ru примерно такой. Есть несколько заранее определенных глобальных DNS серверов. Обращаемся к одному из них: дайте DNS сервер для зоны .ru. Ответ, допустим: ns.ru. Обращаемся к ns.ru: дайте DNS сервер для зоны .provider.ru. Ответ: ns.provider.ru. Спрашиваем дальше у ns.provider.ru DNS сервер для зоны .ivanov.provider.ru. Ответ: ns.provider.ru (т.е тот же). И, наконец, спрашиваем у ns.provider.ru IP адрес для pivo.ivanov.provider.ru. Еще раз хотел бы отметить. DNS службе абсолютно все равно, что ты дальше будешь делать с полученным IP адресом. И любое количество имен может быть привязано к одному IP адресу.
2. Apache не занимается разрешением имен ни каким образом. Это делает ОС. Перед запросом DNS сервера ОС может обратится к конфигурационным файлам. Для win98 это C:\Windows\hosts, для linux обычно /etc/hosts. В частности, привязка localhost к 127.0.0.1 прописана в них. Если часто обращаешься к какому-либо адресу, или, опять же, для тестов, можно прописать привязку имени к адресу в этом файле. Но знать об этом будет только одна машина, и никто другой этим воспользоваться не сможет.
3. Алгоритм работы DNS сервера крайне прост и сводится к поиску соответствующего значения в хеш-массиве (хранящемуся в оперативной памяти). В то же время запросов проходит большое количество, поэтому усложнения в алгоритме (run-time файлы настройки) маловероятны.
По пунктам.
1. Алгоритм разрешения имени pivo.ivanov.provider.ru примерно такой. Есть несколько заранее определенных глобальных DNS серверов. Обращаемся к одному из них: дайте DNS сервер для зоны .ru. Ответ, допустим: ns.ru. Обращаемся к ns.ru: дайте DNS сервер для зоны .provider.ru. Ответ: ns.provider.ru. Спрашиваем дальше у ns.provider.ru DNS сервер для зоны .ivanov.provider.ru. Ответ: ns.provider.ru (т.е тот же). И, наконец, спрашиваем у ns.provider.ru IP адрес для pivo.ivanov.provider.ru. Еще раз хотел бы отметить. DNS службе абсолютно все равно, что ты дальше будешь делать с полученным IP адресом. И любое количество имен может быть привязано к одному IP адресу.
2. Apache не занимается разрешением имен ни каким образом. Это делает ОС. Перед запросом DNS сервера ОС может обратится к конфигурационным файлам. Для win98 это C:\Windows\hosts, для linux обычно /etc/hosts. В частности, привязка localhost к 127.0.0.1 прописана в них. Если часто обращаешься к какому-либо адресу, или, опять же, для тестов, можно прописать привязку имени к адресу в этом файле. Но знать об этом будет только одна машина, и никто другой этим воспользоваться не сможет.
3. Алгоритм работы DNS сервера крайне прост и сводится к поиску соответствующего значения в хеш-массиве (хранящемуся в оперативной памяти). В то же время запросов проходит большое количество, поэтому усложнения в алгоритме (run-time файлы настройки) маловероятны.