1

Temat: Monitorowanie działania użytkowników lokalnej sieci komputerowej...

Monitorowanie działania użytkowników lokalnej sieci komputerowej opartej na rozwiązaniach systemów Linux

Technologie monitorowania sieci
Na potrzeby monitorowania sieci komputerowych powstało wiele narzędzi i protokołów, mających za zadanie testowanie poprawności ich działania, jak również automatyzowanie procesów zbierania danych o stanach poszczególnych węzłów.

ICMP
ICMP (ang. Internet Control Message Protocol, internetowy protokół komunikatów kontrolnych) – opisany w RFC 792 protokół warstwy sieciowej OSI/TCP/IP używany w diagnostyce sieci oraz trasowaniu. Komunikaty ICMP są narzędziami diagnostycznymi „wbudowanymi” w warstwę internetową. Jeśli dwa węzły sieci nie są w stanie komunikowaćsię ze sobą, ICMP może pomóc w zdiagnozowaniu problemu. ICMP pełni również funkcję kontroli transmisji.
Pakiety typu ICMP są wykorzystywane przez popularne programy Ping i Traceroute, które są często używane przez systemy monitorujące sieci.

ping -s 80 www.google.com

Ping
Ping jest nazwą programu używanego w sieciach komputerowych TCP/IP, służącego do testowania połączeń sieciowych. Jego zadaniem jest sprawdzenie, czy istnieje połączenie pomiędzy hostami. Umożliwia również pomiar liczby zgubionych pakietów oraz opóźnień w ich transmisji, zwanych lagami. Ping używa protokołu ICMP, wysyłając pakiety ICMP Echo Request i odbierając ICMP Echo Reply. Tego samego mechanizmu używają systemy monitorujące sieci do określenia dostępności węzłów.

ping -i 3 -c 5 www.google.com

Traceroute
Traceroute jest programem służącym do śledzenia trasy pakietów w sieciach TCP/IP. Do działania wykorzystuje protokoły komunikacyjne ICMP oraz UDP. W pierwszej fazie Traceroute wysyła pakiet ICMP do docelowego hosta, z wartością TTL (Time To Live) ustawioną na 1. Wartość TTL jest zmniejszana o 1 przy przejściu przez każdy router, znajdujący się po drodze między hostem badanym i badającym. Po osiągnięciu wartości TTL równej 0, router odrzuca pakiet wysyłając zwrotny komunikat ICMP typu Time Exceeded. Na tej podstawie Traceroute określa adres IP pierwszego routera po drodze. W kolejnych fazach wartość TTL jest każdorazowo zwiększana o 1, aby uzyskiwać informacje o kolejnych routerach. Po dotarciu do docelowego wysyłany jest pakiet UDP na port o numerze wyższym od 30000, na którym zazwyczaj nie działajążadne usługi. W odpowiedzi host przesyła wiadomość ICMP Port Unreachable, co kończy śledzenie trasy. Systemu monitorujące mogą używać Traceroute do sprawdzania, czy droga pakietów wewnątrz sieci jest zgodna z założoną. Rozbieżności mogą wskazywać np. problemy z łączami operatorskimi czy protokołami routingu.

traceroute -4 10 google.com

SNMP
SNMP (Simple Network Management Protocol) jest rodzinąprotokołów sieciowych, używanych do zarządzania urządzeniami pracującymi w sieci komputerowej, takimi jak przełączniki, routery, komputery, serwery etc. Domyślnie protokół SNMP wykorzystuje dwa porty UDP do komunikacji, port 161 do przesyłania żądań i odbierania odpowiedzi, oraz port 162 do odbierania sygnałów Trap, jednak możliwe jest wykorzystanie innych portów, oraz protokołu TCP. Istnieją cztery wersje protokołu SNMP.

sudo apt-get install snmp-mibs-downloader
snmpwalk -c public -v1 localhost | less

RMON
Remote Network MONitoring (RMON) jest standardem monitorowania sieci komputerowych. Jest dobrym uzupełnieniem dla SNMP, ponieważ w odróżnieniu od SNMP, który służy do badania stanu urządzeń, RMON potrafi analizować ruch sieciowy. Przy jego pomocy można uzyskać informacje odnośnie używanych protokołów i aplikacji. Aplikacje RMON działają w oparciu o architekturę klient/serwer. Klient jest uruchamiany na stacji monitorującej i służy do prezentacji danych RMON. Serwerami są elementy instalowane w różnych miejscach sieci – zbierają one informacje RMON i analizują pakiety przesyłane przez dany segment sieci. Urządzenia monitorujące nosząnazwę sond. Sonda współpracuje z oprogramowaniem instalowanym w pamięci węzła sieci, będące niczym innym jak agentem systemu RMON. Agenci są instalowani w hubach, routerach, przełącznikach itd. Agent komunikuje się ze stacją zarządzania korzystając z usług protokołu SNMP [8]. Sondy RMON definiują szereg dodatkowych grup baz danych MIB. Dane gromadzone w tych bazach służą do dokładnego analizowania pracy danego urządzenia lub całego segmentu sieci LAN.

Pakiet OpenNMS
OpenNMS jest wysoce skalowalnym systemem do monitorowania i zarządzania zarówno niewielkimi, jak i rozległymi, bardzo rozbudowa-nymi sieciami komputerowymi. Jest rozwijany w oparciu o wolna licencjęGNU General Public License, co za tym idzie ma doskonałe wsparcie społeczności oraz zespołu OpenNMS Group, który oferuje również ko-mercyjne wsparcie. System monitorujący jest napisany w Javie, więc może działać na dowolnej platformie sprzętowej i programowej, która wspiera Java SDK. Do pobrania są gotowe kompilacje na systemy Windows, Linux, Solaris i OS X. Poza Javą, OpenNMS wykorzystuje bazę danych PostgreSQL i na chwilę obecną nie ma możliwości wykorzystania innej bazy.

https://www.opennms.com/