Чому мені потрібно вказувати DNS-сервер в моїй операційній системі?


1

У мене є такі великі сумніви щодо DNS. Я переглядав деякі відео та читав про роботу DNS. Я думаю, що я невдала її, за винятком одного пункту. Чому мені потрібно вказувати в моїй win 7 OS або в моїй коробці Ubuntu DNS-сервер? Іноді він налаштовується як той, який надає мені провайдер, і іноді у мене є публічні DNS-сервери (8.8.8.8). Я не розумію, що означають ці DNS-сервери.

Наскільки я знаю, операційна система має розв'язання сервера імен . Це той, хто відповідає за запит серверів імен ROOT для отримання серверів імен TLD, а потім авторизованих серверів імен, щоб нарешті отримати IP. Ips кореневого сервера імен "закодовані" в ОС. Так що я не розумію, чому мені потрібні мої провайдери DNS серверів або DNS сервера Google, моя ОС може вирішити, що на свій розсуд!

Дуже дякую!


3
Ваше розуміння dns змінилося. Ви не заходите на кореневий сервер, а потім на той, який є авторитетним. Ви запитуєте сервер DNS нижнього ярусу, і цей сервер передає запит до ланцюжка, якщо він не може відповісти на запит.
Sirex

Коли ви говорите про жорстко закодований сервер, я підозрюю, що ви думаєте про це довірених органів , а не ім'я-серверів. Windows постачає та періодично завантажує довірені сертифікати та списки відкликаних сертифікатів.
Synetech

Відповіді:


6

Коротка відповідь: ви вибрали не використовувати DHCP, який автоматично налаштовує IP-адреси серверів імен вашого провайдера (або додатковий рівень кешування DNS вашого домашнього маршрутизатора).

Пояснення:

Розчинювачі DNS безпосередньо не запитують кореневі сервери, оскільки це буде дуже неефективно. Кореневим серверам доводиться обробляти всі навантаження, що складається з мільярдів пристроїв, підключених до Інтернету, і якщо резольвери повинні робити кілька нерекурсивних запитів (і бути більш складними, ніж потрібно), пошук DNS може бути значно повільніше.

Тому, Інтернет-провайдери використовують "рекурсивні" або "кешування" серверів імен для використання ними. В ідеалі, сервери знаходяться поруч, щоб мінімізувати затримку. Багато домашніх маршрутизаторів навіть надають додатковий рівень кешування - якщо адреса вашого DNS-сервера є такою ж, як і адреса шлюзу, це ймовірно.

Скажімо, наприклад, ваш веб-браузер повинен знати IP-адресу superuser.com. і запитує сервер імен вашого провайдера. Нижче наведено переваги ефективності, пов'язані з безпосереднім запитом авторитетних серверів:

  • Сервер імен вашого провайдера фактично може знати відповідь від того, коли інший резольвер задав одне й те саме запитання, заощаджуючи час і пропускну здатність.

  • Навіть якщо сервер імен вашого провайдера ще не знає відповіді, він, напевно, знає, де шукати: .com. серверів імен. Він знає їхні адреси, коли резольвер запитав про інше доменне ім'я .com.

  • Він може запам'ятати відповідь у випадку, якщо він пізніше отримає той самий запит. "Час прожити" (TTL), пов'язаний з певною відповіддю, змушує сервер забути його через деякий час, щоб запобігти застарілої інформації назавжди.

На серверах імен кожного постачальника послуг Інтернету існують різні IP-адреси, тому IP-адреси DNS не можуть бути закодовані. Можливо, всі рекурсивні DNS-сервери, керовані провайдером, можуть бути згруповані під одним IP-адресою за допомогою anycast як Google Public DNS є, але немає сенсу робити це, оскільки проблема автоматичного налаштування DNS вже вирішена протоколами, такими як DHCP і PPP.

DHCP і PPP дозволяють не тільки конфігурувати IP-адресу клієнта, але й адреси DNS-серверів. Вам потрібно лише вказати адресу DNS-сервера вручну, якщо ви спеціально вирішили не використовувати DHCP.


6

Якщо я не помиляюся, сервери кореневих імен НЕ "кодуються" в будь-яку операційну систему. DNS використовується, як відомо, для визначення назв веб-сайтів (або імен серверів) до IP-адрес. Ваш сервер (або вікно Windows, або що-у вас) НЕ МОЖЕ вирішити будь-які адреси веб-сайтів, якщо ваш ящик не отримає DNS від сервера DHCP, або якщо ви явно не сказали вашому серверу / комп'ютеру, які DNS-сервери запитувати.

