table of contents
HOST(1) | General Commands Manual | HOST(1) |
NAZWA¶
host - wyszukuje nazwy hostów, używając serwerów domen
SKŁADNIA¶
host [-l] [-v] [-w] [-r] [-d] [-t typ_zapytania] [-a] host [ serwer ]
OPIS¶
Host wyszukuje informacje o hostach w Internecie. Pobiera te informacje z sieci połączonych ze sobą serwerów, które są rozrzucone po całym kraju. Standardowo przekształca on nazwy hostów w adresy internetowe. Z opcją -t i -a, może być używany do otrzymania pełnej informacji o hoście, o którym informację utrzymuje dany serwer domen.
Argumentami mogą być nazwy hostów jak i ich numery. Program standardowo na początku stara się zinterpretować je jako numery hosta. Jeśli to się nie powiedzie, program podany argument potraktuje jako nazwę hosta. Numer hosta składa się z liczb oddzielonych kropkami np. 128.6.4.194 Nazwa hosta składa się z nazw oddzielonych kropkami np. topaz.rutgers.edu. Jeśli nazwa nie kończy się kropką, lokalna domena jest dodawana automatycznie do nazwy. Jeśli więc użytkownik wpisze "host topaz", program w rzeczywistości wyszuka informację o "topaz.rutgers.edu". Jeśli to się nie uda, wyszukiwana jest informacja o nazwie hosta podanego jako argument (w tym wypadku, "topaz"). Ta sama konwencja została utrzymana dla programów pocztowych czy innych narzędzi sieciowych. Przyrostek, który ma być dodany na koniec nazwy hosta jest otrzymywany w wyniku wykonania funkcji "hostname". Używana jest część po pierwszej kropce, włącznie z nią. (Poniżej możesz się dowiedzieć więcej jak dostosowywać do własnych potrzeb wyszukiwanie nazw hostów).
Pierwszym argumentem jest nazwa hosta jaki chcemy sprawdzić. Jeśli jest to numer, zadawane jest "odwrotne zapytanie", tj. system domen przeszukuje oddzielne bazy danych używane do konwersji numerów na nazwy.
Drugi argument jest opcjonalny. Pozwala on na podanie konkretnego serwera który będzie odpytywany. Jeśli nie podasz tego argumentu, używany jest standardowy serwer (zazwyczaj lokalny komputer).
Jeśli nazwa została podana, możesz
zobaczyć na wyjściu różne wyniki. Poniżej
zamieszczony jest przykład, który pokazuje je wszystkie:
% host sun4
sun4.rutgers.edu is a nickname for ATHOS.RUTGERS.EDU
ATHOS.RUTGERS.EDU has address 128.6.5.46
ATHOS.RUTGERS.EDU has address 128.6.4.4
ATHOS.RUTGERS.EDU mail is handled by ARAMIS.RUTGERS.EDU
Użytkownik wpisał komendę "host sun4". Pierwsza
linia pokazuje, że nazwa "sun4.rutgers.edu" jest w
rzeczywistości nazwą zastępczą. Oficjalna
nazwą tego hosta jest "ATHOS.RUTGERS.EDU'. Dwie następne
linie pokazują jego adres. Jeśli system ma więcej
niż jeden interfejs sieciowy, podany zostanie oddzielny adres dla
każdego. Ostatnia linia wskazuje, że ATHOS.RUTGERS.EDU nie
zajmuje się pocztą kierowaną do niego. Tą
czynnością przejmuje host o nazwie ARAMIS.RUTGERS.EDU.
Możliwe jest występowanie więcej niż jednej
takiej linii, ponieważ niektóre systemy mają
więcej niż jeden system który zajmuje się jego
pocztą. Profesjonalnie rzecz biorąc, każdy system
który może otrzymywać pocztę powinien
podawać linię tego typu. Jeśli system sam zajmuje
się swoją pocztą, powinna się pokazać
linia która podaje ten właśnie system np. "XXX
mail is handled by XXX". Chociaż jest wiele systemów
które zajmują się własną pocztą
nie wspominając o tym. Jeśli jednak system posiada
linię zawierającą tekst "mail is handled by",
ale bez adresu, to wskazuje, że nie jest on części
Internetu, ale systemem któremu w momencie połączenia z
siecią zostanie poczta przekazana. Systemy Usenet, Bitnet czy wiele
innych sieci ma wpisy tego typu.
Przed nazwą hosta może zostać użytych wiele opcji. Większość z nich ma znaczenie jedynie dla ludzi utrzymujących bazę danych o domenie.
Opcja -w powoduje, że host będzie czekał bez końca na odpowiedź. Normalnie czekanie zostanie przerwane po około minucie.
Opcja -v powoduje, że wypisywane są bardziej szczegółowe informacje. Wypisywane są one w formacie głównego pliku domeny, którego budowa jest opisana w podręczniku "named". Bez tej opcji, informacja wyświetlana w zasadzie pokrywa się z formatem "named", ale poczynione zostały pewne starania aby była ona bardzie czytelna dla normalnych użytkowników. Bez opcji -v, rekordy "a", "mx", i "cname" są wypisywane jako "has address" (ma adres), "mail is handled by" (pocztą zajmuje się), i "is a nickname for"(jest nickname dla), a pola TTL i class są nie pokazywane.
Opcja -r powoduje wyłączenie rekurencyjnego odpytywania. To znaczy, że serwer nazw zwróci jedynie te informacje, które on sam posiada we własnej bazie danych. Nie będzie on pytał innych serwerów o dalsze informacje.
Opcja -d włącza debugging. Transakcje sieciowe są pokazywane bardzo szczegółowo.
Opcja -t pozwala na podanie typu informacji jakiej potrzebujemy. Argumenty są opisane na stronie manuala do "named". Aktualnie można użyć typów: a, ns, md, mf, cname, soa, mb, mg, mr, null, wks, ptr, hinfo, minfo, mx, uinfo, uid, gid, unspec, oraz znaków specjalnych: "any" lub "*". Typy muszą być podane małymi literami. Należy zauważyć, że standardowo wyszukiwana jest informacja typu "a", następnie "mx", chyba że włączona jest opcja -v, wtedy standardowo podawana jest informacja typu "a".
Opcja -a ("all") odpowiada opcjom "-v -t any".
Opcja -l powoduje wypisanie całej domeny. Np.
host -l rutgers.edu
poda nam listę wszystkich hostów w domenie rutgers.edu. Opcja -t
jest używana do filtrowania wyświetlanej informacji.
Standardowo jest to informacja o adresie hosta, zawierająca
także rekordy PTR i NS. Komenda
host -l -v -t any rutgers.edu
da nam kompletną informację dla strefy rutgers.edu, w oficjalnym
formacie pliku "named". (Jakkolwiek rekord SOA jest podany dwa
razy, dla tajemniczych powodów) ZAUWAŻ: opcja -l działa
w ten sposób, że najpierw jest ściągana
cała informacja o strefie (zone) i z tego jest filtrowana informacja,
o którą nam chodziło. Ta komenda powinna być
używana tylko w koniecznych wypadkach.
DOSTRAJANIE WYSZUKIWANIA NAZW HOSTÓW¶
Jeżeli nazwa podana przez użytkownika nie zawiera żadnych kropek w sobie, standardowa domena jest dodawana na koniec nazwy. Domena ta może być zdefiniowana w /etc/resolv.conf, ale normalnie pobierana jest ona z lokalnej nazwy hosta, a konkretnie części występująca po pierwszej kropce. Użytkownik może podać inną standarową domenę używając zmiennej środowiskowej LOCALDOMAIN. Dodatkowo, użytkownik może podać skróty dla nazw hostów. Powinny one się znajdować w pliku w którym w każdej linii podajemy skrót, po a odstępie pełną nazwę hosta. Położenie i nazwę tego pliku wskazuje zmienna środowiskowa HOSTALIASES.
ZOBACZ TAKŻE¶
BŁĘDY¶
Podając nazwę, która nie jest częścią lokalnej domeny, możemy uzyskać niespodziewane efekty. Proszę zwrócić uwagę na to, że lokalna domena jest dodawana do każdej nazwy, która nie kończy się kropka. Jeśli mimo wszystko nie zostanie odnaleziona, dopiero wtedy używana jest niezmieniona nazwa.
Opcja -l odpytuje jedynie pierwszy serwer nazw podany dla domeny, którą odpytujemy. Jeśli serwer ten nie działa, powinieneś podać nazwę serwera. Np. aby uzyskać informację o foo.edu, możesz użyć "host -t ns foo.edu" aby otrzymać listę wszystkich serwerów nazw dla for foo.edu, a później spróbować "host -l foo.edu xxx" dla wszystkich xxx w liście serwerów nazw, aż znajdziesz jeden działający.