mreze racunala - skripta

32
Skripta iz kolegija mreže računala 2010 Skripta iz kolegija mreže računala Sastavio Mario Bašić Contents Multipleksiranje................................................... 4 Vremenski multipleks ( TDM ).....................................4 Sinkroni vremenski multipleks...................................4 Asinkroni vremenski multipleks..................................4 Frekvencijski multipleks ( FDM ).................................4 Prospajanje linija i prospajanje paketa............................4 Prospajanje linija............................................... 5 Poruka........................................................... 5 Paket............................................................ 5 Ponašanje čvorova:............................................... 5 Simplex, Half Duplex, Full Duplex..................................5 Simplex.......................................................... 5 Half Duplex...................................................... 5 Full Duplex...................................................... 5 Uslojavanje........................................................ 5 ISO/OSI refentni model uslojavanja...............................5 TCP/IP refentni model uslojavanja................................6 Topologije računalnih mreža........................................6 Sabirnica........................................................ 6 Prsten........................................................... 6 Zvijezda......................................................... 6 Podjela računalnih mreža........................................... 7 Mrežni sloj........................................................ 7 Ipv4 adrese i paketi............................................. 7 1

Upload: kemal-karasalihovic

Post on 02-Apr-2015

106 views

Category:

Documents


12 download

TRANSCRIPT

Page 1: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

Skripta iz kolegija mreže računalaSastavio Mario Bašić

ContentsMultipleksiranje.....................................................................................................................................4

Vremenski multipleks ( TDM )............................................................................................................4

Sinkroni vremenski multipleks........................................................................................................4

Asinkroni vremenski multipleks......................................................................................................4

Frekvencijski multipleks ( FDM ).........................................................................................................4

Prospajanje linija i prospajanje paketa...................................................................................................4

Prospajanje linija................................................................................................................................5

Poruka................................................................................................................................................5

Paket..................................................................................................................................................5

Ponašanje čvorova:............................................................................................................................5

Simplex, Half Duplex, Full Duplex...........................................................................................................5

Simplex...............................................................................................................................................5

Half Duplex.........................................................................................................................................5

Full Duplex..........................................................................................................................................5

Uslojavanje.............................................................................................................................................5

ISO/OSI refentni model uslojavanja....................................................................................................5

TCP/IP refentni model uslojavanja.....................................................................................................6

Topologije računalnih mreža..................................................................................................................6

Sabirnica.............................................................................................................................................6

Prsten.................................................................................................................................................6

Zvijezda..............................................................................................................................................6

Podjela računalnih mreža.......................................................................................................................7

Mrežni sloj..............................................................................................................................................7

Ipv4 adrese i paketi............................................................................................................................7

Mrežna maska ( Subnet Mask )..........................................................................................................7

Klasno adresiranje..................................................................................................................................8

Devil linux...............................................................................................................................................8

Ethernet lokalne mreže..........................................................................................................................9

1

Page 2: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

CSMA/CD............................................................................................................................................9

Ponašanje CSMA/CD:....................................................................................................................10

Formati okvira ethernet mreža.........................................................................................................10

DIX ethernet okvir........................................................................................................................10

IEEE 802.3 ethernet okvir.............................................................................................................10

ARP protokol....................................................................................................................................10

ARP postupak...............................................................................................................................10

Postupak provjere prije slanja......................................................................................................11

Ethernet mrežni uređaji.......................................................................................................................11

Hub...................................................................................................................................................11

Problemi korištenja hub-a............................................................................................................11

Switch...............................................................................................................................................11

Prednosti switch-a........................................................................................................................11

Princip rada programa u switchu..................................................................................................11

Petlja................................................................................................................................................12

Rješenje problema petlje = STP....................................................................................................12

Podjela switch-eva............................................................................................................................13

Virtual LAN ( VLAN )..........................................................................................................................13

Wire Speed.......................................................................................................................................13

Načini preklapanja............................................................................................................................13

Store and forward........................................................................................................................13

Cut through..................................................................................................................................13

Fragment free...............................................................................................................................14

Adaptive switching.......................................................................................................................14

Stacking............................................................................................................................................14

Proslijeđivanje......................................................................................................................................14

Funkcija usmjernika..........................................................................................................................14

Tablica proslijeđivanja......................................................................................................................14

Karakteristike tablice proslijeđivanja................................................................................................15

Idući čvor ( next hop )...................................................................................................................15

Postupak pretraživanja.....................................................................................................................15

Defaultna ruta..................................................................................................................................15

Podešavanje tablice prosljeđivanja u virtualnim mašinama.................................................................15

Naredbe za provjeravanje pogreški..................................................................................................16

2

Page 3: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

ICMP.....................................................................................................................................................16

Echo i Echo reply..............................................................................................................................16

Naredba ping................................................................................................................................16

