DNS ObslugaNazw


Obsługa nazw - DNS
Obsługa nazw
Główne zagadnienia wykładu
Każdy interfejs sieciowy dołączony do sieci TCP/IP jest identyfikowany przez swój unikalny 32 bitowy adres
IP. Nazwa (nazwa komputera) może być przypisana do każdego urządzenia posiadającego adres. Przypisujemy
urządzeniom nazwy, gdyż są one łatwiejsze do zapamiętania. Oprogramowanie sieciowe staje się przez to łatwiejsze
w obsłudze. Może ono jednak funkcjonować bez systemu nazw. W większości przypadków nazwy i adresy mogą być
używane zamiennie.
telnet gnomme.pjwstk.waw.pl
telnet 196.116.101.1
Niezależnie od sposobu wydania polecenia, połączenie sieciowe zawsze dokonuje się na podstawie adresu
IP. Przed wykonaniem połączenia system przekłada nazwę komputera na adres IP. Administrator systemu jest
odpowiedzialny za powiązanie nazw i adresów i ich przechowywanie w bazie danych wykorzystywanej przy konwersji.
Konwersja nazw na adresy nie jest zagadnieniem lokalnym. Jeżeli komputer jest przyłączony do Internetu,
to jego nazwa powinna być przekładana poprawnie na jego adres przez dowolny komputer.
Istnieją dwie ogólne metody zamiany nazw na adresy. Starsza polega na szukaniu nazwy w tablicy zwanej
tablicą komputerów (host table). Nowsza technika polega na wykorzystaniu rozproszonego systemu bazy danych
noszącego nazwę Obsługi nazw domen (Domain Name Service - DNS).
Obsługa nazw - Tablica komputerów
Tablica komputerów jest prostym plikiem tekstowym wiążącym adresy IP z nazwami komputerów. Zwykle
znajduje się w pliku /etc/hosts. Każda pozycja tablicy zawiera adres IP oddzielony białym znakiem od związanych z nim
nazw komputera. Nazwy alternatywne (aliasy) są stosowane w przypadku zmian, odmiennej wymowy, lub dla skracania
nazw. Tablica komputerów ciągle znajduje szerokie zastosowanie gdyż:
< Większość systemów posiada małe tablice komputerów, zawierające nazwy i adresy "ważnych" komputerów
w sieci lokalnej. Te małe tablice są używane, gdy nie działa DNS. Nawet gdy używamy DNS, to bezpiecznie
jest utworzyć tablicę zawierającą elementy dotyczące naszego komputera, localhost'a, gateway'a i serwerów
sieci lokalnej.
< W niektórych rozwiązaniach stosowany jest system NIS, który używa tablicy komputerów jako danych
wejściowych do bazy informacji o komputerach.
< Bardzo małe sieci, nie mające połączenia z Internetem, o stabilnej strukturze korzystają z tablic komputerów.
< W niektórych konfiguracjach wykorzystywane są systemy nie współpracujące z DNS.
Komputery mające dostęp do Internetu powinny korzystać z DNS.
Centrum Informacji Sieciowej DDN (Network Information Center DDN) posiadało ogromną tablicę
komputerów w sieci Internet, zwaną tablicą komputerów NIC. Przed przyjęciem DNS nazwy i adresy komputerów
Internetu były umieszczane w tym pliku. Nawet gdy tablica była wykorzystywana zgodnie ze swoim przeznaczeniem,
to rejestrowano w niej tylko ograniczoną liczbę systemów kluczowych. Brak było również mechanizmu automatycznie
rozsyłającego informacje o nowo zarejestrowanych komputerach.
Domain Name System (DNS)
DNS usuwa dwa podstawowe niedociągnięcia tablicy komputerów:
DNS jest skalowalny. Jest to system rozproszonej bazy danych. Nie załamuje się w miarę rozrostu tej bazy.
DNS gwarantuje, że informacja o nowym komputerze będzie w miarę potrzeby rozprowadzona w całej sieci.
Informacja jest nie tylko automatycznie rozprowadzana ale również dostarczana tylko tym, którzy są nią zainteresowani.
Jeżeli serwer DNS otrzymuje zapytanie dotyczące komputera, o którym nie posiada informacji, to przekazuje zapytanie
do serwera autorytatywnego. Jest to dowolny serwer odpowiedzialny za utrzymywanie dokładnej informacji o domenie,
o którą jest pytany. Gdy serwer autorytatywny udzieli informacji, to serwer lokalny zapamiętuje ją (w tzw cache'u) do
wykorzystania w przyszłości. Za następnym razem będzie już mógł sam udzielić odpowiedzi. DNS zastępuje również
wcześniejszą formę serwisu nazw. Obie są wymienione w pliku /etc/services. Stare oprogramowanie jest przypisane
do portu 42 i nosi nazwę nameservice. Obsługa nazw DNS jest powiązana z portem 53 i nosi nazwę domain.
DNS jest system rozproszonym i hierarchicznym, zamieniającym nazwy komputerów na ich adresy IP. Nie
występuje centralna baza danych. Informacja jest rozproszona między serwery nazw zorganizowane w strukturę
hierarchiczną. Na szczycie występuje domena główna (root domain) złożona z grupy serwerów zwanych serwerami
głównymi. Podobnie jak katalogi w systemie plików, informacja o domenach jest uzyskiwana dzięki wskazaniom z
Opracował: Zbigniew Suski 1
Obsługa nazw - DNS
domeny głównej, poprzez domeny podrzędne aż do domeny docelowej.
Bezpośrednio pod domeną główną znajdują się domeny górnego poziomu. Obecnie występują dwa typy
domen górnego poziomu - geograficzne i organizacyjne.
==== folia 123 ====
Serwery główne posiadają kompletną informację tylko o swoich domenach. Jednak serwery główne posiadają
wskazania na serwery domen drugiego poziomu. Mogą nie znać odpowiedzi na zgłoszone zapytanie, lecz wiedzą kogo
o nią spytać.
Nowa domena staje się dostępna, gdy w domenie nadrzędnej zostaną umieszczone wskazania do serwerów
ją obsługujących. Rekord bazy danych DNS, wskazujący na serwer nazw dla domeny zaznaczany jest przez NS (name
serwer). Rekord ten zawiera nazwę domeny oraz nazwę komputera pełniącego rolę serwera dla tej domeny.
Przy zapytaniu nierekurencyjnym zdalny serwer (pytany) odpowiada serwerowi lokalnemu (pytającemu),
informacją wskazująca kogo zapytać w następnej kolejności. Serwer lokalny sam musi podążać za wskazaniami. Przy
wyszukiwaniu rekurencyjnym zdalny serwer kieruje się wg wskazań i udziela końcowej odpowiedzi serwerowi lokalnemu.
Serwery główne zwykle realizują tylko poszukiwania nierekurencyjne.
Nazwy domen odzwierciedlają ich hierarchię. Są pisane począwszy od najbardziej specyficznej do najmniej
specyficznej (domeny górnego poziomu). Każda część nazwy oddzielana jest kropką.
W większości systemów UNIX oprogramowaniem realizującym DNS jest implementacja Berkeley Internet
Name Domain (BIND). Obsługa nazw DNS jest w założeniu podzielona na dwie składowe - resolver i serwer nazw.
Resolver jest oprogramowaniem formułującym zapytanie. Serwer nazw jest procesem, który odpowiada na zapytania.
Resolver nie istnieje jako oddzielny proces. Raczej można powiedzieć, że jest to zbiór procedur bibliotecznych
(zwanych kodem resolvera), które są dołączane do dowolnego programu wymagającego poszukiwania adresów. W
ramach BIND wszystkie komputery używają kodu resolvera, ale nie na wszystkich działa lokalny serwer nazw.
Serwer nazw BIND działa jako oddzielny proces o nazwie named. Występują trzy główne kategorie serwerów:
Primary (podstawowy) - to serwer, który dostarcza wszystkich danych o danej domenie. Serwery podstawowe są
autorytatywne. Oznacza to, że mają zawsze kompletną i poprawną informację. W każdej domenie
powinien znajdować się jeden serwer podstawowy.
Secondary (drugoplanowy) - to serwer, który otrzymuje pełną informację o domenie z serwera podstawowego.
Zapewnia utrzymanie dokładnej informacji o domenie dzięki okresowemu pobieraniu tzw. zone file.
Serwery drugoplanowe są także autorytatywne dla swojej domeny.
Caching-only (pomocniczy) - to serwer, który otrzymuje odpowiedzi na wszystkie zapytania od innych serwerów nazw.
Zapamiętuje je do wykorzystania w przyszłości. Serwery takie nie są autorytatywne. Oznacza to, że
posiadana przez nie informacja jest z drugiej ręki.
Stosując DNS mamy jeden podstawowy serwer nazw dla każdej domeny. Dane są do niego wprowadzane przez
administratora.
DNS - konfiguracja resolvera
Istnieją dwa sposoby konfigurowania resolvera. Można użyć konfiguracji domyślnej albo stworzyć własną
wykorzystując plik resolv.conf. Przy konfiguracji opartej na pliku resolv.conf, plik ten jest czytany za każdym razem,
gdy zostanie uruchomiony proces używający resolvera. Z powodu tej uciążliwości plik ten nie jest tworzony, dopóki nie
jest wymagany. Można się bez niego obyć w systemach wykorzystujących demona named.
Konfiguracja domyślna
W konfiguracji domyślnej, komputer lokalny pełni rolę serwera nazw. Domyślna nazwa domeny pobierana
jest z ciągu znaków zwracanych przez polecenie hostname. Nazwa domeny powstaje przez usunięcie znaków
występujących przed pierwszą kropka. Pozostałe znaki traktowane są jako nazwa domeny.
Aby konfiguracja działała poprawnie, na lokalnym komputerze powinien zostać uruchomiony proces named
a nazwa komputera musi być poprawnie zdefiniowana. Jeżeli polecenie hostname zwraca tylko nazwę komputera, to
konieczne jest istnienie pliku resolv.conf z określoną domyślną nazwą domeny.
Plik resolv.conf
====folia 125 ====
Plik ten definiuje konfigurację domeny. Pozwala również na określenie serwerów zapasowych,
wykorzystywanych w przypadku braku odpowiedzi ze strony serwera domyślnego. Pozycje nameserver określają
adresy IP serwerów, które mają być odpytywane przez resolver o informacje dotyczące domeny. Serwery są odpytywane
w kolejności w jakiej występują w pliku. Jeżeli pozycja nameserver nie występuje, to wszystkie zapytania kierowane
są do systemu lokalnego.
Pozycja domain definiuje domyślną nazwę domeny. Resolver łączy tą nazwę z każdą nazwą komputera,
która nie zawiera kropki. W zapytaniu kierowanym do serwera nazw używa nazwy komputera rozszerzonej w ten
właśnie sposób.
Opracował: Zbigniew Suski 2
Obsługa nazw - DNS
Konfiguracja demona named - plik named.boot
Plik ten definiuje zródła informacji DNS. yródłami tymi mogą być pliki lokalne i inne serwery znajdujące się w
sieci. W pliku named.boot używa się tzw etykiet (poleceń) konfiguracyjnych.
==== folia 126 ====
Serwer pierwotny
Etykieta directory określa katalog, w którym znajdują się pozostałe pliki konfiguracyjne.
Etykieta cache wskazuje plik notatnikowy. Służy on do przechowywania odpowiedzi udzielanych przez inne
serwery nazw oraz inicjalizacji pamięci podręcznej zawartością pliku named.ca.
Pierwsza etykieta primary deklaruje dany komputer jako serwer pierwotny dla domeny iar.wat.waw.pl oraz
określa plik named.hosts jako plik danych tej domeny.
Druga etykieta primary wskazuje plik mapujący adresy z klasy 193.59.145.0 na nazwy komputerów. Linia
ta informuje, że dany serwer jest serwerem pierwotnym dla domeny odwrotnej 145.59.193.in-addr.arpa i że
dane dla niej znajdują się w pliku named.rev.
Trzecia etykieta primary definiuje dany serwer jako pierwotny serwer nazw dla domeny lokalnej (loopback).
Informuje również, że dane o tej domenie znajdują się w pliku named.local. Domena lokalna jest domeną
mapującą adres 127.0.0.1 na nazwę localhost.
Serwer wtórny
W definicji konfiguracji serwera wtórnego w miejsce wyrażeń primary zostały użyte wyrażenia secondary.
Określają one jako zródło informacji serwery zewnętrzne. Parametry specyfikują nazwę domeny, adres serwera
pierwotnego i plik lokalny, w którym są przechowywane informacje pobierane z serwera pierwotnego.
Pierwsza linia secondary określa dany serwer jako wtórny dla domeny imbo.wat.waw.pl. Przekazuje ona
demonowi named polecenie pobrania danych z serwera o adresie 193.59.145.65 i umieszczenia ich w pliku
named.hosts.imbo.
Kolejna linia określa, że dany komputer pełni rolę serwera wtórnego dla domeny odwrotnej 146.59.193.in-
addr.arpa i dane również pobiera z serwera 193.59.145.65.
Dla konfiguracji serwera pomocniczego wystarczy linia z etykietą cache. Często używa się również linii primary
definiującej domenę lokalną.
Wszystkie pozostałe pliki używane do konfiguracji procesu named przechowują bazy danych dotyczące domen.
Wszystkie one mają ten sam podstawowy format i używają tych samych typów rekordów.
==== folia 127 ====
Nazwa obiektu w domenie może określać pojedynczy komputer lub domenę. Jeżeli pole to jest puste, to
rekord dotyczy obiektu zdefiniowanego wyżej.
Pole czas określa odcinek czasu, przez jaki informacja zawarta w rekordzie powinna być przetrzymywana
w pamięci podręcznej. Jeżeli pole jest puste, to przyjmowana jest wartość z rekordu SOA.
Pole dane zawiera dane specyficzne dla danego typu rekordu.
Plik named.ca
Jest to standardowy plik inicjujący pamięć podręczną. Każdy serwer wykorzystujący pamięć podręczną
posiada taki plik. Zawiera on informacje potrzebne w momencie startu serwera do inicjalizacji pamięci podręcznej,
danymi dotyczącymi domen. Plik ten musi zawierać przynajmniej nazwy i adresy serwerów domeny głównej.
Podstawowy plik named.ca zawiera rekordy typu NS określające serwery domeny root oraz rekordy typu A opisujące
ich adresy.
==== folia 128 ====
Podana wartość czasu powoduje, że rekordy serwerów domeny głównej nigdy nie są usuwane z pamięci podręcznej.
Dokładna lista serwerów domeny głównej dostępna jest poprzez anonimowe ftp na serwerze nic.ddn.mil w pliku
netinfo/root-servers.txt. Co pewien czas administrator powinien pobierać ten plik i wprowadzać do pliku named.ca
niezbędne zmiany. W pliku inicjującym pamięć podręczną często umieszcza się dane dotyczące serwerów sieci lokalnej.
Konfiguracja demona named - plik named.local
Plik ten jest używany do konwersji adresu lokalnego 127.0.0.1 na nazwę localhost. Jest to plik dla domeny
odwrotnej 0.0.127.in-addr.arpa.
Opracował: Zbigniew Suski 3
Obsługa nazw - DNS
==== folia 129 ====
Rekord SOA określa nazwę danego serwera i adres poczty elektronicznej. Należy zwrócić uwagę, że znak @ normalnie
oddzielający nazwę odbiorcy został zastąpiony przez kropkę. W wielu systemach rekord NS nie występuje. Ale gdy już
jest to zawiera nazwę danego serwera.
Domena odwrotna i plik domeny odwrotnej
==== folia 130 ====
==== folia 131 ====
W pliku named.rev występuje rekord SOA. Rekordy NS definiują serwery nazw dla domeny. Ze względu na puste pole
nazwy, obowiązuje nazwa z rekordu SOA. W tym pliku dominują rekordy PTR. Ponieważ wartości stojące w polach
nazwy nie są zakończone kropką, więc są względne w stosunku do aktualnej domeny. Nazwy komputerów w rekordach
PTR są pełne aby zapobiec ich rozszerzaniu.
Plik named.hosts
==== folia 132 ====
Plik ten zawiera większość informacji o domenie. Jest on tworzony tylko na serwerze głównym. Na podstawie danych
w rekordzie A zamieniane są nazwy komputerów na adresy IP.
Rekordy MX identyfikują serwery pocztowe dla domeny. Dla każdego z nich określana jest waga (liczbowa). Im wyższa
waga tym niższy priorytet serwera. Można w ten sposób definiować alternatywne serwery pocztowe.
Rekord CNAME definiuje alias czyli nazwę alternatywną.
nslookup
Program nslookup jest narzędziem śledzącym, wchodzącym w skład pakietu BIND. Pozwala na kierowanie
zapytań bezpośrednio do serwera nazw i uzyskiwanie wszystkich informacji dostępnych w systemie DNS. Narzędzie
to służy również do kontroli poprawności konfiguracji i działania serwera oraz do zadawania pytań dotyczących danych
dostarczanych przez serwery zewnętrzne.
Program nslookup może pracować w trybie interakcyjnym lub bezpośrednio z linii poleceń. W trybie
interakcyjnym jego możliwości są szersze.
Opracował: Zbigniew Suski 4


Wyszukiwarka

Podobne podstrony:
obsługa pojazdu Egzamin
obsluga wiertarki stolowej
Rozdział 04 System obsługi przerwań sprzętowych
Instrukcja obsługi bankomatu 1
Instrukcja obsługi Przenośna uniwersalna ładowarka USB Nokia DC 18
instrukcja obslugi Sagemcom DSI83
Instrukcja obsługi alarm Logic CAN LC 5 wyd 1 (2)
Nokia16 UG pl instrukcja obsługi
Instrukcja obsługi Ferguson Ariva T65 PL v1 50
Elementarz obsługi człowieka
OLYMPUS µ [mju] III 80 instrukcja obsługi
ESM8051 instrukcja obsługi
INSTRUKCJA OBSŁUGI KUCHENKA MIKROFALOWA AMICA AMM 21E80GS PL
Instrukcja obsługi do GOCLEVER 5066 FMBT PL

więcej podobnych podstron