Co dokładnie robi opcja konfiguracyjna „szukaj” w pliku /etc/resolv.conf?


66

Jeśli mam opcję ustawioną jako nazwa domeny samego serwera, czy to oznacza, że ​​sam serwer jest najpierw używany do wyszukiwania nazw domen przed zapytaniem o zewnętrzny internet? tj. /etc/hostsbędzie zapytany?

Na przykład:

search  localdomain.com

Odpowiedzi:


63

Od man resolv.conf

Lista wyszukiwania jest zwykle ustalana na podstawie lokalnej nazwy domeny; domyślnie zawiera tylko lokalną nazwę domeny. Można to zmienić, wyświetlając żądaną ścieżkę wyszukiwania domeny po słowie kluczowym wyszukiwania ze spacjami lub tabulatorami oddzielającymi nazwy. Zapytania o rozdzielczość zawierające mniej niż ndots kropek (domyślnie jest to 1) będą podejmowane przy użyciu każdego elementu ścieżki wyszukiwania, aż do znalezienia dopasowania. W środowiskach z wieloma subdomenami przeczytaj opcje ndots: n poniżej, aby uniknąć ataków typu man-in-the-middle i niepotrzebnego ruchu dla serwerów root-dns-server. Pamiętaj, że ten proces może być powolny i wygeneruje duży ruch sieciowy, jeśli serwery dla wymienionych domen nie są lokalne, a zapytania przekroczą limit czasu, jeśli żaden serwer nie będzie dostępny dla jednej z domen.

Lista wyszukiwania jest obecnie ograniczona do sześciu domen o łącznej liczbie 256 znaków.

Podsumowując powyższe, zakładając brak zmiany w stosunku do wartości domyślnych wymienionych powyżej, jeśli coś dostanie się do resolvera, który nie ma w nim kropek, resolver spróbuje go dodać localdomain.com.

Powiedzmy, że po prostu piszesz http://somesite/somedocument.htmlw przeglądarce. Program tłumaczący to wyłapie i najpierw spróbuje rozwiązać somesite.localdomain.com- równoważnie, jeśli faktycznie wpisałeś http://somesite.localdomain.com/somedocument.html- przed wypróbowaniem tego, o co właściwie prosiłeś.

Jest to przydatne, jeśli należysz do środowiska LAN, które ma własny serwer DNS, aby ludzie mogli wpisywać proste nazwy w celu uzyskania dostępu do lokalnych zasobów. Jeśli nie masz domowej lub firmowej sieci LAN z własnym serwerem DNS, nie musisz się niczym martwić.


10
HTTP jest złym przykładem użycia opcji wyszukiwania. Duża liczba osób korzysta z wirtualnych hostów opartych na nazwach z powodu niedoboru IPv6. Z mojego doświadczenia wynika, że bardzo rzadko zdarza się zobaczyć wirtualne hosty w sposób, który akceptuje żądania Host: somesiteoprócz Host: somesite.localdomain.com. Lub inaczej mówiąc, opcja wyszukiwania pozwala Twojemu klientowi rozwiązać skróconą nazwę, ale to nie znaczy, że faktycznie będziesz w stanie zrealizować żądanie.
Zoredache

1
@Zoredache, przynosisz ważny punkt, jednak należy założyć, że technika wyszukiwania zostanie wdrożona przez lokalnego administratora systemu, który kontroluje również wszystkie hosty lokalnych nazw domen, a zatem hosty wirtualne oparte na nazwach prawdopodobnie zostałby już skonfigurowany, aby umożliwić takie zachowanie.
cnst

1
@cnst - z mojego doświadczenia nie zawsze prawdziwe. devs buduje kompletny serwer z tomcat spakowanym z plikiem war. administrator ops / sys martwi się o konfigurację maszyn / vms / dns. Jest szara linia o tym, kto jest odpowiedzialny. Fajnie, że zoredache go wywołał w przypadku, gdy czytnik ma konfigurację, która może mieć opisany problem.
Pat
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.