Zapisivanje poruke Echo...............................................................................................................16

Zapisivanje poruke Echo Reply.....................................................................................................16

Istek vremenskog ograničenja ( TTL )...............................................................................................16

Korištenje u naredbi „traceroute“................................................................................................16

Zapis paketa.................................................................................................................................17

Modificiranje IP paketa od strane rutera ( usmjernika )...............................................................17

Naredba za dobivanje IP adrese servera ( Windows )......................................................................17

Mjesto u linuxu za podešavanje DNS servera...................................................................................17

Editori za linux..............................................................................................................................17

SNAT.....................................................................................................................................................17

Naredba............................................................................................................................................17

FIREWALL ( Sigurnosni zaštitni uređaj )................................................................................................17

Podjela firewall uređaja....................................................................................................................17

Primjeri arhitektura..........................................................................................................................18

Skica firewall-a..................................................................................................................................19

Naredbe u linuxu za firewall.............................................................................................................19

Podsjetnik:........................................................................................................................................19

Moguće akcije:.................................................................................................................................20

Tablice u lancima..............................................................................................................................20

Prijenosni sloj.......................................................................................................................................20

Podjela prijenosnog sloja..................................................................................................................20

UDP ( User Datagram Protocol ).......................................................................................................20

Ponavljanje...................................................................................................................................20

UDP okvir......................................................................................................................................21

Primjeri upotrebe UDP-a..............................................................................................................21

SOCKET.........................................................................................................................................21

TCP ( Transmission Control Protocol )..............................................................................................21

Alternating Bit Protocol ( ABP ).....................................................................................................21

Glavni problem Alternating Bit Protokola.....................................................................................22

Rješenje problema........................................................................................................................22

Funkcije / razredi u javi za TCP.....................................................................................................22

3

Page 4: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

Skica TCP implementacije.............................................................................................................23

Uspostava TCP spoja ( 3-way hand-shake )...................................................................................23

Tok TCP komunikacije između poslužitelja i klijenta.....................................................................24

Raskid TCP spoja...........................................................................................................................24

HTTP ( Hypet Text Transfer Protocol )..................................................................................................25

Karakteristike HTTP-a.......................................................................................................................25

Primjer jednostavnog HTTP zahtjeva za osnovnom stranicom.........................................................25

Dodatni atributi koji se mogu pojaviti u zahtjevu.............................................................................25

PROXY...................................................................................................................................................26

Razlozi upotrebe...............................................................................................................................26

DNS ( Domain Name Server )................................................................................................................26

Organizacija DNS-a...........................................................................................................................26

Multipleksiranje- Omogučava da jedno sredstvo koristi više korisnika istovremeno

Vremenski multipleks ( TDM )- Određen dio vremena jedan resurs dajemo jednom korisniku, potom drugom itd ...- Svaki korisnik ima cijeli komunikacijski kanal za slanje svoje poruke, ali samo jedan dijelić

vremena ( Vremenski slot )

Vremenski multipleks se dijeli na:

- Sinkroni vremenski multipleks- Asinkroni vremenski multipleks

Sinkroni vremenski multipleks- Svakih nekoliko milisekundi korisnik na raspolaganju ima cijeli komunikacijski kanal

neovisno o tome da li ima kakvu poruku za poslati ili nema

Asinkroni vremenski multipleks- Svaki korisnik koji ima nešto za slanje pokušava ugrabiti prvi slobodan djelić vremena

Frekvencijski multipleks ( FDM )- Korisnici istovremeno upotrebljavaju resurs, ali koristeći rezličite frekvencije

Prospajanje linija i prospajanje paketa- Razlikujemo tri vrste prospajanja:

o Prospajanje linijao Prospajanje poruka

4

Page 5: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

o Prospajanje paketa

Prospajanje linija- Veza se fiksira i traje sve do prekida bez obzira da li se koristi ili ne

Poruka- Je kompletan skup podataka koje korisnik u nekom trenutku želi poslati drugoj strani

Paket- Je skup podataka ograničene veličine

Poruka se najčešće razbija na više paketa

Ponašanje čvorova:1. Prihvača cijelu poruku/paket2. Provjerava ispravnost poruke/paketa3. Ako nema greške šalje dalje poruku/paket

Simplex, Half Duplex, Full Duplex

Simplex- U prostoriji se nalaze osoba A i osoba B, osoba A ima sposobnost govora i govori, dok osoba B

nema sposobnost govora jer nema jezik

Half Duplex- Osoba A i osoba B imaju sposobnost govora, ali koriste voki-toki. To znaći da ne mogu

istovremeno komunicirati, već komuniciraju naizmjenice

Full Duplex- Osoba A i osoba B imaju sposobnost govora i svadaju se tj. Istodobno komuniciraju

Uslojavanje

ISO/OSI refentni model uslojavanja7. Aplikacijski sloj – HTTP, SMTP, IMAP, POP, DNS

