Brak DNS i długi start Apacha
Łukasz Jazgar
ljazgar w interia.pl
Pią, 7 Mar 2003, 21:22:31 CET
Artur Frysiak wrote:
> On Thu, Mar 06, 2003 at 06:06:30PM +0100, Łukasz Jazgar wrote:
>
>>Kiedy robię np. ping tytan lub ping localhost odpowiedź dostaję
>>natychmiast, z prawidłowymi numerami IP.
>>
>>Zapuściłem 'strace httpd' i kolejność operacji jest następująca:
>>1. Otwarcie i przeczytanie /etc/hosts
>>2. Otwarcie i przeczytanie /etc/resolv.conf
>>3. Wysłanie datagramu UDP do serwera DNS. W treści jest 'tytan' bez
>>żadnych dodatków typu '.domena'.
>
> Odpytuje się o rekord A czy AAAA ?
>
Wybacz mi moją ignorancję, ale nie rozumiem pytania. O DNSie malo wiem :(
Oto jeszcze pare ciekawych spostrzeżeń i sprecyzowań:
* Podobna rzecz dzieje się z telnet'em ('telnet tytan 25')
* Kolejność operacji systemowych jest naprawde taka (poprzednio pisalem
z pamieci):
1. Przeczytanie /etc/resolv.conf
2. Przeczytanie /etc/nsswitch.conf
3. Przeczytanie /etc/host.conf
4. Przeczytanie /etc/hosts
5. Odpytanie DNS
Po drodze ładowane są biblioteki. Min. libnss_files.so, libnss_dns.so,
libresolv.so
* Jeśli porównywać operacje systemowe wykonywane przez telneta i pinga
(ktory dziala tak jak trzeba), to wszystko jest dokładnie tak samo, aż
do czytania hosts. W pingu czytanie konczy sie po pobraniu pierwszej
porcji, swiadczace o tym, znalazł czego szukał. Po tym wysyłany jest już
pakiet ICMP.
W telnecie hosts są czytane do samego końca, co świadczy o tym, że nie
znalazł czego szukał. Tylko czemu?
* Wydaje się, że na przebieg procesu rozwiązywania nazwy nie ma zupełnie
wpływu zawartość host.conf.
* Wpływ ma natomiast plik nsswitch.conf, ale nie rozumiem do końca na
czym on polega.
Wywalenie dns z linii:
hosts: files dns
powoduje, że zaczyna znajdować nazwy w hosts, ale rzecz jasna przestaje
w ogole pytać DNS'a.
Dlaczego dns na koncu powoduje, ze nie znajduje nazwy w hosts?
Mam wrażenie, że coś jest skopane w bibliotekach.
Pozdrawiam
Lukasz
Więcej informacji o liście dyskusyjnej pld-users-pl