У Linux це робиться шляхом редагування /etc/resolv.conf. У Windows це відбувається шляхом редагування налаштувань мережевого адаптера.


2
+1 - Я ніколи не чув про жорсткі корінні сервери в будь-якій ОС. І жодна з моїх ОС ніколи не працювала без встановленого DNS-сервера.
Frederik Nielsen

3

Наскільки я знаю, операційна система має вирішальний сервер імен.

За промовчанням вона не використовується (за винятком випадків, коли встановлено.)

Так що я не розумію, чому мені потрібні мої провайдери DNS серверів або DNS сервера Google, моя ОС може вирішити, що на свій власний!

Теоретично, ви можете встановити власний DNS-сервер і використовувати його у вашій локальній мережі для вирішення всіх доменних імен. На серверах Google і ISP можна заощадити час на вирішення імен, оскільки вони мають великий кеш імен, які вони нещодавно вирішили. Вони можуть зберегти ваші зусилля по створенню власного сервера імен. Також слід зауважити, що не так багато звичайних (нетехничних) людей готові встановлювати будь-які сервери і т.д., вони просто хочуть працювати на комп'ютері.


3

Ваш внутрішній резольвер - це клієнт запитів, який може запитувати ряд джерел для адрес, включаючи:

  • Ваш файл локальних хостів (/ etc / hosts на Linux / UNIX)
  • DNS
  • WINS
  • mDNS (служба імен з нульовою конфігурацією)

DNS-сервери вашого провайдера працюють як локальна база даних, що містить адреси для хостів, які ви і ваші сусіди використовували останнім часом. DNS-сервер кешуватиме будь-які адреси, що шукають протягом певного періоду часу (часто кілька днів). Вони також знають, як швидко знайти адресу для імен, які вже не кешуються. Сервери такого типу називаються рекурсивними DNS-серверами і зазвичай не доступні для загального Інтернету.

Для таких служб, як Google, Facebook та інші сайти з великим обсягом, корисно використовувати локальний сервер. Ваш постачальник послуг Інтернету (DNS) повинен мати адреси, які знаходяться поблизу (у мережевих термінах). Інші DNS-сервери можуть надавати адреси, які відносно далеко знаходяться, можливо, навіть далеко від континентів.

Кореневі сервери надають лише сервери для TLD (домени верхнього рівня), такі як .com .net, .uk тощо. Оскільки дані, які вони надають, є відносно статичними, вони будуть кешуватися рекурсивними серверами імен, які їх запитують. Хоча кешовані дані є дійсними, рекурсивному серверу не потрібно запитувати кореневі сервери для цього TLD.

Якщо ви отримуєте IP-адресу за допомогою DHCP, ви зазвичай також отримуєте сервери імен як частину автоматичної настройки. Таким чином, більшість комп'ютерів, яких я знаю, отримують свої IP-адреси, маршрутизатори і сервери DNS.

Хости та сервери з фіксованими IP-адресами вимагають вказання серверів DNS, якщо вони використовуються. Багато серверів, з якими я працював, використовують локальні DNS-сервери, які не доступні користувачам Інтернету. Вони зазвичай служать адресою для локальних хостів і серверів. Вибір відповідних серверів імен може бути критичним для хостів і серверів у приватній мережі.

Я знаю кілька основних загальнодоступних рекурсивних DNS-серверів. Це сервери DNS Google і сервери OpenDN. Я вважаю, що обидва ці сервери забезпечують певний захист від шкідливих сайтів. OpenDNS надає ряд фільтрів, які можна застосовувати для обмеження доступу до певних типів сайтів.


2

Ієрархія DNS розроблена таким чином, щоб обмежити кількість запитів, надісланих кореневим серверам. є певні надійні та надійні захищені сервери, які надають дозвіл DNS, подібно до opendns http://www.opendns.com/- ви можете використовувати їх сервер, якщо ви турбуєтеся про безпеку.

Ваш DNS-сервер ISP може кешувати деякі запити, таким чином швидше відповідаючи на них.


2

Кореневі кореспонденти тільки "жорстко закодовані" на сервер, що виконує роль DNS-сервера - машина вашого Windows 7 не буде налаштовувати ці сервери (якщо тільки це не є сервером DNS). Важливо розрізнити, що ці кореневі сервери запрограмовані в механізм, що обслуговує DNS (наприклад, BIND), а не в саму операційну систему.

Ці DNS-сервери посилаються на кореневі сервери для пошуку авторитетних серверів для шуканого домену. Клієнти посилаються на DNS-сервер, запрограмований на їх мережний адаптер або файли / etc / hosts, і ці сервери посилаються на кореневі сервери.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.