Що в /etc/resolv.conf, що саме робить варіант конфігурації "пошук"?


66

Якщо у мене є параметр як доменне ім'я самого сервера, чи означає це, що сам сервер використовується спочатку для пошуку доменних імен, перш ніж запитувати зовнішній Інтернет? тобто /etc/hostsбуде запитуватися?

Наприклад:

search  localdomain.com

Відповіді:


63

З man resolv.conf

Список пошуку зазвичай визначається з локального доменного імені; за замовчуванням він містить лише місцеве доменне ім’я. Це можна змінити, перерахувавши потрібний шлях пошуку домену за ключовим словом пошуку з пробілами або вкладками, що розділяють імена. Запити на вирішення, що мають у них менше точок ndots (за замовчуванням дорівнює 1), будуть намагатися використовувати по черзі кожен компонент шляху пошуку, поки не буде знайдено збіг. Для середовищ з декількома субдоменами, будь ласка, прочитайте параметри ndots: n нижче, щоб уникнути атаки "людина-в-середині" та непотрібного трафіку для root-dns-серверів. Зауважте, що цей процес може бути повільним і генеруватиме велику кількість мережевого трафіку, якщо сервери для перелічених доменів не локальні, і запити будуть вичерпані, якщо для одного з доменів немає сервера.

Список пошуку наразі обмежений шістьма доменами із загальною кількістю 256 символів.

Підсумовуючи вищесказане, не допускаючи жодних змін від зазначених вище за замовчуванням, якщо щось потрапляє до розв'язувача, у якому немає крапок, роздільник вирішить спробувати додати localdomain.comйого.

Тож скажемо, що ви просто вводите http://somesite/somedocument.htmlвеб-переглядач. Розв’язувач вирішить це і спершу спробує вирішити somesite.localdomain.com- еквівалентний, якщо ви насправді ввели http://somesite.localdomain.com/somedocument.html- перш ніж спробувати те, що ви насправді запитали.

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


10
HTTP - поганий приклад для використання опції пошуку. Велика кількість людей користується віртуальними хостами на основі імен через дефіцит IPv6. На мій досвід, дуже рідко бачити віртуальних хостів таким чином, що приймає запит на Host: somesiteдодаток до Host: somesite.localdomain.com. Або кажучи інакше, опція пошуку дозволяє вашому клієнту вирішити скорочене ім’я, але це не означає, що ви насправді зможете заповнити запит.
Зоредаче

1
@Zoredache, ви вказуєте на дійсну точку, однак, слід припустити, що техніку пошуку буде впроваджено місцевим системним адміністратором, який також контролює всі хости локальних доменних імен, таким чином, віртуальними хостами на основі імені. нібито вже налаштовано, щоб дозволити таку поведінку.
cnst

1
@cnst - не вірно завжди вірно в моєму досвіді. devs побудує повноцінний сервер з tomcat, упакованим з файлом війни. ops / sys адміністратор переймається машинами / vms / dns config. Існує ця сіра лінія про те, хто несе відповідальність. Приємно, що zoredache викликав це у випадку, якщо у читача є конфігурація, яка може мати проблему, описану.
Пат
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.