Potaknut mnoštvom upita, problema i nepoznavanja osnovnih detalja vezanih uz računalne mreže odlučih se napisati ovaj tutorijal kako bi pokušao objasnio neke osnovne mrežne pojmove, način rada i kako riješiti neke probleme vezane uz mreže. Kako je ovo vrlo opsežna tema, pokušat ću je razraditi u nekoliko postova.
Pojmovi
Krenimo s nazivima i značenjima nekih osnovnih uređaja, protokola i servisa:
UTP – Unshielded twisted pair. Mrežni kabl koji omogućava spajanje računala u mrežu. Ima 4 para kablova, te omogućava 10, 100 i 1 Gb protok (bandwidth), ovisno o kategoriji kabla.
Patch kabel – tip UTP kabla koji spaja računala na usmjernik, preklopnik, koncentrator. O kategorijama ovisi propusnost (bandwidth). Kablovi postoje u dvije varijante TIA/EIA-568-A i TIA/EIA-568-B.
Crossover kabel – tip UTP kabla koji omogućava spajanje dva računala direktno bez korištenja dodatnih uređaja (preklopnika, usmjernika, koncentratora).
Bandwidth (protok) – označava propusnost mreže (količinu podataka koji se mogu prenijeti mrežom u sekundi. Standardni protok u lokalnim mrežama je izražen u 10 Mb, 100 Mb i 1 Gb (vrijednosti su izražene u bitovima).
IP adresa – skup brojeva (u osnovi binarnih, reprezentiranih u decimalnom sustavu) koji omogućavaju međusobno komuniciranje računala (detaljnije objašnjeno u nastavku). Primjer IP adrese je 213.202.123.6 (javna adresa - www.bug.hr) ili 192.168.1.1 (privatna adresa - lokalna mreža)
TCP/IP – Transmission Control Protocol/Internet Protocol – najrašireniji skup protokola koji se koristi za komunikaciju između mrežnih adaptera, preklopnika, usmjernika, koncentratora. Za komunikaciju se koristi 65535 portova (TCP i UDP). Više detalja o portovima vidite na http://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers
Mrežni adapter (NIC – Network Interface Card) – mrežna kartica u Vašem računalu.
Usmjernik (router) – uređaj koji spaja više računalnih mreža koje se nalaze u različitim subnetima (primjera, spaja lokalnu mrežu s internetom. Routeri imaju i dvije IP adrese koje omogućavaju preusmjeravanje prometa sa lokalne mreže ka internetu i obratno, primjer je lokalna IP adresa 192.168.1.1 i javna 78.243.14.2 koja je spojena na internet)
Preklopnik (switch) – uređaj koji omogućava spajanje dva ili više računala u zajedničku mrežu. Razlika između preklopnika i koncentratora (hub) je u tome što kada na preklopnik uključite računalo on zapamti na kojoj IP adresi je to računalo, te kada dobije upit za tu IP adresu preusmjerava ga na taj port (prema tom računalu).
Koncentrator (hub) – kao i preklopnik, omogućava spajanje dva ili više računala u zajedničku mrežu. Razlika je u tome što nije "pametan" kao preklopnik, nego upit za jedno računalo (IP adres) šalje na sve portove, te prepušta mrežnim adapterima odluku koji će odgovoriti na upit (onaj koji posjeduje IP adresu za koju je upit dat)
DNS (Domain Name System) – sistem je prevođenja IP adresa u ljudima razumljivije domenske nazive (primjera jednostavnije vam je u web preglednik upisati www.bug.hr nego 213.202.123.6, mada dobivate isti rezultat).
DHCP (Dinamyc Host Configuration Protocol) – sistem koji omogućava automatsko dodjeljivanje IP adresa pojedinim uređajima. Routeri kojima se spajate na internet je obično podešen DHCP, koji će prepoznati kada je Vaše računalo spojeno na router, te mu dodijeliti IP adresu u zadanom rasponu)
IP adresiranje
IP adresa standard koji omogućava računalima međusobnu komunikaciju (naravno, ako imate mrežnu karticu :-). Pokušat ću pojasniti na što jednostavniji način IP verziju 4 koja je još uvijek najraširenija.
Kako bi računala međusobno u LAN-u mogla komunicirati moraju imati zadane IP adrese koje se nalaze u istom subnetu. Što to znači?!
Pogledajte strukturu IP adrese u svojoj lokalnoj mreži, otvorite command promt Start > Run > cmd klik na OK, upišite komandu ipconfig /all. Dobiti će te nešto slično ovom primjeru:
C:\Documents and Settings\kajgod>ipconfig /all
Windows IP Configuration
Host Name . . . . . . . . . . . . : mojkompjutor
Primary Dns Suffix . . . . . . . :
Node Type . . . . . . . . . . . . : Unknown
IP Routing Enabled. . . . . . . . : No
WINS Proxy Enabled. . . . . . . . : No
Ethernet adapter Local Area Connection:
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Marvell Yukon 88E8056 PCI-E Gigabit Ether
net Controller
Physical Address. . . . . . . . . : 00-04-61-4E-6B-83
DHCP Enabled. . . . . . . . . . . : No
IP Address. . . . . . . . . . . . : 192.168.1.22
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.1.1
DNS Servers . . . . . . . . . . . : 192.168.1.1
NetBIOS over Tcpip. . . . . . . . : Disabled
Detalji na koje obratite pažnju su Vam IP Address, Subnet Mask, Default Gateway i DNS servers (podebljano u primjeru).
IP adresa označava jedinstvenu adresu (ne možete imati dvije identične adrese na istoj mreži) koja je zadana za mrežnu karticu. U ovom primjeru IP adresa je ručno zadana, ne koristi se DHCP server.
Subnet maska označava mrežni raspon u kojoj ta adresa djeluje. Dakle ovo računalo će moći po zadanom komunicirati sa svim računalima koje imaju adresu u rasponu od 192.168.1.1 do 192.168.1.254
Default Gateway označava adresu uređaja koji će usmjeriti upite (poziv za neke web stranice) ako se nalaze van Vaše mreže (na internetu, primjera). Default gateway u ovom primjeru je router koji se koristi za spajanje na internet.
DNS servers označava uređaj koji će prevesti upite za neku internet stranicu s domenskog u IP adresu koju koristi računalo za komunikaciju). Na DNS upite u ovom primjeru odgovara router koji se koristi za spajanje na internet.
Struktura IP adrese
Kako bi pojasnio funkcioniranje IP adresa moram uči malo detaljnije u tematiku strukture IP adrese. Ono što je nama prezentirano u decimalnom obliku kao IP adresa (primjer 192.168.1.10) računalo vidi u binarnom obliku (11000000.10101000.00000001.00001010). Ovakav oblik IP adrese je verzija 4, koja je 32-bitni oblik adrese - svaki dio IP adrese ima 8 bitova puta 4 je 32. Preračunati IP adresu iz decimalnog u binarni oblik možete koristeći kalkulator, ili vježbe radi - ručno. Dati ću Vam primjer kako najjednostavnije ručno prevesti IP adresu.
Primjer IP adrese 192.168.1.10
Za prijevod u binarni oblik korisiti ćemo slijedeću tablicu (svaki bit u 8 bitnom segmentu adrese ima određenu brojčanu vrijednost, ukupan zbroj vrijednosti je 255). Kako bi preveli decimalno 192 u binarno koristimo slijedeću logiku. Donja tablica predstavlja vrijednost svakog bita u oktetnom segmentu (8 bitova). Promatrajmo broj 192. On u sebi sadrži broj 128, dakle ispod 128 stavljamo vrijednost 1. Kada broju 192 oduzmemo 128, ostaje nam 64, dakle ispod 64 stavljamo 1. Time smo "potrošili" sve brojeve iz 192, te u ostalim dijelovima upisujemo 0. Preračunat nam je prvi dio IP adrese
128 64 32 16 8 4 2 1
-------------------------------------------
192 1 1 0 0 0 0 0 0
Ponovimo to s drugim dijelom - 168. U 168 imamo 128, stavljamo 1, preostaje nam 40. 64 je veće od 40, te stavljamo 0. 32 imamo u 40, te stavljamo 1. Ostaje nam 8. U 16 je veće od 8, stavljamo 0. 8 je jednako 8, te stavljamo 1. Broj smo podijelili, te pod ostale vrijednosti stavljamo 0. Preračunali smo drugi dio IP adrese.
128 64 32 16 8 4 2 1
-------------------------------------------
168 1 0 1 0 1 0 0 0
Isti princip koristimo za treći i četvrti dio koji prevedeno izgledaju ovako:
128 64 32 16 8 4 2 1
-------------------------------------------
1 0 0 0 0 0 0 0 1
10 0 0 0 0 1 0 1 0
Tako u konačnici dobivamo prevedenu IP adresu 192.168.1.10 u binarni oblik 11000000.10101000.00000001.00001010
Zašto je važno znati prevesti IP adresu iz decimalnog u binarni oblik?! Odgovor nam leži u subnet maski. Ona nam služi kako bi prikazala koji dio IP adrese predstavlja identifikaciju mreže, a koji dio identifikaciju hosta (pojedinog računala). Subnet maska iz datog primjera je 255.255.255.0. Ona je doslovno što i riječ znači MASKA, dakle maskira dio IP adrese određen za mrežu, i ostavlja dio zadan za raspodjelu računalima. Binarno ta maska izgleda ovako 11111111.11111111.11111111.00000000 što znači da su prva tri okteta prikaz identifikacije mreže (192.168.1) a zadnji reprezentira raspon u kojem se dodjeljuju IP adrese pojedinim računalima 1-254 (napomenuti ću samo ukratko da prvi 0 i posljednji 255 brojevi ne mogu biti dodijeljeni pojedinim računalima - 0 predstavlja adresu mreže, 255 predstavlja broadcast adresu).
Dakle, kako bi nam računalo ispravno videjlo druga računala, sva moraju imati zadanu jedinstvenu adresu mreže, te svako mora imati zasebnu adresu hosta.
U praksi to izgleda ovako:
Želimo spojiti putem koncentratora dva računala, prvo ih fizički spajamo, zatim im dodjeljujemo IP adrese po primjeru:
Prvo računalo
IP adresa: 192.168.1.10
subnet maska: 255.255.255.0
Drugo računalo
IP adresa: 192.168.1.11
Subnet maska 255.255.255.0
Ovo nam, ponovimo, govori da su oba računala u istoj mreži (identificiranoj subnet maskom) 192.168.1.z, te da svako računalo ima svoju zasebnu IP adresu (prvo w.x.y.10, drugo w.x.y.11)
Ako su nam oba računala spojena na router koji nas povezuje na internet, potrebno je dodatno na oba računala zadati IP adresu default gatewaya, te adresu DNS servera. Kao što je već u prvom dijelu napomenuto, default gateway omogućava računalima da znaju u kojem pravcu poslati mrežni paket ako se nalazi na drugoj mreži, dok nam DNS server služi za prevođenje IP adresa u kvalificirane domenske nazive - 213.202.123.6 je prevedeno www.bug.hr
Klase IP adresa
EDIT: stavit ću naknadno
Alati za dijagnostiku rada mreža
Osnovni alati za dijagnostiku rada mreža su (navesti ću samo par najosnovnijih za početak) ipconfig, ping, nslookup. Svi ovi alati se pokreću u command promtu OS-a (naravno, cijelo vrijeme pričamo o windowsima, mada su razlike u linux i unixima minorne)
ipconfig nam služi za uvid u osnovnu konfiguraciju mreže na računalu. ako upišete ipconfig /? u promt dobit će te ispis svih switcheva koje možete korisiti u kombinaciji s ovom komandom.
ping nam služi za provjeru funkcionalnosti mreža (šalje echo request na određenu IP adresu kako bi provjerio njenu dostupnost). Koristi se za provjeru funkcionalnosti mrežnog adaptera. U kratko ping šaljete na IP adresu nekog drugog računala, preklopnika kako bi provjerili imate li komunikaciju s tim uređajem, šaljete ga na IP adresu računala na kojem testirate, kako bi provjerili radi li vam TCP/IP ispravno, te na adresu localhosta (127.0.0.1) kako bi provjerili radi li Vam mrežna kartica.
nslookup alat nam služi kako bi vidjeli koja IP adresa se nalazi iza nekog domenskog naziva (pokušajte napraviti slijedeće: u promtu upišete nslookup www.google.hr - dobiti će te ispis IP adresa koje koristi google za zadanu domenu).