6. Prezentacijski sloj – big endian, little endian

5. Sjednički sloj – cookie, uparivanje poruka

4. Prijenosni sloj – TCP, PORT-ovi, UDP

3. Mrežni sloj – IP, Subnet Mask

2. Podatkovni sloj – ethernet frame

1. Fizički sloj – 0 ili 1

5

Page 6: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

TCP/IP refentni model uslojavanja5. Aplikacijski sloj:

a. Aplikacijski slojb. Prezentacijski slojc. Sjednički sloj

4. Prijenosni sloj3. Mrežni sloj2. Podatkovni sloj1. Fizički sloj

IEEE je zadužen za 1. I 2. Sloj

IETF je zadužen za 3.,4. I 5. sloj

Topologije računalnih mreža

Sabirnica

Prsten

Zvijezda

6

Page 7: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

Podjela računalnih mreža- Prema prijenosnom mediju:

o Žičneo Bežične

- Prema području na kojemu se rasprostiru ( veličini ):o Lokalne ( LAN – Local Area Network )o Gradske ( MAN – Metropolitan Area Network )o Međugradske ( WAN – Wide Area Network )

Mrežni sloj predstavlja temelj interneta

Mrežni sloj- Temelj mrežnog sloja čine IP adrese i paketi

Ipv4 adrese i paketi- Npr. 192.168.10.12- Jedan oktet=28 tj. _ _ _ _ _ _ _ _ tj. 8 bitova- Maksimalna vrijednost = 255- Binarno:

o 11000000.10101000.0001010.00001100- Mogući broj kombincija od 32 bita je 232

Mrežna maska ( Subnet Mask )- Definira adresu mreže koja se koristi u procesu usmjeravanja

Uz svaku IP adresu vezana je Subnet maska

- Npr. 192.168.10.12/255.255.255.0 ili 192.168.10.12/24- Mrežna maska dijeli IP adresu na dva dijela:

o Mrežni dioo Računalni dio

Npr. 192.168.10.12/255.255.255.0

Za računanje računalnog, mrežnog dijela ili broadcast dijela IP adrese možete koristiti:

IP-bin converter program.

Gornji primjer uz IP-bin converter:

7

Page 8: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

Računalni dio ne smije biti sve nule jer je to adresa mreže

Računalni dio ne smije biti sve jedinice jer je to broadcast adresa mreže

Poruke poslane na broadcast adresu mreže primaju sva računala u toj mreži.

Klasno adresiranje- Klasno adresiranje se prije koristilo, ali se pokazalo lošim

A. 0 _ _ _ _ _ _ _ . _ _ _ _ _ _ _ _ . _ _ _ _ _ _ _ _ . _ _ _ _ _ _ _ _ Subnet mask = 8 bitova, 16 milijuna računala po mreži

B. 1 0 _ _ _ _ _ _ . _ _ _ _ _ _ _ _ . _ _ _ _ _ _ _ _ . _ _ _ _ _ _ _ _ Subnet mask = 16 bitova, 65 000 računala po mreži

C. 1 1 0 _ _ _ _ _ . _ _ _ _ _ _ _ _ . _ _ _ _ _ _ _ _ . _ _ _ _ _ _ _ _ Subnet Mask = 24 bitova, 254 računala po mreži

D. 1 1 1 0 _ _ _ _ . _ _ _ _ _ _ _ _ . _ _ _ _ _ _ _ _ . _ _ _ _ _ _ _ _ ( difuzija u grupi )E. 1 1 1 1 _ _ _ _ . _ _ _ _ _ _ _ _ . _ _ _ _ _ _ _ _ . _ _ _ _ _ _ _ _ (rezervirano )

Danas se koristi besklasno adresiranje CIDR ( Classless Interdomain Routing )

Svaka IP adresa ima svoju subnet masku

Devil linux- Učitavanje drivera ethernet kartice:

o „modprobe pcnet32“- Ethernet kartica se označava sa:

o „eth0 ili eth1 ili eth2 ; ovisno o rednom broju te kartice u kompjuteru“- Prikaz svih sučelja:

o „ip link sh“- Sučelje je aktivirano kada sadrži zastavicu <up>- Aktiviranje sučelja:

o „ip link set dev <sučelje> up“- Deaktiviranje sučelja:

o „ip link set dev <sučelje> down“- Pregled IP adresa sučelja:

8

Page 9: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

o „ip addr sh“- Za postavljanje IP adrese i subnet maske:

o „ip addr add <adresa>/<maska> dev <sučelje>“- Za brisanje IP adrese i subnet maske:

o „ip addr del <adresa>/<maska> dev <sučelje>“- Učitavanje HR tipkovnice:

o „loadkeys croat“- Aktiviranje mrežnog snifera:

