[+] D

Ogólne pytania dotyczące systemu
ksysinek
Beginner
Posty: 155
Rejestracja: 14 czerwca 2007, 00:33
Lokalizacja: *Miasto know-how

[+] Długi proces autoryzacji hosta - DNS

Post autor: ksysinek »

Witam.

Zainstalowałem na serwerze ircd-hybrid. Gdy ktokolwiek się do niego łączy musi czekać kilkadziesiąt sekund zanim przejdzie przez procedurę sprawdzania hosta, po czym klient dostaje odpowiedź
Couldn't look up your hostname
Sądzę, że to jakiś problem z ,,dnslookupem'' na moim serwerze. Dodam, że równie wolno pracował u mnie FTP dopóki nie wyłączyłem ,,DNSlookup'', a także wget ma ogromne problemy z przetłumaczeniem nazwy hosta na IP (muszę czekać 30sekund). Jak rozwiązać ten problem?

Z góry dziękuję i pozdrawiam.
RaV.
Posty: 87
Rejestracja: 28 czerwca 2006, 15:30
Lokalizacja: 127.0.0.1

Post autor: RaV. »

Zapodaj wynik poleceń:

Kod: Zaznacz cały

cat /etc/resolv.conf
oraz jeszcze dla porządku:

Kod: Zaznacz cały

cat /etc/nsswitch.conf|grep -E "(hosts|networks)"
ksysinek
Beginner
Posty: 155
Rejestracja: 14 czerwca 2007, 00:33
Lokalizacja: *Miasto know-how

Post autor: ksysinek »

cat /etc/resolv.conf

Kod: Zaznacz cały

nameserver 127.0.0.1
nameserver 91.121.
nameserver 213.186.33.99
search ovh.net
Drugi wpis to IP mojego serwka które celowo skróciłem

cat /etc/nsswitch.conf|grep -E "(hosts|networks)"

Kod: Zaznacz cały

hosts:          files dns
networks:       files
RaV.
Posty: 87
Rejestracja: 28 czerwca 2006, 15:30
Lokalizacja: 127.0.0.1

Post autor: RaV. »

To mam podejrzanego. Czy Twoja maszyna jest serwerem DNS?
Wydaj polecenie:

Kod: Zaznacz cały

host wp.pl 127.0.0.1
Jak zwróci błąd, lub będzie długo oczekiwał na odpowiedź, wywal tę linię!
Jak jesteś serwerem DNS, to zweryfikuj jego ustawienia, czy pozwalasz localhostowi na odpytywanie. Podejrzewam jednak, że nie jest DNSem. Druga linia w /etc/resolv.conf też zupełnie mi się nie podoba. Co to za adres? Po dyrektywie nameserver podaje się adres IP serwera DNS a nie adres sieci. Jedynie 213.186.33.99 wydaje się poprawnym serwerem DNS. Linię z search też możesz pozostawić.
Resolver działa w ten sposób, że próbuje po kolei wszystkich serwerów DNS podanych w /etc/resolv.conf. Jeśli na pierwszych pozycjach serwery będą błędnie podane, to Resolver będzie baaaardzo długo odpowiadał.

/etc/nsswitch.conf odpowiada za kolejność skąd brać (w tym przypadku) nazwy hostów w sieci. Chciałem sprawdzić, tylko, czy nie ma tam czegoś nietypowego.

EDIT:
OK, nie doczytałem o co chodzi z tą drugą linią. Mea culpa.
Wywal (zahashuj) te dwie pierwsze linie i zobacz, czy pomoże. Pozostaw tylko

Kod: Zaznacz cały

nameserver 213.186.33.99
search ovh.net
ksysinek
Beginner
Posty: 155
Rejestracja: 14 czerwca 2007, 00:33
Lokalizacja: *Miasto know-how

Post autor: ksysinek »

A jednak się myliłeś, jestem DNSem. Widać mam go nieprawidłowo skonfigurowanego:

Kod: Zaznacz cały

host wp.pl 127.0.0.1
;; connection timed out; no servers could be reached
Jednak wszystkie domeny jakie mam, działają poprawnie. Zmodyfikowałem resolv.conf wedle Twoich wskazówek a jednak:

Kod: Zaznacz cały

Couldn't look up your hostname
Jednie przy korzystaniu z wget zauważyłem jakby poprawę.
Dziękuję mimo wszystko.
RaV.
Posty: 87
Rejestracja: 28 czerwca 2006, 15:30
Lokalizacja: 127.0.0.1

Post autor: RaV. »

Co wyświetla polecenie hostname?
Co masz w /proc/sys/kernel/hostname?
Skoro jesteś serwerem DNS a nie możesz sam się odpytać, to przejrzyj konfigurację serwera, czy zezwalasz na zapytania od localhosta, zerknij czy w iptables masz odpowiednią regułkę dla interfejsu lo (loopback). Jeszcze czy nie blokujesz interfejsu lo w tcpwrappers (pliki /etc/hosts.{allow,deny}). Nie pamiętam w tej chwili, czy Bind wspiera tcpwrappers.
Na dobrą sprawę, jeśli masz uruchomiony serwer SSH, to wrappery i ustawienia iptables sprawdzisz wydając polecenie ssh 127.0.0.1. Jak się nie będzie chciał połączyć, znaczy że co najmniej jedno z nich Cię blokuje.
ksysinek
Beginner
Posty: 155
Rejestracja: 14 czerwca 2007, 00:33
Lokalizacja: *Miasto know-how

Post autor: ksysinek »

Wynik poleceia hostname oraz /proc/sys/kernel/hostname:

Kod: Zaznacz cały

ks362224.kimsufi.com
przez SSH mogę wejśc do localhosta. Po restarcie ircd łączę się do serwera błyskawicznie. Poprawa nastąpiła po zmianach w /etc/resolv.conf

Mimo wszystko nie wiem, dlaczego moje DNSy nie działają. Dostęp mam ustawiony na 'any' i podpięte domeny działają poprawnie.


Dziękuję za pomoc. Temat do zamknięcia.
ODPOWIEDZ