Onion Information
Osnovni alati za analizu računalne mreže - GASERI
Svi alati koje opisujemo ovdje pokreću se u ljusci, a rade jednako dobro na stvarnim i na emuliranim čvorovima
Onion Details
Page Clicks: 1
First Seen: 03/15/2024
Last Indexed: 10/23/2024
Onion Content
Preskoči na sadržaj Osnovni alati za analizu računalne mreže Svi alati koje opisujemo ovdje pokreću se u ljusci, a rade jednako dobro na stvarnim i na emuliranim čvorovima. Alat ping je osnovni alat za slanje ICMP ECHO_REQUEST domaćinima na mreži. Koristimo ga kada želimo provjeriti je li neki domaćin/gateway dostupan na mreži. Ping je vrlo jednostavno za koristiti. Najjednostavniji oblik korištenja je korištenje bez dodatnih parametara. Ako je domaćin dostupan, te ako se paketi mogu slati bez poteškoća, dobiti ćemo povratnu informaciju o uspješnosti, te informaciju o tome kako nema izgubljenih paketa ("0% packet loss"). Ukoliko želimo provjeriti je li domaćin example dostupan na mreži group.miletic.net jednostavno iza naredbe pišemo ime domaćina i mrežu kojoj pripada: $ ping example.group.miletic.net PING example.group.miletic.net ( 193 .198.209.42 ) 56 ( 84 ) bytes of data. 64 bytes from 193 .198.209.42: icmp_seq = 1 ttl = 56 time = 3 .48 ms 64 bytes from 193 .198.209.42: icmp_seq = 2 ttl = 56 time = 3 .44 ms 64 bytes from 193 .198.209.42: icmp_seq = 3 ttl = 56 time = 3 .49 ms 64 bytes from 193 .198.209.42: icmp_seq = 4 ttl = 56 time = 3 .49 ms 64 bytes from 193 .198.209.42: icmp_seq = 5 ttl = 56 time = 3 .46 ms ^C --- example.group.miletic.net ping statistics --- 5 packets transmitted, 5 received, 0 % packet loss, time 4006ms rtt min/avg/max/mdev = 3 .445/3.476/3.497/0.077 ms Ping bez dodatnih argumenata šalje ICMP zahtjeve u beskonačnost, pa je slanje nužno prekinuti kombinacijom tipki Ctrl + C . Ukoliko je potrebno, umjesto imena domaćina možemo pisati njegovu IP adresu: $ ping 193 .198.209.42 PING 193 .198.209.42 ( 193 .198.209.42 ) 56 ( 84 ) bytes of data. 64 bytes from 193 .198.209.42: icmp_seq = 1 ttl = 56 time = 3 .48 ms 64 bytes from 193 .198.209.42: icmp_seq = 2 ttl = 56 time = 3 .61 ms 64 bytes from 193 .198.209.42: icmp_seq = 3 ttl = 56 time = 4 .13 ms ^C --- 193 .198.209.42 ping statistics --- 3 packets transmitted, 3 received, 0 % packet loss, time 2003ms rtt min/avg/max/mdev = 3 .488/3.746/4.135/0.288 ms Uvođenjem dodatnih parametara, možemo manipulirati načinom i učestalosti slanja ICMP zahtjeva. Parametre možemo međusobno kombinirati, osim u slučajevima kada to izaziva kontradikciju. Za slanje u određenom intervalu (svakih n sekundi), koristimo parametar -i , te broj sekundi. Ping bez argumenata zahtjev šalje u intervalima od 1 sekunde. Moguće je smanjiti taj interval, npr. na pola sekunde: $ ping -i 0 .5 example.group.miletic.net Želimo li poslati određen broj zahtjeva (umjesto da sami prekidamo slanje kombinacijom tipki Ctrl + C ), koristimo parametar -c i broj paketa. Primjerice, ako želimo poslati 3 zahtjeva: $ ping -c 3 example.group.miletic.net PING example.group.miletic.net ( 193 .198.209.42 ) 56 ( 84 ) bytes of data. 64 bytes from 193 .198.209.42: icmp_seq = 1 ttl = 56 time = 3 .82 ms 64 bytes from 193 .198.209.42: icmp_seq = 2 ttl = 56 time = 3 .45 ms 64 bytes from 193 .198.209.42: icmp_seq = 3 ttl = 56 time = 6 .35 ms --- example.group.miletic.net ping statistics --- 3 packets transmitted, 3 received, 0 % packet loss, time 2003ms rtt min/avg/max/mdev = 3 .454/4.545/6.354/1.290 ms Također, parametrom -w možemo odrediti ukupno vrijeme u kojem želimo da se zahtjevi šalju. Nakon određenog broja sekundi slanje se prekida (u našem primjeru 3 sekunde). $ ping -w 3 example.group.miletic.net Ako ne želimo vidjeti informacije o svakom poslanom zahtjevu posebno, možemo uključiti 'tihi' način rada parametrom -q ; u tom slučaju prikazat će se samo završni izvještaj. $ ping -q -c 10 example.group.miletic.net PING example.group.miletic.net ( 193 .198.209.42 ) 56 ( 84 ) bytes of data. -- example.group.miletic.net ping statistics --- 10 packets transmitted, 10 received, 0 % packet loss, time 9014ms rtt min/avg/max/mdev = 3 .472/3.931/5.105/0.540 ms Parametrom -s možemo mijenjati veličinu paketa kojeg šaljemo. Zadana veličina paketa je 56 bajta. Veličini koju odredimo se dodaje još 28 byteova, zbog veličine zaglavlja paketa (u nastavku kolegija naučit ćemo zašto baš 28 bajta). U primjeru šaljemo pakete čije je tijelo veličine 200 bajta, što zajedno sa zaglavljem čini ukupno 228 bajta. $ ping -s 200 example.group.miletic.net PING example.group.miletic.net ( 193 .198.209.42 ) 200 ( 228 ) bytes of data. 208 bytes from 193 .198.209.42: icmp_seq = 1 ttl = 56 time = 3 .49 ms 208 bytes from 193 .198.209.42: icmp_seq = 2 ttl = 56 time = 3 .75 ms ^C --- example.group.miletic.net ping statistics --- 2 packets transmitted, 2 received, 0 % packet loss, time 1001ms rtt min/avg/max/mdev = 3 .493/3.626/3.759/0.133 ms Pregled parametara za alat ping: i : slanje paketa u određenom vremenskom intervalu -c : slanje određenog broja paketa -w : određivanje timeouta -q : tihi način rada -s : mijenjanje veličine paketa za slanje Za informacije o ostalim mogućnostima proučite man ping . Alati traceroute i tracepath prate putanju kretanja paketa od slanja do odredišta. Iako postoje netrivijalne razlike između alata traceroute i tracepath , za naše potrebe oni su jednako dobri. U nastavku opisujemo korištenje naredbe tracepath ; traceroute se koristi na vrlo sličan način. tracepath koristimo navođenjem imena ili IP adrese čvora u mreži. Primjerice, želimo li pratiti putanju kretanja paketa s privatnog domaćina (T-Com ISP) do poslužitelja example: $ tracepath example.group.miletic.net 1 : host.lan 0 .191ms pmtu 1500 1 : dsldevice.lan 84 .268ms 1 : dsldevice.lan 95 .075ms 2 : dsldevice.lan 98 .775ms pmtu 1492 2 : no reply 3 : 172 .29.49.245 56 .365ms 4 : gtr11-hdr01.ip.t-com.hr 53 .908ms 5 : 193 .192.15.65 80 .398ms 6 : CN-Srce-03-RO.core.carnet.hr 59 .637ms asymm 12 7 : CN-Riteh-01-RO.core.carnet.hr 66 .910ms asymm 12 8 : CN-Riteh.01-ES.core.carnet.hr 67 .485ms 9 : kbf03-ro.access.carnet.hr 72 .179ms 10 : example.group.miletic.net 78 .724ms 11 : example.group.miletic.net 82 .123ms reached Resume: pmtu 1492 hops 11 back 54 Ukoliko želimo vidjeti putanju kretanja isključivo po IP adresama, koristimo parametar -n : $ tracepath -n example.group.miletic.net 1 : 192 .168.1.2 0 .209ms pmtu 1500 1 : 192 .168.1.1 14 .326ms 1 : 192 .168.1.1 300 .088ms 2 : 192 .168.1.1 217 .613ms pmtu 1492 2 : no reply 3 : 172 .29.49.245 54 .245ms 4 : 195 .29.240.210 66 .783ms 5 : 193 .192.15.65 58 .056ms 6 : 193 .198.228.154 57 .958ms asymm 12 7 : 193 .198.237.54 56 .744ms asymm 12 8 : 193 .198.235.2 56 .589ms 9 : 193 .198.235.174 57 .391ms 10 : 161 .53.45.42 58 .736ms 11 : 161 .53.45.42 60 .637ms reached Resume: pmtu 1492 hops 11 back 54 Također, ako želimo vidjeti ispis i imena domaćina/gatewaya i njihovih IP adresa, koristimo parametar -b : $ tracepath -b example.group.miletic.net Pregled parametara za alat tracepath : n : pregled putanje po IP adresama -b : pregled putanje po IP adresama i nazivima domaćina Za informacije o ostali parametrima proučite man tracepath (ili man traceroute ). Alat netstat pruža nam raznolike informacije o konfiguraciji i aktivnostima na mreži. Kako bi vidjeli informacije i statistike vezane uz pojednino mrežno sučelje na našem računalu, koristimo parametar -i : $ netstat -i Kernel Interface table Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eth0 1500 0 BMU lo 16436 0 931 0 LRU wlan0 1500 0 1074438 0 1000130 0 BMRU U ovoj tablici stupci koje možemo sa sadašnjim znanjem čitati su redom: Iface : ime mrežnog sučelja ( eth* su obično Ethernet mrežne kartice, wlan* su WiFi mrežne kartice) RX* : informacije o primljenim paketima TX* : informacije o poslanim paketima Ukoliko želimo detaljniji prikaz informacija o sučeljima, potrebno je nadodati parametar -e : $ netstat -ie Kernel Interface table eth0 Link encap:Ethernet HWaddr 00 :26:9e:78:3e:36 UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 ( 0 .0 B ) TX bytes:0 ( 0 .0 B ) Interrupt:30 Base address:0xc000 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:946 errors:0 dropped:0 overruns:0 frame:0 TX packets:946 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:55873 ( 54 .5 KiB ) TX bytes:55873 ( 54 .5 KiB ) wlan0 Link encap:Ethernet HWaddr 00 :24:d6:0b:61:26 inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::224:d6ff:fe0b:6126/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1074857 errors:0 dropped:0 overruns:0 frame:0 TX packets:1000600 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:383343384 ( 365 .5 MiB ) TX bytes:143158985 ( 136 .5 MiB ) Za prikaz routing tablice, koristimo parametar -r : $ netstat -r Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 192 .168.1.0 * 255 .255.255.0 U 0 wlan0 link-local * 255 .255.0.0 U 0 wlan0 default dsldevice.lan 0 .0.0.0 UG 0 wlan0 Dodamo li i parametar -n , dobit ćemo prikaz IP adresa umjesto imena domaćina i mreža: $ netstat -rn Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 192 .168.1.0 * 255 .255.255.0 U 0 wlan0 192 .168.0.0 * 255 .255.0.0 U 0 wlan0 0 .0.0.0 192 .168.1.1 0 .0.0.0 UG 0 wlan0 Parametrom -t možemo pregledati aktivne TCP konekcije (otvorene utičnice). Dodatkom parametra -a (all), prikazujemo i poslužitelje: $ netstat -ta Active Internet connections ( servers and established ) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 *:http *:* LISTEN tcp 0 *:domain *:* LISTEN tcp 0 *:ssh *:* LISTEN tcp 0 localhost:postgres *:* LISTEN tcp 0 *:smtp *:* LISTEN tcp 0 *:https *:* LISTEN tcp 0 10 .11.22.238:49921 93 .152.160.101:6697 ESTABLISHED tcp 0 10 .11.22.238:48270 HUBBARD.CLUB.CC.CM:6697 ESTABLISHED tcp 0 368 10 .11.22.238:ssh 78 -2-77-250.adsl.:54528 ESTABLISHED tcp6 0 [ :: ] :domain [ :: ] :* LISTEN tcp6 0 [ :: ] :ssh [ :: ] :* LISTEN tcp6 0 [ :: ] :ipp [ :: ] :* LISTEN tcp6 0 localhost:postgres [ :: ] :* LISTEN Također, moguće je vidjeti i UDP konekcije (otvorene utičnice), parametrom -u : $ netstat -ua Active Internet connections ( servers and established ) Proto Recv-Q Send-Q Local Address Foreign Address State udp 0 *:domain *:* udp 0 10 .11.22.238:ntp *:* udp 0 localhost:ntp *:* udp 0 *:ntp *:* udp 0 *:38069 *:* udp 0 *:mdns *:* udp 0 *:ipp *:* udp6 0 [ :: ] :domain [ :: ] :* udp6 0 fe80::218:f3ff:fe6c:ntp [ :: ] :* udp6 0 localhost:ntp [ :: ] :* udp6 0 [ :: ] :ntp [ :: ] :* udp6 0 localhost:58156 ESTABLISHED Za detaljan prikaz svih otvorenih utičnica, koristimo kombinaciju parametara -utae : $ netstat -utae Active Internet connections ( servers and established ) Proto Recv-Q Send-Q Local Address Foreign Address State User Inode tcp 0 *:http *:* LISTEN root 14299 tcp 0 *:domain *:* LISTEN root 13609 tcp 0 *:ssh *:* LISTEN root 14062...