o „tcpdump –i <sučelje>“- Pauziranje procesa:

o „Ctrl+Z“- Ubijanje procesa:

o „Ctrl+C“- Pregled pinganih IP i ethernet adresa:

o „arp“- Prikazuje IP adresu sa tcpdump-om:

o „tcpdump –i <sučelje> -n“

Ethernet lokalne mreže- Standardizacijom ethernet mreža bavi se IEEE pod oznakom 802.3 ( IEEE 802.3 )- Podatkovni sloj dijelimo na:

o LLC ( Logical Link Control )o MAC ( Media Access Control )

- Koriste se bakreni vodiči CAT5e ili CAT6 standarda- Ethernet mreža koristi 48-bitni broj za adresu- xx:xx:xx:xx:xx:xx npr. 00:0c:f1:ae:ba:4c- IEEE određuje privh 24 bita

Broadcast ethernet adresa:

- „ff:ff:ff:ff:ff:ff“

Multicast ethernet adresa:

- „_ _ _ _ _ _ _ 1 : _ _ _ _ _ _ _ _ : _ _ _ _ _ _ _ _ : _ _ _ _ _ _ _ _ : _ _ _ _ _ _ _ _ : _ _ _ _ _ _ _ _“

- Samo grupa računala prima poruku

Privatne adrese:

- „_ _ _ _ _ _ 1 _ : _ _ _ _ _ _ _ _ : _ _ _ _ _ _ _ _ : _ _ _ _ _ _ _ _ : _ _ _ _ _ _ _ _ : _ _ _ _ _ _ _ _“

CSMA/CD- Carrier Sense Multiple Access/Colision Detection

9

Page 10: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

- Pripada MAC podsloju

CSMA/CD je napredniji od ALOHA

Ponašanje CSMA/CD:1. Pogledaj da li netko več nešto šalje2. Ako ne, počni sa slanjem3. Ako dođe do kolizije, pričekaj neko slučajno vrijeme i ponovi postupak

Formati okvira ethernet mreža

DIX ethernet okvir

Preambula - služi za usklađivanje dva računala odnosno njihovih mrežnih kartica

TYPE - Služi za raspoznavanje paketa:

o 0x800 = IP paketo 0x806 = ARP

IEEE 802.3 ethernet okvir

Kako se IP adresa preslikava u ethernet adresu ?

- Koristi se ARP protokol

ARP protokol1. Svim računalima u mreži šalje se upit o IP adresi2. Računalo čija je to IP adresa odgovara samo računalu koje je poslalo taj upit3. Nakon primitka odgovora podatak se privremeno pohranjuje kako se idući put ne bi ponovno

slao upit na mrežu

ARP postupak

e = ethernet adresa ; ip = IP adresa

Mrežni sloj računala A želi poslati paket računalu D. Računalo A zna IP adresu od D, ali treba mu ethernet adresa od D

10

Page 11: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

1. Računalo A šalje ARP upit svima na mreži:a. Eth( BROADCAST, ae, ARPReq( aip, dip ) )

2. Računalo čija je to IP adresa šalje odgovor:a. Eth( ae, de, ARPResp( dip, aip ) )

Kako bi se smanjio broj slanja ARP paketa, rezultati ARP upita se memoriraju u „arp cache“.

3. U ARP tablicu računala A pohranjuju se sljedeći podaci:a. IP adresa b. Ethernet adresac. Vrijeme valjanosti

Postupak provjere prije slanja 1. Je li destinacija = BROADCAST tj. Je li =

a. BROADCAST te mrežeb. Globalni BROADCAST ( 255.255.255.255 )c. BROADCAST loopback sučelja

2. Je li destinacija = local IP tj. Je li =a. Destinacija = destinacijab. Destinacija = localhost ( 127.0.0.1 )

3. Je li destinacija u arp-cache-u4. Ako nije pošalji ARPReq

Ethernet mrežni uređaji

HubKorištenjem hub-a mreža je fizički zvijezda, ali logički je i dalje sabirnica.

Danas za povezivanje koristimo UTP kabel sa RJ45 konektorom.

U slučaju kvara mrežne kartice nekog računala hub može isključiti tu karticu.

Problemi korištenja hub-a- Još uvijek samo jedan može slati- Još uvijek svi mogu vidjeti sav promet- Još uvijek ograničenje velike mreže

Switch

Prednosti switch-a- Povezuje isključivo računala koja komuniciraju- Istovremeno može komunicirati više računala- Računalo može istovremeno slati i primati- Ostala računala ne vide komunikaciju

11

Page 12: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

