mreze racunala - skripta
Post on 02-Apr-2015
108 Views
Preview:
TRANSCRIPT
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Skripta iz kolegija mreže računala 2010
Tok TCP komunikacije između poslužitelja i klijenta
Raskid TCP spoja
24
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
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
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
top related