[ Pobierz całość w formacie PDF ]
.W przeciwnym razie jedynie pasywnie odbiera uaktualnienia RIP i odSwie¿a lo-kaln¹ tablicê rutingu.Przy rozg³aszaniu informacji z lokalnej tablicy rutingu, gated liczy d³ugoSæ trasy napodstawie tak zwanej wartoSci metryki (ang.metric value) zwi¹zanej z wpisem w tabli-cy.Ta wartoSæ jest ustawiana przez administratora podczas konfigurowania rutingui powinna odpowiadaæ rzeczywistemu kosztowi trasy*.Dlatego metryka trasy dopodsieci, do której host jest pod³¹czony bezpoSrednio, zawsze powinna wynosiæ ze-ro, natomiast trasa prowadz¹ca przez dwa gatewaye powinna mieæ metrykê o war-toSci dwa.Nie musisz przejmowaæ siê metryk¹, je¿eli nie u¿ywasz protoko³u RIP-aani gated.Internetowy protokó³ komunikatów kontrolnych (ICMP)IP ma protokó³ towarzysz¹cy, o którym jeszcze nie mówiliSmy.Jest nim ICMP (Inter-net Control Message Protocol) u¿ywany przez kod sieciowy j¹dra do przesy³aniakomunikatów o b³êdach do innych hostów.Na przyk³ad za³Ã³¿my, ¿e jesteS znów naerdosie i chcesz zrealizowaæ po³¹czenie telnet z portem 12345na quarku, ale na tymporcie nie ma procesu nas³uchuj¹cego.Gdy pierwszy pakiet TCP zaadresowany naten port nadejdzie do quarka, warstwa sieciowa rozpozna, ¿e coS przysz³o i natych-miast zwróci do erdosa komunikat ICMP o treSci Port Unreachable (port nie-osi¹galny).* Koszt trasy to, w prostych sieciach, liczba hopów wymaganych do dotarcia do celu.W bardziej skom-plikowanych sieciach poprawne obliczenie kosztu trasy mo¿e byæ trudne.Rozwi¹zywanie nazwy hosta 29Protokó³ ICMP udostêpnia ró¿ne komunikaty, g³Ã³wnie z informacjami o b³êdach.Jednak istnieje jeden ciekawy komunikat, tak zwany komunikat przekierowania(ang.redirect message).Jest on generowany przez modu³ rutingu, gdy wykryje on, ¿einny host u¿ywa naszego hosta jako gatewaya, mimo ¿e istnieje krótsza trasa.Naprzyk³ad po uruchomieniu systemu tablica rutingu na sophusie mo¿e byæ niepe³na.Mo¿e zawieraæ trasy do sieci wydzia³u matematyki, do szkieletu FDDI i domySln¹trasê do gatewaya centrum obliczeniowego Groucho (gcc1).Tak wiêc pakiety adre-sowane do quarka bêd¹ wysy³ane do gcc1, a nie do nielsa gatewaya wydzia³u fizy-ki.Po odebraniu takiego datagramu gcc1 zauwa¿y, ¿e jest to nieoptymalna trasai przeka¿e pakiet do nielsa, zwracaj¹c równoczeSnie do sophusa komunikat prze-kierowania ICMP z informacj¹ o lepszej trasie.Wydaje siê, ¿e w ten sposób mo¿na ³atwo unikn¹æ rêcznej konfiguracji wszelkichtras poza podstawowymi.Trzeba jednak zdawaæ sobie sprawê, ¿e poleganie naschematach rutingu dynamicznego, czy to bêdzie RIP, czy komunikat przekierowa-nia ICMP, nie zawsze jest dobre.Przekierowanie ICMP i RIP daj¹ ci niewielk¹ mo¿li-woSæ (lub wrêcz nie daj¹ ci ¿adnej szansy) weryfikowania pokrywaj¹cych siê infor-macji o rutingu.Ta sytuacja mo¿e prowadziæ do zak³Ã³cenia pracy ca³ej twojej siecilub jeszcze gorszych rzeczy.W rezultacie kod sieciowy Linuksa traktuje komunikatyprzekierowania sieci tak, jakby to by³y przekierowania hosta.Minimalizuje to znisz-czenia w przypadku ataku, które dotkn¹ wówczas jeden host, a nie ca³¹ sieæ.Z dru-giej strony oznacza to, ¿e w przypadku legalnej sytuacji generowany jest nieco wiêk-szy ruch, gdy¿ ka¿dy host wysy³a komunikat przekierowania ICMP.Obecnie opie-ranie siê na przekierowaniach ICMP nie jest dobrze widziane i uznaje siê je raczej zaz³¹ praktykê.Rozwi¹zywanie nazwy hostaJak wczeSniej napisaliSmy, adresowanie w sieci TCP/IP, przynajmniej tam, gdziekorzysta siê z IP w wersji 4, opiera siê na liczbach 32-bitowych.Nie ukrywamy, ¿ezapamiêtywanie takich liczb nie jest ³atwe.Dlatego hosty wystêpuj¹ równie¿ pod zwyk³ymi nazwami, takimi jak gauss czy strange.Znalezienie adresu IP odpo-wiadaj¹cego nazwie to obowi¹zek aplikacji.Proces ten jest nazywany rozwi¹zywan-iem nazwy hosta.Gdy aplikacja chce znalexæ adres IP danego hosta, korzysta z funkcji bibliotecznejgethostbyname(3) i gethostbyaddr(3).Tradycyjnie te i inne zwi¹zane z nimi proceduryby³y zgrupowane w oddzielnej bibliotece o nazwie resolverlibrary.W Linuksie funk-cje te s¹ czêSci¹ standardowej biblioteki libc.Potocznie zestaw tych funkcji jest nazy-wany resolverem.Konfiguracjê mechanizmu rozwi¹zywania nazw opisano szc-zegó³owo w rozdziale 6, Us³ugi nazewnicze i konfigurowanie resolvera.W przypadku ma³ej sieci Ethernet czy nawet grupy takich sieci, nie jest trudno utrzy-mywaæ tablice odwzorowuj¹ce nazwy hostów na adresy
[ Pobierz całość w formacie PDF ]