Princip rada programa u switchuWhile(1){

čekaj na okvir();kada okvir stigne pogledaj od koga je i zapamti računalo + port:pogledaj za koga je;if(znaš za koga je){

pošalji samo njemu;}

else{pošalji svima osim pošiljaocu;}

Elementi u tablici vrijede sve dok ne isteknu ili sve dok računalo koje je upisano u tablicu ne pošalje poruku s drugoga porta.

Switch pamti ethernet adresu i port u tablici.

Petlja

- okviri počinju kružiti između switcheva i umnažati se

- Mreža postaje zagušena i neuporabljiva

Rješenje problema petlje = STP- Spanning Tree Protocol- Dio IEEE specifikacije koja definira ethernet- Imaju ga skuplji switchevi- Oni mogu upravljati portovima te tako izbjegavati petlje- Switchevi pomoču STP protokola uče gdje se nalaze drugi switchevi

12

Page 13: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

Podjela switch-eva

Virtual LAN ( VLAN )- Tehologija koja omogučava da se jedan LAN podijeli na više međusobno nezavisnih mreža- To se postiže modifikacijom ethernet okvira unutar kojeg se ubacuje oznaka VLAN-a kojemu

okvir pripada

Wire Speed- označava da preklopnik može preklapati bez zastoja pri punom opterečenju

Načini preklapanja- store and forward- cut through- fragment free- adaptive switching

Store and forward- prima cijeli paket- provjerava pogreške i odbacuje neispravne okvire- tek nakon provjere šalje cijeli okvir- okvir može doći jednom brzinom, a otići drugom

Cut through- prima prvih 6 okteta okvira ( odredišna adresa ( DA ) ) i odmah šalje okvir na odredišni port- ne provjerava pogreške- vrlo mala latencija ( ovo je dobra stvar )- smanjena pouzdanost- jednaka dolazna i odlazna brzina okvira

13

Page 14: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

Fragment free- prihvača prvih 64 okteta i provjerava pojavu pogreške ( kolizije ), te ako nema iste prospaja- ulaz i izlaz komuniciraju istom brzinom- relativno mala latencija- relativno velika pouzdanost

Adaptive switching- adaptivno prebacivanje između osnovnih načina ( 1 – 3 ), ovisno o broju pojave pogreške i

runtova ( fragmenata manjih od 64 okteta )

Stacking- mogučnost povezivanja više preklopnika koji se potom ponašaju kao jedan

Proslijeđivanje- kako povezati dva LAN-a na mrežnom sloju ?

o Uz pomoć uređaja koji se naziva usmjernik ( router )- Usmjernici su uglavnom računala koja sadrže minimalno dva mrežna sučelja ( kartice )

Funkcija usmjernika- Kada primi paket usmjernik mora odlučiti kamo će ga poslati- Cilj je da paket stigne na odredište

Tablica proslijeđivanja- Služi usmjerniku da odabere dobru rutu za neki paket- Ona određuje sudbinu paketa- U pravim usmjernicima tablice prosljeđivanja su vrlo složene strukture

14

Page 15: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

Karakteristike tablice proslijeđivanja- Svaki redak naziva se ruta- Svaka ruta opisuje nekakvu mrežu tj. Način kako se dolazi do određene mreže

Idući čvor ( next hop )- Ako je polje prazno tada je mreža direktno spojena na usmjernik- Ako polje nije prazno paket se proslijeđuje na navedenu IP adresu

Postupak pretraživanja1. Uzmi odredišnu IP adresu2. Poredaj sve rute po opadajućoj duljini mrežne maske3. Za svaku rutu

a. Uzmi broj bitova u mrežib. Usporedi toliko bitova iz odredišne adrese i odredišne maskec. Stani kada se vrijednosti poklapaju

Defaultna ruta- 0/0 ili 0.0.0.0/0 ili default je posebna ruta koja se uvjek poklapa- Provjerava se zadnja jer ima najkracu mrežnu masku

I obična računala koriste tablice proslijeđivanja. Te tablice su jako male, svega nekoliko zapisa: lokalna mreža, defaultna ruta i loopback ruta.

Podešavanje tablice prosljeđivanja u virtualnim mašinamaBridge = 0

NAT = 8

Host only = 1

- ispisuje tablicu prosljeđivanja:o „ip route sh“

- Dodaje defaultnu rutu u tablicu:o „ip route add default via <ip>“

- Dodaje rutu u tablicu za lokalne mreže:o „ip route add <ip>/<maska> dev <sučelje>“

15

Page 16: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

- Dodaje rutu u tablicu za nelokalnu mrežu preko drugoga rutera:o „ip route add <ip>/<maska> via <ip>“

- Brisanje svih ruta iz tablice:o „ip route flush“

Naredbe za provjeravanje pogreški- „ping“- „traceroute“- „tcpdump“

ICMP- Internet Control Message Protocol- Upravljački protokol mrežnog sloja interneta- Definira poruke koje nose upravljačke informacije- Nema adresiranja- Namjena mu je prijenos informacija o stanju mreže- Prenosi se unutar IP paketa- Tip ICMP poruke razlikuje se prema polju Type- Svaki Tip ima svoj Podtip u polju Code

Echo i Echo reply- Koristi se za ispitivanje ispravnosti mreže ( ping )

Naredba ping- Šalje se poruka Echo s upisanim vremenom slanja- Odrediste odgovara s porukom Echo Reply- Ping ispisuje podatke o pristigloj poruci

Zapisivanje poruke Echo- IP ( izvorište ( SA ) , odredište ( DA ), ICMP( Echo, slijedni broj ) )

Zapisivanje poruke Echo Reply- IP ( izvorište ( SA ), odredište ( DA ) , ICMP( EchoReply, slijedni broj ) )

Istek vremenskog ograničenja ( TTL )- Obavijest o isteku vremenskog ograničenja se javlja kada:

o Polje TTL IP paketa je doseglo nuluo Fragment IP paketa nije pristigao u zadanom roku

Korištenje u naredbi „traceroute“- Pošalje se IP paket s TTL=1

o Prvi usmjernik odgovara s ICMP porukom isteka vremenskog ograničenja

16

Page 17: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

o „time exceeded in transit“- Pošalje se IP paket s TTL=2

o Drugi usmjernik odgovara s ICMP porukom isteka vremenskog ograničenjao „time exceeded in transit“

- Itd ...

Zapis paketa- IP ( izvorište ( SA ) , odredište ( DA ) , ICMP ( TimeExceeded() ) )

Modificiranje IP paketa od strane rutera ( usmjernika )1. Usmjernik primi poruku2. Prije nego pogleda u tablicu prosljeđivanja, umanji TTL u IP paketu za jedan3. Pogleda koji je TTL upisan u IP paketu4. Ako je TTL=0 odbaci paket, inače pogleda u tablicu prosljeđivanja

Naredba za dobivanje IP adrese servera ( Windows )- „nslookup –type=A <url>“- Npr. „nslookup –type=A www.google.com“

Mjesto u linuxu za podešavanje DNS servera- „/etc/resolv.conf“

Editori za linux- Pico- Joe- Nano- Vi

SNAT- Source Network Address Translation- Za SNAT je zadužen firewall

Naredba- „iptables –t nat –A POSTROUTING –o <sučelje> -d ! <ip/maska> -s ! <ip> -j SNAT –to <ip>“

FIREWALL ( Sigurnosni zaštitni uređaj )- Sigurnost se kontrolira politikom ( security policy )- Na mrežnom sloju sigurnosna politika se provodi sigurnosnim zaštitnim uređajem ( firewall )

Podjela firewall uređaja- Bez stanja ( stateless )

o Odluka za svaki paket se donosi bez obzira na sve prethodne pakete koji su prošli kroz firewall

- S čuvanjem stanja ( stateful )

17

Page 18: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

o Odluka za svaki paket može koristiti informacije o paketima koji su prije prošli ( firewall mora čuvati informacije )

Primjeri arhitektura

- Jednostavna arhitektura- 1 firewall

- Složena arhitektura- Sa demilitiziranom zonom- 1 firewall

18

Page 19: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

Ideja firewall-a je da se svaki paket koji prođe kroz usmjernik podvrgne ispitivanju.

Na osnovu podataka u IP paketu određuje se:

- Da li će ga odbaciti ( DROP )- Da li će ga prihvatiti ( ACCEPT )- Da li će napraviti neku promjenu na njemu

Skica firewall-a

Naredbe u linuxu za firewall- Ispisuje sadržaj svih lanaca:

o „iptables –L“- Odbacuje svaki paket koji prolazi kroz usmjernik i ima izvorišnu adresu <ip>:

o „iptables –A FORWARD –s <ip> -j DROP“- Briše prethodnu naredbu:

o „iptables –D FORWARD –s <ip> -j DROP“- Svi paketi koji su stigli s eth0 sučelja i prolaze kroz usmjernik se drop-aju:

o „iptables –A FORWARD –i eth0 –j DROP“- Svi paketi koji odlaze sa eth0 sučelja se drop-aju:

o „iptables –A FORWARD –o eth0 –j DROP“- Odbacuje svaki paket koji prolazi kroz usmjernik i sadrži u sebi protokol ICMP:

o „iptables –A FORWARD –p icmp –j DROP“- Odbacuje svaki paket koji prolazi kroz usmjernik i sadrži u sebi ICMP Echo-request:

o „iptables –A FORWARD –p icmp --icmp-type echo-request –j DROP“- Brisanje svih naredbi:

o „iptables –F“- Brisanje pojedinog lanca u ovom slučaju INPUT lanca:

o „iptables –F INPUT“- Ispis svih NAT tablica:

o „iptables –t nat –L“

Podsjetnik:- „-A“ = append- „-D“ = delete- „-i“ = input interface

19

Page 20: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

- „-o“ = output interface- „-p“ = protocol- „—icmp-type“ = određeni tip ICMP-a- „-P“ = policy ( defaultna politika )- „-m“ = učitavanje modula za detaljnije ispitivanje

Moguće akcije:- ACCEPT- DROP- LOG

Tablice u lancimaFILTER – služi za filtriranje paketa

MANGLE – služi za modificiranje paketa

NAT – služi za promjenu adresa u IP paketima ( Network Address Translation )

Prijenosni slojPrijenosni protokoli prenose podatke između krajeva ( end-to-end ). Izolira korisnike od specifičnosti računalnih mreža. Koriste se portovi od 0 do 65535. Operacijski sustav aplikaciji uvijek daje zadnji korišteni port uvećan za 1. Ne reciklira portove.

Podjela prijenosnog sloja

UDP ( User Datagram Protocol )

PonavljanjeMREŽNI SLOJ

- Brine se o prijenosu paketa između različitih mreža

PODATKOVNI SLOJ

- Brine se o prijenosu okvira između dva direktno spojena uređaja

FIZIČKI SLOJ

- Brine se o prijenosu pojedinih bitova između dva direktno spojena uređaja

20

Page 21: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

UDP okvirSvaki UDP paket je samostalna jedinica.

Primjeri upotrebe UDP-a- Kada nije bitno da li će koji paket biti izgubljen ( Audio i video toleriraju gubitke )- Kada se šalje istovremeno do više aplikacija ( difuzija u grupi )- Kada na poslužitelju želimo imati što manje podataka o pojedinim konekcijama

Mrežne usluge se općenito koriste putem socket API-ja

SOCKET- Je standardizirano sučelje na nivou operacijskog sustava

TCP ( Transmission Control Protocol )

Alternating Bit Protocol ( ABP )- Ako je primljen neispravan paket šalje se NACK# ( Negative acknowledgment )- Ako je primljen ispravan paket šalje se ACK# ( Positive acknowledgment )- # = redni broj ( 0 ili 1 )

21

Page 22: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

Glavni problem Alternating Bit ProtokolaNEEFIKASNOST – veća je što je veći umnožak kašnjenja i brzina veze

Rješenje problemaSlanje više paketa bez potvrde

Postoje dvije varijante protokola:

- Protokol s vraćanjem ( go back N )- Protokol sa selektivnim vraćanjem ( selective repeat )

Natuknice:- Za svaki paket očekujemo potvrdu. - Potvrda potvrđuje primitak svih paketa do iskljucivo toga broja. - Obavezno uvođenje vremenskog ograničenja.- Ako potvrda ne stigne nanovo poslati paket.

Funkcije / razredi u javi za TCPPogledati sljedeće datoteke tcpclient.java i tcpserver.java.

Datoteke se pokreću iz komandne linije s sintaksom:

„java –cp . tcpclient <ip od poslužitelja> <port od poslužitelja>“ – za pokretanje klijenta

„java –cp . tcpserver <port koji zelimo koristiti>“ – za pokretanje servera

POSLUŽITELJServerSocket – TCP pristupna točka poslužitelja koju vežemo na zadani port ( bind ) i koja je pasivna

.bind() – metoda koja povezuju pristupnu točku na zadani port

.accept() – provodi 3-way hand-shake ( uspostavu TCP spoja ) i vraća novu pristupnu točku kroz koju se može komunicirati s klijentom

KLIJENTSocket – općenita pristupna točka za TCP

.connnect() – metoda kojom klijent traži uspostavu spoja ( započinje i provodi postupak 3-way hand-shake )

.close() – metoda za zatvaranje pristupne točke

.getInputStream() – vraća „kraj za čitanje“ pristiglih podataka

.getOutputStream() – vraća „kraj za pisanje“ podataka

DataInputStream i DataOutputStream su pomoćni razredi za čitanje, pisanje kompleksnih tipova podataka ( stringovi, brojevi ... )

.flush() – šalje podatke iz spremnika za slanje na drugu stranu

22

Page 23: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

Skica TCP implementacije

Uspostava TCP spoja ( 3-way hand-shake )

ISN = Initial Sequence Number

MSS = Maximum size segment

TCP numerira prenesene oktete, a ne poruke. Redni broj poruke ACK potvrđuje sve što je poslano s rednim brojem manjim od toga.

23

Page 24: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

Tok TCP komunikacije između poslužitelja i klijenta

Raskid TCP spoja

24

Page 25: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

Raskid spoja može inicirati bilo koja strana. Zastavica FIN oznaćava zahtjev za raskidom spoja. Spoj se može raskinuti na dva načina:

- Poluzatvorena veza- Zatvorena veza

Vezu se može zatvoriti na tri načina:

- U 4 latencije:o Klijent pošalje zahtjev za raskidom spoja, poslužitelj prihvati zahtjev tj. Pošalje ACK.

Zatim poslužitelj pošalje zahtjev za raskidom spoja, što klijent prihvati tj. Pošalje ACK.- U 3 latencije:

o Klijent pošalje zahtjev za raskidom spoja, poslužitelj prihvati zahtjev tj. Pošalje ACK i u istoj poruci pošalje FIN. Zatim klijent prihvača FIN te šalje potvrdan odgovor ACK.

- U 2 latencije:o U isto vrijeme i klijent i poslužitelj pošalju poruku sa zastavicom FIN. Oboje prime

poruke prihvate ih te pošalju ACK-ove

HTTP ( Hypet Text Transfer Protocol )- Koristi se za prijenos web stranica- Koristi TCP ili UDP- Za njega je rezerviran port :80- Spada u aplikacijski sloj- Definiran je 80-tih godina

Karakteristike HTTP-a- HTTP je jednostavan upit/odgovor ( request/response ) protokol. (Klijent se spaja na

poslužitelja, predaje zahtjev i prihvaća odgovor )- HTTP je protokol bez stanja ( Poslužitelj smatra sve pristupe različitim i međusobno

nepovezanim )

Primjer jednostavnog HTTP zahtjeva za osnovnom stranicomGET / HTTP/1.1

GET = metoda

KRAJ zahtjeva označava se praznom linijom.

Koristi se verzija 1.1 HTTP-a, osim nje koristi se i 1.0

Dodatni atributi koji se mogu pojaviti u zahtjevuAccept = klijent može reći koje vrste datoteke želi

Accept: text/plain; q=0.5 , text/html

25

Page 26: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

Text/x-dvi; q=0.8 , text/x-c

Accept-Charset = prihvatljivi kodni raspored

Accept-Language = prihvatljivi jezici

Connection = da li se veza zatvara nakon odgovora

Referer = URL s kojega klijent pristupa

User-Agent = korisnikov agent ( PR )

PROXYProxy je HTTP poslužitelj koji prihvaća zahtjev od klijenta i šalje ga „pravom“ poslužitelju.

Razlozi upotrebe- Pohranjuje često tražene stranice pa može smanjiti opterećenje web poslužitelja- Mogu se uvesti kontrole pristupa pojedinim stranicama koje firewall ne može ostvariti- Može filtrirati sadržaj stranica

DNS ( Domain Name Server )- Pretvara imena računala u IP adrese- Koristi UDP :53 za slanje informacija

Kako bismo saznali nečiju IP adresu koristiti čemo naredbu „nslookup“. Primjer. Da bi saznali IP adresu od VERN-a trebamo izvršiti sljedeću naredbu: „nslookup www.vern.hr“. Ta naredba za nas šalje upit DNS poslužitelju i ispisuje primljeni odgovor.

- DNS također omogučava pretvaranje IP adrese u ime

No to uvijek ne radi, ovisno o tome da li je administrator podesio DNS poslužitelj.

- Jedna IP adresa može imati više imena, također jedno ime može imati više IP adresa. Razlog tome je postizanje visoke raspoloživosti

Organizacija DNS-aPrije DNS-a na jednom mjestu na Internetu postojala je datoteka sa svim parovima IP adresa/ ime računala.

- Za svako novo računalo trebalo je čekati osvježavanje datoteke- Veliko opterečenje na poslužitelju koji je posluživao datoteku- Internet je u to vrijeme bio daleko manji u odnosu na današnje stanje

Odlučeno je kako DNS treba biti distribuiran i hijerarhijski.

DNS hijerarhija kreće od korijene domene ( root ). Unutar pojedine domene mogu se nalaziti poddomene ili računala. Puno ime računala dobivamo tako da isčitavamo odozdo prema gore. Za svaku domenu brine se jedan ili više poslužitelja.

26

Page 27: Mreze racunala - skripta

Skripta iz kolegija mreže računala 2010

I imena poslužitelja za pojedinu domenu smještena su u DNS poslužiteljima.

- Primjerice, kako bi saznali koji su DNS poslužitelji zaduženi za vern.hr domenu koristimo nslookup naredbu na sljedeći naćin: „nslookup –type=ns vern.hr“

Naredba nslookup pita lokalni DNS poslužitelj. Lokalni DNS poslužitelj iterativno traži odgovor. Odgovori se privremeno pohranjuju kako bi idući puta upit bio brži.

- 13 root DNS poslužitelja čuva podatke o top level domenama.

Postoje dva načina razrješavanja upita:

- Rekurzivno - prvi puta drugoga, zatim drugi pita trecega, zatim treci pita cetvrtoga .. i tako sve dok se ne dobije onaj pravi. Zatim odgovor od pravoga ide preko svih prethodnih, preko kojih se doslo do pravoga

- Iterativno - odbija rekurziju, ali šalje podatak tko zna više

27