NAZWA¶
resolv.conf - plik konfiguracyjny obsługi nazw (resolver)
SKŁADNIA¶
/etc/resolv.conf
OPIS¶
Obsługa nazw (
resolver) jest zbiorem funkcji biblioteki C,
które umożliwiają dostęp do internetowego systemu
serwerów nazw (DNS). Plik konfiguracyjny zawiera informacje, odczytywane
przez procedury obsługi nazw podczas ich pierwszego wywołania przez
proces, i jest czytelny zarówno dla maszyny, jak i dla człowieka.
Zawiera listę słów kluczowych z wartościami, które
udostępniają różne informacje dotyczące obsługi
nazw.
Jeśli ten plik nie istnieje, to jedynym odpytywanym serwerem nazw jest
wtedy ten z maszyny lokalnej, nazwa domeny jest określana z nazwy
komputera lokalnego, a ścieżka poszukiwania domen jest konstruowana
z nazwy domeny.
Opcje konfiguracji są następujące:
- nameserver Adres IP serwera nazw.
- Adres internetowy (w notacji kropkowej) serwera nazw,
który powinien być odpytywany przez funkcje obsługi nazw. W
pliku można podać maksymalnie MAXNS (obecnie 3, patrz
<resolv.h>) serwery nazw, po jednym przy słowie
kluczowym. Jeśli jest kilka serwerów, biblioteka obsługi
nazw odpytuje je w kolejności, w jakiej zostały wymienione.
Jeśli nie ma żadnego wpisu nameserver, domyślnym
zachowaniem jest korzystanie z serwera nazw na maszynie lokalnej.
(Stosowany algorytm polega na próbie odpytania serwera nazw, a
jeśli przekroczy ona czas oczekiwania, następuje próba
odpytania następnego, aż zabraknie serwerów nazw.
Następnie występuje ściśle określona liczba
ponownych odpytań wszystkich serwerów nazw).
- domain Nazwa lokalnej domeny.
- Większość zapytań o nazwy wewnątrz
tej domeny może odbywać się z zastosowaniem krótkich
nazw, podanych względem lokalnej domeny. Jeśli pozycja
domain nie jest obecna, jest ona określana na podstawie nazwy
lokalnego komputera, zwróconej przez gethostname(2) - za
domenę uważa się wszystko po pierwszej ".".
Ostatecznie, jeśli nazwa komputera nie zawiera części
domenowej, przyjmowana jest domena główna.
- search Lista przeszukiwania nazw
komputerów.
- Lista ta jest zwykle określana na podstawie lokalnej
nazwy domeny; domyślnie też zawiera tylko tę nazwę.
Można to zmienić, przez podanie żądanej
ścieżki poszukiwania domeny po słowie kluczowym
search, używając spacji lub tabulacji do oddzielenia
nazw. Funkcje obsługi nazw dla zapytań zawierających w
sobie mniej niż ndots kropek (domyślnie - 1)
będą próbowały kolejnych składników
ścieżki poszukiwania, aż do znalezienia. Dla środowisk
z wieloma poddomenami, proszę przeczytać poniżej
options ndots:n, aby uniknąć ataków
typu man-in-the-middle oraz niepotrzebnego odpytywania głównych
serwerów nazw. Należy zauważyć, że proces ten
może być powolny i powodować duże obciążenie
sieci, jeśli serwery dla podanych domen nie są lokalne, a czas
oczekiwania na odpowiedź po zapytaniu przekracza czas oczekiwania,
gdy dla którejś z domen wszystkie serwery są
niedostępne.
- Lista poszukiwania jest obecnie ograniczona do sześciu
domen z maksymalną liczbą 256 znaków.
- sortlist
- Umożliwia sortowanie adresów zwracanych przez
gethostbyname(3). Lista sortowania jest podawana przez pary
adresów IP i masek sieci. Maska sieci jest opcjonalna i
domyślnie ma wartość naturalnej maski dla danej sieci.
Adres IP jest oddzielany od maski sieci ukośnikiem. W polu tym
można podawać do 10 par. Przykład:
sortlist 130.155.160.0/255.255.240.0 130.155.0.0
- options
- Pole to umożliwia modyfikację pewnych
wewnętrznych zmiennych funkcji obsługi nazw. Jego składnia
to:
- options opcja ...
gdzie
opcja jest jedną z następujących:
- debug
- ustawia RES_DEBUG w _res.options.
- ndots:n
- ustawia próg liczby kropek, które muszą
pojawić się w nazwie podanej do res_query (zobacz
resolver(3)) przed wykonaniem początkowego
absolutnego zapytania. Domyślną wartością jest
"1", co oznacza, że jeśli w nazwie znajdują
się jakieś kropki, to powinna być najpierw sprawdzona jako
nazwa absolutna, bez dokonywania żadnych podstawień listy
poszukiwania. Maksymalną wartością jest 15, większe
wartości zostaną zmniejszone, bez wypisywania żadnych
ostrzeżeń.
- timeout:n
- ustawia czas, przez który funkcja obsługi nazw
będzie czekać na odpowiedź ze zdalnego serwera nazw przed
wysłaniem zapytania do innego serwera nazw. Wyrażony w
sekundach, domyślnie - RES_TIMEOUT (obecnie 5, patrz
<resolv.h>). Maksymalną wartością jest 30,
większe wartości zostaną zmniejszone, bez wypisywania
żadnych ostrzeżeń.
- attempts:n
- ustawia liczbę prób wysyłania przez
funkcję obsługi nazw zapytań do serwerów nazw przed
poddaniem się i zwróceniem błędu. Domyślnie -
RES_DFLRETRY (obecnie 2, patrz <resolv.h>). Maksymalną
wartością jest 5, większe wartości zostaną
zmniejszone, bez wypisywania żadnych ostrzeżeń.
- rotate
- ustawia RES_ROTATE w _res.options,
powodując wybór serwera nazw spośród wymienionych
serwerów za pomocą algorytmu round robin. Efektem tej opcji jest
rozłożenie obciążenia zapytaniami wszystkich
wymienionych serwerów nazw, zamiast odpytywania za każdym razem
pierwszego z nich.
- no-check-names
- ustawia RES_NOCHECKNAME w _res.options, co
wyłącza sprawdzanie przez nowoczesne serwery BIND
przychodzących nazw komputerów i nazw pocztowych niepoprawnych
znaków takich jak podkreślenie (_), znaki nie-ASCII lub znaki
sterujące.
- inet6
- ustawia RES_USE_INET6 w _res.options. Efektem
tego jest próbowanie zapytań AAAA przed zapytaniami A
wewnątrz funkcji gethostbyname(3) i mapowanie odpowiedzi IPv4
na "tunelowaną formę" IPv6, jeżeli znaleziono
tylko rekordy A, bez rekordów AAAA.
Niektóre programy zachowują się dziwacznie, jeśli ta
opcja jest włączona.
- ip6-bytestring (od wersji 2.3.4 biblioteki
glibc)
- ustawia RES_USE_BSTRING w _res.options.
Powoduje to, że odwrotne wyszukiwania IPv6 będą
używać formatu etykiet bitowych ("bit-label")
opisanego w RFC 2673. Jeśli ta opcja nie jest ustawiona, to
będzie używany formatu półbajtowego.
- ip6-dotint/no-ip6-dotint (od wersji 2.3.4
biblioteki glibc)
- Czyści lub ustawia RES_NOIP6DOTINT w
_res.options. Jeśli opcja ta jest wyczyszczona (
ip6-dotint), wyszukiwania odwrotne IPv6 są przeprowadzane w
(niezalecanej) strefie ip6.int. Gdy opcja ta jest
włączona ( no-ip6-dotint), odwrotne wyszukiwania IPv6
są przeprowadzane w strefie ip6.arpa. Opcja ta jest
domyślnie włączona.
- edns0 (od wersji 2.6 biblioteki glibc)
- ustawia RES_USE_EDNSO w _res.options.
Włącza to obsługę rozszerzeń DNS opisanych w
RFC 2671.
- single-request (od wersji 2.10 biblioteki
glibc)
- ustawia RES_SNGLKUP w _res.options.
Domyślnie biblioteka glibc od wersji 2.9 równolegle odpytuje
IPv4 i IPv6. Niektóre urządzenia serwerów DNS nie
obsługują poprawnie takich zapytań i powodują
błąd przekroczenia czasu oczekiwania na odpowiedź. Opcja ta
wyłącza takie zachowanie i sprawia, że glibc odpytuje o
IPv6 i IPv4 sekwencyjnie (kosztem pewnego spowolnienia procesu translacji
nazw).
Słowa kluczowe
domain i
search wzajemnie się
wykluczają. Jeśli istnieje więcej niż jedna ich instancja,
używana jest ostatnia z nich.
Słowo kluczowe
search systemowego
resolv.conf można
nadpisać dla danego procesu nadając zmiennej środowiskowej
LOCALDOMAIN wartość będącą rozdzieloną
spacjami listą domen poszukiwania.
Słowo kluczowe
options systemowego
resolv.conf można
poprawić dla danego procesu nadając zmiennej środowiskowej
RES_OPTIONS wartość będącą rozdzieloną
spacjami listą opcji obsługi nazw (opcje opisano powyżej, pod
hasłem
options).
Słowo kluczowe i wartość muszą pojawiać się w tej
samej linii oraz słowo kluczowe (np.
nameserver) musi
rozpoczynać linię. Wartość jest elementem
następującym po słowie kluczowym i jest od niego oddzielona
znakiem spacji lub tabulacji.
Linie zaczynające się od znaku średnika (";") lub hasha
("#") są traktowane jako komentarze.
PLIKI¶
/etc/resolv.conf, <resolv.h>
ZOBACZ TAKŻE¶
gethostbyname(3),
resolver(3),
hostname(7),
named(8)
Name Server Operations Guide for BIND
O STRONIE¶
Angielska wersja tej strony pochodzi z wydania 3.40 projektu Linux
man-pages. Opis projektu oraz informacje dotyczące zgłaszania
błędów można znaleźć pod adresem
http://www.kernel.org/doc/man-pages/.
TŁUMACZENIE¶
Autorami polskiego tłumaczenia niniejszej strony podręcznika man
są: Przemek Borys (PTM) <pborys@dione.ids.pl> i Robert Luberda
<robert@debian.org>.
Polskie tłumaczenie jest częścią projektu manpages-pl;
uwagi, pomoc, zgłaszanie błędów na stronie
http://sourceforge.net/projects/manpages-pl/. Jest zgodne z wersją
3.40 oryginału.