You are on page 1of 43

TCP/IP - 1 ra alatt

Petrnyi Jzsef

2010 Petrnyi Jzsef


1.1 verzi, els kiads
Minden jog fenntartva.
A knyv rsa sorn a szerz s a kiad a legnagyobb gondossggal s
krltekintssel igyekeztek eljrni. Ennek ellenre elfordulhat, hogy nmely
informci nem pontos vagy teljes, esetleg elavultt vlt.
Az algoritmusokat s mdszereket mindenki csak sajt felelssgre alkalmazza.
Felhasznls eltt prblja ki s dntse el sajt maga, hogy megfelel-e a cljainak. A
knyvben foglalt informcik felhasznlsbl fakad esetleges krokrt sem a
szerz, sem a kiad nem vonhat felelssgre.
A cgekkel, termkekkel, honlapokkal kapcsolatos listk, hibk s pldk kizrlag
oktatsi jelleggel kerlnek bemutatsra, kedvez vagy kedveztlen kvetkeztetsek
nlkl.
Az oldalakon elfordul mrka- valamint kereskedelmi vdjegyek bejegyzjk
tulajdonban llnak.

Microsoft Magyarorszg
2010

TARTALOMJEGYZK
1

Bevezets _________________________________________________________ 4

TCP/IP v4 _________________________________________________________ 5
2.1

Rtegek _______________________________________________________ 7

2.2

Hlzati eszkz (Network Interface) rteg ___________________________ 10

2.2.1

Ethernet II frame. ___________________________________________ 11

2.2.2

Address Resolution Protocol - MAC cmek keresse _______________ 13

2.3

Internet rteg __________________________________________________ 14

2.3.1

Routing ___________________________________________________ 16

2.3.2

Cmfordtsok (NAT, PAT) _____________________________________ 22

2.4

Szlltsi (Transport) rteg _______________________________________ 26

2.4.1

User Datagram Protocol (UDP) ________________________________ 26

2.4.2

Transmission Control Protocol (TCP) ___________________________ 27

2.5

Alkalmazs (Application) rteg ____________________________________ 28

2.5.1
2.6

Trkp az alkalmazs rteghez _______________________________ 29

Tzfalak ______________________________________________________ 30

TCP/IP v6 ________________________________________________________ 33

IPv4-IPv6 egyttmkds ___________________________________________ 39

Elbcszs _______________________________________________________ 42

TCP-IP 1 RA ALATT

1 B EVEZETS
Valamikor a Sams kiadnak voltak olyan knyvei, hogy 'Kupld ki magad ebben, meg
abban 24 ra alatt!'1. Belegondoltam, hogy ilyet n is tudok.
Mrmint nem rni, hanem ekkort hazudni egy cmben.
St.
Amit most vagy a kezedben tartasz, vagy a monitoron nzel, az egy kellen magasrl
ttekintett lersa a TCP/IP protokollcsaldnak, mely rst 1 ra alatt... el lehet
olvasni, ha kellen jrtas vagy a gyorsolvassban.
Hogy mi rtelme van ennek a kicsi knyvnek? Nzd, nemrg rtam egy ktktetes,
durvn 500 oldalas knyvet ugyanerrl a tmrl. Ha ezt a mostani knyvet
replgprl szemllt tjkphez hasonltom, akkor az a msik egy vadszvizslval fl
centirl vgigszaglszott eserd.
Csakhogy egyltaln nem biztos, hogy mr az els tallkozskor mindenki rgtn
annyi rszletre lesz kvncsi. Lehet, hogy elszr csak egy tfog kpet szeretne
kapni, a tbbi meg majd jjjn, ha mr kialakult valamifle kp.
Az szmukra rdott ez a rvid sszefoglal. Terjedelemben durvn egy tizede a
rszletes knyvnek - ennek ellenre a lnyeg benne van. Ha nullrl indulsz, az elv
megrtst megclozva, akkor ez a te knyved.

A nagy testvr, a TCP/IP Alapok cm ktktetes knyv elrhetsge:


http://mivanvelem.hu/letoltheto-konyvek/

Sams Teach Yourself Atomphysics in 24 Hours

~4~

TCP/IP V4

2 TCP/IP

V4

Hatalmas jdonsgot fogok kzlni: a TCP/IP rtegekbl ll.


Leltl? Ja, mr eddig is ltl? Hja, ez egy ilyen sokat csrgs szakma.
A rtegmodellnek ugyanis rengeteg elnye van. Egyik oldalrl elg a rteghatron
egyeztetni az tadott paramtereket - s nem kell foglalkozni azzal, hogy mi is zajlik
az egyes rtegeken bell. Msik oldalrl rengeteg rtegen belli eljrst lehet
definilni, arra kell csak figyelni, hogy a rteghatrra mindegyik a megfelel
paramtert adja ki.
gy pl fel a TCP/IP: kismilli szabvny, protokoll, melyek elrjk mind a bels, mind
a rtegek kztti folyamatokat.
Azt rtam, szabvny. Az informatikban a szabvnyt RFC-nek hvjk. Ez els blikkre
fura lehet, mivel az RFC eredetileg azt jelenti, hogy Request For Comment. Ha
szszerint fordtjuk, akkor lehetne ajnlsnak, vlemnykrsnek is fordtani - de ez a
mi szintnkn mr kb annyira vlemnykrs csak, mint amikor a felesg
megkrdezi a frjt, hogy kvrnek tartja-e? Csak egy vlasz ltezik.
Rgztett folyamatokban - pl. ITIL - az RFC annyit tesz, hogy szeretnnk formba
nteni egy rszfolyamatot, egy mdszert. Ezt lerjuk s megkpkdtetjk az
rintettekkel. Ezt hvjk vlemnykrsnek. Ha mindenki elmondta a vlemnyt, az
eredeti dokumentumokon tvezettk a mdostsokat, akkor ll ssze a szabvny melyet az IETF-nl ugyangy neveznek, mint a vlemnykr iratot, az RFC-t. Csak
ppen ekkor mr ktelez rvny. (Vannak kivtelek, s igazbl ez az egsz
messze nem ilyen egyszer, de egyelre bven elg ennyi absztrakci.)
IETF: Internet Engineering Task Force. Ez a trsasg gondozza mind az
internet, mind az internethez kthet rendszerek szabvnyait.
IANA: Internet Assigned Numbers Authority. k a felelsek mindenrt, ami
szm alak s az internettel kapcsolatos.
A knyvben rengeteg RFC-re fogunk hivatkozni. Ez a csontvza a kommunikcinak
az informatikban. Minden, hangslyozom, minden erre pl - eltekintve az abszolt
egyedi, nem szabvnyos alkalmazsoktl. Az egyes cgek fejleszti az RFC-k alapjn
fejlesztenek. (Nem ritka az sem, hogy egy cg a sajt mdszereibl fogadtat el RFC-t.)
Az RFC-k garantljk, hogy klnbz cgek fejlesztsei kpesek legyenek
kommuniklni egymssal.

~5~

TCP-IP 1 RA ALATT
J hr, hogy az RFC-k publikusak. Mg jobb hr, hogy rengeteg helyen megtallhatk a
neten. Kevsb j hr, hogy viszonylag kevs bennk a humoros jelenet.
Meglehetsen szraz anyagok, na. De ez az egyrtelmsg miatt muszj is.
A teljessg szndka nlkl nhny link:
http://en.wikipedia.org/wiki/Request_for_Comments
http://www.ietf.org/
http://www.faqs.org/rfcs/
http://www.rfc-editor.org/rfc.html

Mivel a knyv elssorban zemeltetknek kszl, gy nem fogunk lesni az RFC-k


legmlyre. De nem is hagyhatjuk figyelmen kvl azokat. Tbb ponton is
belefuthatunk olyan szitucikba, amikor j lenne rtennk, mi is ramlik ppen
keresztl a drton.
Pldul nem akarunk engedni minden HTTP forgalmat a tzfalon. J lenne
tudni ilyenkor, hogyan, milyen jellegzetessgnl lehetne megfogni a
forgalmat. Mit jelentenek a grafikus felleteken az egyes lehetsgek?
De hasonlan fontos az is, hogy ne idegenkedjnk a hlzati forgalom
elemzstl. Ne csak bottal merjk megpiszklni a netmont, hanem rtsk is,
amit mutat.
Klnsen knyvrs kzben, amikor az ember prbl elmlyedni a
rszletekben s tbb forrsmunkt is tolvas, ilyenkor lehet rdbbenni, hogy
akinek kt rja van, az sohasem tudja, mennyi a pontos id. Nem ritka, hogy
az egyes forrsok teljesen ellenkez tnyeket lltanak, vagy egyszeren csak
igyekeznek homlyosan fogalmazni. Ilyenkor kln rm az, hogy az sforrs
elrhet a neten - az RFC-knl egyrtelmbb megfogalmazst sehol nem
tallunk.

~6~

TCP/IP V4
2.1 R T EGEK
In medias res. Azaz bele a rs kzepbe.

2.1.

BRA

R TEGEK

M ICROSOFT TCP/IP

MEGVALSTSBAN

A bal oldali oszlop az n OSI modell rtegeit mutatja. Ezzel most tl sok dolgunk nem
lesz. Koncentrljunk inkbb a mellette lv TCP/IP architektrra. Szpen lthatjuk
az egymsra pl ngy rteget, illetve jobbra mellettk azt, hogy az egyes
rtegekben pldul milyen protokollok dolgoznak. (A vlasztk messze nem teljes.)
Nevezzk nevkn is az egyes rtegeket:
NETWORK INTERFACE RTEG: Ez van a legkzelebb a kbor elektronokhoz. Ebben a
rtegben trtnik meg az egyes csomagok tnyleges elszlltsa a feladtl a
cmzettekig. Az brn is lthat, hogy itt elssorban a hlzat hardveres
megvalstshoz ktd szabvnyokat talljuk.
INTERNET, VAGY IP RTEG: A cmzs a bortkon. Ebben a rtegben kap cmet mind a
felad, mind a cmzett. Ez a rteg felels azrt, hogy a csomag tudja, merre kell
mennie, amg clba nem jut.
TRANSPORT RTEG: Ez a rteg kapja meg az elszlltand adatokat s lltja ssze
bellk a csomagokat.
ALKALMAZS RTEG: Ez egy meglehetsen bonyolult rteg. Itt mindazon szabvnyokat
talljuk meg, melyek az egyes konkrt alkalmazsokbl illetve alkalmazsokba
rkez adatfolyamok elfeldolgozshoz szksgesek.

~7~

TCP-IP 1 RA ALATT
Most egy kicsit zavaros rsz kvetkezik, de igyekszem rthet lenni.
Doboz.
Az informcik a hlzaton dobozszersgekben utaznak. rtem ezalatt azt, hogy az
egysgeknek ltalban van alja, teteje - s van tartalma.

2.2.

BRA

LTALNOS

CSOMAGOLSI SMA

A header az a bitkupac, ahol a csomagra vonatkoz informcik utaznak.


A payload az a szlltott tartalom.
A trailer pedig a csomag vgt jelz bitsorozat.

FRAME, AVAGY KERET: A Network Interface rtegre jellemz. Azrt hvjk keretnek,
mert mindkt oldalrl le van hatrolva, azaz tnylegesen is van neki fejlce s
lezrsa.
DATAGRAM, AVAGY DOBOZ: Az Internet rtegre jellemz, de elfordul a Transport
rtegben is. Nincs lezrsa, ehelyett a fejlc tartalmazza a csomag hosszt.
Fontos jellegzetessg, hogy kompakt informcit szllt, azaz a tartalom
magban is rtelmezhet.
SEGMENT, AVAGY SZEGMENS: A Transport rtegre jellemz. Formailag ugyanaz,
mint a datagram, de az ltala szlltott informci nem kompakt. Kpzeljnk
el egy hossz adatfolyamot, melyet felszeleteltnk s a darabokat raktuk bele
egy-egy csomagba. A csomag tartalma darabonknt nem rtelmezhet. csak
ha jbl sszerakjuk a teljes folyamot.

Lthat, hogy markns klnbsgek vannak az egyes tipusok kztt. Csakhogy ez


nem mindig lnyeges. Van amikor csak egy entitsrl beszlnk, melyet tovbbtani
kell - s ilyenkor a tovbbts mdja a lnyeges, nem az entits felptse. Ekkor
egyszeren csak csomagnak (packet) nevezzk ezt a bigyt.

~8~

TCP/IP V4
Nagyon fontos megrteni, hogy a csomagok egymsba vannak csomagolva.

2.3.

BRA

C SOMAGOK

HTN CSOMAG OK

Ezen menjnk most vgig. A Transport rtegben keletkezik egy csomag, egy TCP
szegmens. Ennek van fejlce (TCP header) s tartalma (segment, azaz adatfolyamdarab). Ez a csomag kerl t az Internet rtegbe, ahol , azaz a teljes Transport
csomag lesz az IP datagram tartalma. Az Internet rteg hozzteszi a sajt fejlct,
majd az gy keletkez datagramot passzolja le a Network Interface rtegnek. A sma
ugyanaz, a Network Interface keret tartalma a teljes IP datagram lesz, ennek az
elejre jn a Network Interface fejlc, illetve a keretet fizikailag is lezr trailer.
Amikor ez az egsz megrkezik a cmzetthez, az egyes szintek fejlcei alapjn
kdolja vissza az zenetet s rtelmezi a legvgl kapott adatszegmenst.
A kompaktsg rtelemszeren csak rtegszinten rtend. Azaz ha nzek egy
TCP szegmenst, akkor az abban lv payload az egy adatfolyam rsze,
nmagban nem rtelmezhet, nem kompakt. Ellenben ha megnzem azt az
IP datagramot, amelyikbe az elz TCP szegmenst csomagoltam, akkor ez mr
kompakt lesz, hiszen egy jl megfoghat dolog van benne, a TCP szegmens.
Nem megynk bele, hogy a TCP szegmens odabent nem kompakt.

~9~

TCP-IP 1 RA ALATT
2.2 H LZATI

ESZKZ

(N ET WORK I NT ERFACE )

RT EG

Mint rtam, ebben a rtegben elssorban hardver megoldsokkal tallkozunk.


Teljesen ms elven szlltja a csomagokat pldul egy Ethernet vagy egy Token-Ring,
neadjisten FDDI hlzat. rtheten teljesen msok a hlzatok karakterisztiki is.
Ez egy szp nagy dzsungel. Jelen bevezetnek nem is clja ezt feltrkpezni.
Foglalkozzunk most csak az Ethernet hlzatokkal.
Ha azt hiszed, ezzel egybl ki is jttnk a dzsungelbl, tvedsz. Ethernetbl is van
sokfajta keret.
Vgjunk rendet.
Az Ethernet egy csomagtovbbtsi technika, mely az n. Carrier Sense Multiple
Access with Collision Detection, azaz CSMA/CD elven alapul.
Elmagyarzom. A fizikai hordoz kzegen (csavart rpr, veg) egyszerre csak egy
csomag tekerhet. Ha a felad kldeni akar, akkor belekiabl a csbe, hogy res--e?
Ha igen, akkor kld. Ha nem, akkor vr. Ha ketten kiablnak bele egyszerre, akkor
mindketten vrnak.
Maga a kldtt csomag - illetve nevezzk most mr nevn - az Ethernet keret tbbfle
lehet. Ez elssorban ott jelenik meg, hogy pontosan mi is kerl az egyes fejlcekbe,
mi kerl a payloadba, illetve a trailerbe - azaz milyen struktrba csomagoljuk az
informcit.
Megint nem fogok elveszni a rszletekben, itt pldaknt csak a legelterjedtebbel, az
Ethernet II szabvnnyal fogunk foglalkozni. (Futottak mg az Ethernet 802.3, illetve
Ethernet SNAP.) Annyit azrt jegyezznk meg, hogy ezeket nem lehet keverni. Az
Ethernet II hlzati krtya nem fog tudni mit kezdeni az Ethernet 802.3 kerettel hiszen csak egy struktrt ismer, az rkez keret meg msikat hasznl.

~ 10 ~

TCP/IP V4
2.2.1 E TH E RN ET II

F R AM E .

RFC 894

2.4.

BRA

E THERNET II

KERET

PREAMBLE: Egy bitsorozat, mely jelzi, hogy itt indul a keret. A network monitoroz
eszkzk nem mutatjk.
DESTINATION ADDRESS: A cmzett cme.
SOURCE ADDRESS: A felad cme.
ETHERTYPE: A payloadra vonatkoz azonost kd.
0x0800 - IP datagram
0x0806 - ARP csomag.
PAYLOAD: Maga a szlltott teher. A mrete alulrl is, fellrl is limitlt: minimum 46,
maximum 1500 bjt. Ez utbbi rtket nevezik egybknt MTU-nak, Maximum
Transmission Unit-nak is. (A mrete rtelemszeren a keret kialaktstl fgg. Ms
kerettpusnl ms az rtk is.)
Amennyiben a feladott payload mrete nem rn el a 46 bjtot, akkor kiptoljk. (A
minimlis mret elrsnak oka a megbzhat tkzsdetektls.)
FRAME CHECK SEQUENCE: Ellenrz kd. A keretet, mint bitsorozatot (minusz FCS mez)
elosztjk egy 33 bites prmszmmal, s maga a 32 bites maradk lesz a 4 bjtos FCS
rtk. A felad berakja az rtket, a cmzett pedig elvgzi ugyanezt a mveletet - s
amennyiben a kapott eredmny nem egyezik az FCS mez rtkvel, akkor eldobja a
keretet.
A network monitoroz eszkzk ezt a mezt sem mutatjk.

~ 11 ~

TCP-IP 1 RA ALATT

2.5.

BRA

E THERNET II

KERET MONITOROZVA

gy nz ki egy monitoroz eszkzzel (Wireshark) elkapott Ethernet II keret. Lthat,


nem hazudtam. Minden ott van a helyn. A keret fejlce ki lett bontva, a payload (IP
datagram, illetve az abba csomagolt TCP szegmens) most ppen nem.
Nem brom megllni, hogy ne rohanjak elre. Habr mg nem beszltnk ilyesmikrl,
de azrt folyosi pletyka szinten csak tudunk valamit mr az informatikbl.
Prbljunk meg mindent kiolvasni a fenti keretbl.
TRANSPORT RTEG: A forrs port 49987, ez tipikus kliens port. Nem tartozik a
wellknown portok kz. A cl port 110, ez bizony egy POP3-as krs. A seq s
a len egyarnt nulla, az ack alacsony, gy ez a kapcsolat els lpse. (Az n.
SYN lps.)
INTERNET RTEG: A felad IP cme 192.168.1.109, a cmzett 193.188.141.59.
NETWORK INTERFACE RTEG: A felad egy Austek hlzati krtya, a MAC cme:
00:1e:8c:ab:37:2e. A cmzett egy Cisco hlzati krtya, a MAC cme:
00:18:f8:f1:34:0a

~ 12 ~

TCP/IP V4
Vissza a hlzati rtegbe. Mik is ezek a MAC cmek?
Minden hlzati kommunikcira kpes eszkznek van egy azonostja. Ez az
azonost vilgszerte egyedi s bele van getve az eszkzbe. (Viszont a legtbbszr
elmaszkolhat.) A MAC cm - mint az brn (2.4. bra Ethernet II keret) is lthat, hat
bjtos.
Az els hrom bjt a gyrt azonostja. A msodik hrom bjt pedig a gyrtn bell
az eszkz egyedi kdja.
A TCP/IP hlzati kommunikciban tbbszr is trtnik valamilyen nvfelolds.
Amikor azt mondjuk, hogy kapcsolatba szeretnnk lpni pldul az isitchristmas.com
webalkalmazst futtat szerverrel, akkor elszr meg kell hatroznunk az IP cmt. Ez
az alkalmazs rteg dolga. Ha megkaptuk a 66.33.220.210 cmet, a kvetkez
lpsben meg kell hatroznunk az IP cmhez tartoz hlzati krtya MAC cmt.
Ugyanis, mint rtam, a csomagok szlltsa tnylegesen a hlzati rtegben trtnik,
itt viszont a MAC cmek jtszanak f szerepet.
Az els nvfeloldsra (URI -> IP) szmtalan mdszer ltezik. (Loklis cache, DNS, host
fjl, WINS.)
A msodik nvfeloldst (IP -> MAC) az Address Resolution Protocol segtsgvel
vgezzk el.
2.2.2 A DD R ES S R ES O L U TI O N P RO TO C O L - MAC

C M E K K E R ES S E

RFC 826
Mint jeleztem is korbban, az Ethernet keretben ktfajta payload utazhat, IP
datagram s ARP csomag. Maga az ARP csomag szintn ktfle lehet: krds vagy
felelet.
ARP REQUEST: A krdez kld egy ARP broadcast zenetet. Ebben szerepel a
sajt IP cme, a sajt MAC cme s a krdezett IP cm. A krdezett MAC cm
mez res.
ARP REPLY: A krdezett IP cm gp magra ismer, belerja a vlaszba a
krdezett MAC cmet, majd immr clzott zenetknt visszakldi.
Lthat, hogy a nvfeloldsnak van nmi korltja: a broadcast ltalban nem tud
kitrni a loklis alhlzatrl, tekintve, hogy a routerek nem engedik t. De nem is
nagyon van r szksg, mert majd az Internet rtegnl ltjuk, hogy a felad nem a
vgs cmzett MAC cmre lesz kivncsi, hanem az tvonal els ugrst jelent gp
(alhlzaton kvl es clpont esetn a router) MAC cmre.

~ 13 ~

TCP-IP 1 RA ALATT
Nagyjbl ez az elv. A gyakorlatban ez meg van bolondtva azzal, hogy a feloldott MAC
cmek bekerlnek a gpek loklis ARP gyorstroliba, hogy ne kelljen mindig
broadcastolni.

2.6.

BRA

ARP

NVFELOLDS

A valsgban a gyorstrazs okoz nmi problmt, de ezeket ebben a knyvben nem


trgyaljuk.

2.3 I NT ERNET

RTEG

RFC 791
Jogos lehet a krds, mirt is van szksg ktfle cmre? Ha minden hlzati
krtynak a vilgon egyedi azonostja van, mirt nem lehet pusztn ezt a cmet
hasznlni? Elg egyedi, nem?
Nos, egyedinek egyedi... de meglehetsen rgztett. Mrpedig mi, amikor ptjk a
rendszereinket, szeretnnk olyan struktrt sszerakni, amely a cljainknak megfelel.
Alhlzatokat szeretnnk ltrehozni, szmtgpeket akarunk elklnteni egymstl,
alhlzatokat akarunk gerincvonalakkal sszektni, telephelyeink, kzpontjaink
vannak. Ehhez kell egy rugalmas cmzsi struktra.
Ezt a struktrt valstja meg, ezt a struktrt mkdteti az Internet rteg.
Jelenleg az IP version 4 a legelterjedtebb szabvny, de mr kint van s kezd
terjedni az IP version 6 szabvny is. Erre ksbb kln is kitrek.
Az egsz struktrnak alapja az IP cm. Az IPv4-ben egy IP cm az egy 32 bites binris
szmsorozat. Fontos, hogy ez nmagban nem rtelmezhet: minden IP cmhez

~ 14 ~

TCP/IP V4
tartozik egy msik 32 bites binris szmsorozat, az alhlzati maszk (subnet mask) ez adja meg, hogy az IP cmbl hny bit hatrozza meg az alhlzat azonostjt s
hny magnak a node-nak a cmt.
Gyors fogalomtisztzs:
Node : Egy hlzati csatoleszkz.
Host : Egy szmtgp, melyben akr tbb hlzati krtya, azaz node is lehet.
Pldul a 192.168.1.164 IP cm s a 255.255.255.0 alhlzati maszk a kvetkez
dolgokat hatrozza meg:
A hlzat azonostja
: 192.168.1
A hlzaton bell a node azonostja
: 164.
Mirt? A binris matek miatt:

192.168.1.164
255.255.255.0

-> 11000000 10101000 00000001 10100100


-> 11111111 11111111 11111111 00000000

Azt mondjuk, hogy amg az alhlzati maszk rtke 1, addig tart a hlzat azonost,
amikor pedig 0, akkor ott mr a node azonostt kapjuk. Valamivel matekosabban
gy is mondhatnm, hogy az IP cm s az alhlzati maszk binris szorzata (AND)
adja a hlzat azonostjt, illetve az alhlzati maszk negltja (NOT) szorozva az IP
cmmel adja a node azonostjt.
Szoktk ezt gy is jellni, hogy nem rjk le az alhlzati maszk minden egyes bitjt,
csak megadjk, hogy hny darab egyes van benne. (Remlem, az nem lep meg, hogy
az alhlzati maszk - az egszen extrm esetektl eltekintve - mindig balra zrt, azaz
balrl tltdik fel egyesekkel.)
Ekkor a fenti plda gy nz ki: 192.168.1.164/24.
Nyilvn az sem nagy meglepets, hogy ebben az esetben a hlzaton 256 klnbz
node lehet. (Igazbl 254, mert a kt szls cm fenn van tartva a hlzat
beazonostsra, illetve a broadcast cmre.)
Rgebben az IP cmeket osztlyokba (classful) soroltk, voltak A, B, C, D, E kategris
cmek. Ma mr classless vilgban lnk, de ez csak az els 3 kategrira igaz. A
msik kt kategria megmaradt.
2.1. TBLZAT
Osztly
D
E
2

Mettl
224.0.0.0
240.0.0.0.

Meddig
239.255.255.255
254.255.255.255

Micsoda
Multicast2
Vsztartalk

A multicast a pont - multipont kommunikcit jelenti.

~ 15 ~

TCP-IP 1 RA ALATT
Ha kt node eltr alhlzaton van, azaz klnbzik a hlzati azonostjuk, akkor
kzvetlenl nem tudnak kommuniklni egymssal.
Nzznk erre is egy pldt:
Node1 (192.168.1.164/24):
192.168.1.164
-> 11000000 10101000 00000001 10100100
255.255.255.0
-> 11111111 11111111 11111111 00000000
A hlzat azonostja
: 192.168.1
A hlzaton bell a node azonostja
: 164.
Node2 (192.168.12.123/16):
192.168.12.123
-> 11000000 10101000 00001100 01111011
255.255.0.0
-> 11111111 11111111 00000000 00000000
A hlzat azonostja
: 192.168
A hlzaton bell a node azonostja
: 12.123.
Mivel a kt hlzati azonost klnbz, ez a kt node nem fog tudni kzvetlenl
kommuniklni egymssal. Ide router kell.
2.3.1 R O U TI N G
De mi is az a router?
A router az a host, mely tbb klnbz hlzat kztt biztost tjrst gy, hogy
mindegyik hlzatba belgat egy-egy hlzati csatolt.

2.7.

~ 16 ~

BRA

R OUTOLSI

FOLYAMAT

TCP/IP V4
A fenti brn egy teljesen egyszer szituci lthat. Van kt alhlzatunk, azokon
egy-egy node . A kettt egy router kti ssze, melyben kt hlzati krtya van.
Nzzk rszletesen a folyamatot.
1) A Forrs nvvel jellt szmtgpnek halaszthatatlan kzlendje tmad,
melyet a Cl nev szmtgppel szeretne megosztani. A hlzat egyszer
Ethernet.
2) A Cl nev szmtgp IP cmt megszerzi valahonnan. (Vagy benne van a
programban, vagy segtsgl hvja a nvfeloldsi folyamatot s mondjuk egy
DNS szerver megsgja neki.)
3) Szomoran veszi tudomsul, hogy abszolt ms hlzatrl van sz, teht
kzvetlenl nem tudja elkldeni a csomagot.
4) Egy - ksbb trgyaland algoritmussal - megszerzi annak a node-nak az IP
cmt, mely felels az idegen hlzatba kldtt csomagok tovbbtsrt. Ez
jelen esetben a Router A lba lesz.
5) Az IP cm birtokban - az ARP segtsgvel - begyjti a Router A MAC cmt, s
gy mr ssze tudja rakni a kldend csomagot:
a.
Source IP address : 192.168.12.25
b.
Source MAC address : 00-1e-8c-ab-37-2e
c.
Target IP Address : 10.10.99.124
d.
Target MAC address : 00-18-f8-f1-34-0a (!!)
6) Mivel egy fogadott csomag beazonostsa alulrl felfel trtnik, gy a Target
IP cm hiba a Cl szmtgp, de a Target MAC cm miatt a Router A
magnak fogja rezni a csomagot. Felszipkzza. A Target IP alapjn rtelmezi
a feladatot, megkeresi, melyik lbn kell tovbbtania a csomagot (figyelem,
lteznek szzlb routerek is), az ARP segtsgvel begyjti a Cl szmtgp
MAC cm rtkt, majd sszerakja a kvetkez csomagot:
a.
Source IP address : 192.168.12.25
b.
Source MAC address : 00-1e-8c-f1-34-0a
c.
Target IP Address : 10.10.99.124
d.
Target MAC address : 00-0d-87-3d-4e-4d
7) A Target MAC cm miatt a Cl szmtgp felveszi a csomagot, a Target IP cm
alapjn ltja, hogy neki szl. Boldog. Miutn megrkezett az sszes csomag,
sszerakja az zenetet, s az eddig trgyalt mdon vlaszol.
Nagyon durvn ennyi. De mr most is lthat, hogy van egy-kt zavaros terlet:
Honnt is tudja a Forrs, hogy neki pont Router A szmra kell elkldeni ezt a
csomagot?
Honnt is tudja a Router, hogy melyik lbn kell tovbbkldenie a csomagot?
s mi van akkor, ha a Cl szmtgp nem kapcsoldik kzvetlenl a
Routerhez, hanem van kztk mondjuk mg 5 darab kztes router is?

~ 17 ~

TCP-IP 1 RA ALATT
Az els knz krdsre a vlaszt a route tbla adja meg. Minden szmtgpben van
egy tblzat, mely arra vonatkozik, hogy egyes csomagokat merre kell tovbbtani.
===========================================================================
Interface List
8 ...00 1e 8c ab 37 2e ...... Realtek RTL8168B/8111B Family PCI-E GBE NIC
1 ........................... Software Loopback Interface 1
9 ...02 00 54 55 4e 01 ...... Teredo Tunneling Pseudo-Interface
13 ...00 00 00 00 00 00 00 e0 isatap.{47CE5CAA-223F-4CD4-9A17-D91D7DDC2066}
===========================================================================
IPv4 Route Table
===========================================================================
Active Routes:
Network Destination
Netmask
Gateway
Interface Metric
0.0.0.0
0.0.0.0
192.168.1.1
192.168.1.101
20
127.0.0.0
255.0.0.0
On-link
127.0.0.1
306
127.0.0.1 255.255.255.255
On-link
127.0.0.1
306
127.255.255.255 255.255.255.255
On-link
127.0.0.1
306
192.168.1.0
255.255.255.0
On-link
192.168.1.101
276
192.168.1.101 255.255.255.255
On-link
192.168.1.101
276
192.168.1.255 255.255.255.255
On-link
192.168.1.101
276
192.168.99.0
255.255.255.0
192.168.1.2
192.168.1.101
21
224.0.0.0
240.0.0.0
On-link
127.0.0.1
306
224.0.0.0
240.0.0.0
On-link
192.168.1.101
276
255.255.255.255 255.255.255.255
On-link
127.0.0.1
306
255.255.255.255 255.255.255.255
On-link
192.168.1.101
276
===========================================================================
Persistent Routes:
Network Address
Netmask Gateway Address Metric
192.168.99.0
255.255.255.0
192.168.1.2
1
===========================================================================

Ez annak a gpnek a route tblja, amelyiken a knyvet rom. (A route print parancs
adja ki.) A lista els felben a hlzati csatolk ltszdnak, utna jn maga az
tvlasztsi tblzat.
Nem kell megijedni, a tblzat csak elsre tnik bonyolultnak.
Az els kt oszlop rtkei tulajdonkppen a feltteleket jelentik, a
harmadik/negyedik oszlopok rtkei fogalmazzk meg az akcit, az tdik oszlop
rtkei pedig prioritst befolysolnak.
Nzznk konkrt pldkat.
Ttelezzk fel, hogy a 192.168.1.123 node szmra szeretnk kldeni egy
csomagot. Merre induljak?
Mintaillesztssel kezdjk. Vgignzzk az els kt oszlopot s megkeressk, hogy a
megclzott cm mely rtkre illeszkedik a legszorosabban.
0.0.0.0
: Erre illeszkedik ugyan, mert erre minden illeszkedik, csak
ppen meglehetsen lazn.
127.0.0.0
: Na, erre abszolt nem illeszkedik.
192.168.1.0 : Erre viszont egszen jl.

~ 18 ~

TCP/IP V4
A tovbbi soroknl mr nincs illeszkeds. Azaz kt tallatunk van, ezek kzl az
tdik sorban lv illeszkedik szorosabban. Nzzk, ehhez a sorhoz milyen akci
tartozik: a csomagnak a 192.168.1.101 hlzati krtyn kimenve (ennek ugye akkor
van rtelme, ha tbb hlzati krtya is van a gpben) kell keresnie kzvetlenl a
192.168.1.123 node-ot, mivel azonos alhlzaton vagyunk. Nincs router.
Nzznk egy jabb pldt. Legyen a megclzott node a 192.168.99.15.
Megint mintailleszts
0.0.0.0
: Mg mindig j.
127.0.0.0
: Erre megint nem illeszkednk.
192.168.1.0
: Most erre sem.
192.168.99.0
: Hopp.
A tovbbi soroknl mr nincs illeszkeds. Megint kt tallatunk van, most a nyolcadik
sorban lv a szorosabb. Akci? A csomagnak a 192.168.1.101 hlzati krtyn
kimenve kell keresnie a 192.168.1.2 node-ot. Valsznleg ez lesz a router.
Utols plda. Prbljuk most beclozni a 217.20.130.97 node-ot.
0.0.0.0
: Szoks szerint j, de laza.
s vge. Semmi ms nem illeszkedik. Akkor most mi lesz? A csomag a
192.168.1.101 hlzati krtyn fog kimenni s a 192.168.1.1 node-ot fogja keresni.
Ez megint egy router.
Teht egy olyan alhlzatban vagyunk, amelyikben kt router is van. Az egyik
szigoran csak a 192.168.99.0/24 alhlzat fel routol (br nem tudjuk, mi lehet
mg mgtte), a msik pedig minden egyb alhlzat fel.
Prbljuk meg elkpzelni.

~ 19 ~

TCP-IP 1 RA ALATT

2.8.

BRA

K ZS

ZNA

Ez pldul egy olyan hlzat, ahol kt cg sszeolvadt s kialaktottak egy olyan


alhlzatot, amelyikhez mindketten hozzfrnek. Ez a kzs zna. Ebben jelenleg egy
webszerver fut, melyet mindkt hlzatbl el lehet rni.
Mi vagyunk a kicsi zld munkallomssal, a NagyCeg hlzatban. Az els esetben a
velnk egy alhlzaton lv file szervert prbltuk elrni, a msodik esetben a kzs
znban lv webszervert, a harmadik esetben pedig kint valahol az index.hu-t.
Amikor ki kellett mennnk az alhlzatunkbl, akkor a route tbla alapjn tudtuk
eldnteni, hogy melyik routert clozzuk be.
Ez mind szp - most mr csak azt kellene tisztznunk, hogyan kerltek bele a
bejegyzsek a route tblba?
A legegyszerbb dolgunk a legels sorral (0.0.0.0) van. Amikor egy hlzati krtya
TCP/IP belltsainl berjuk a Default Gateway rtkt, akkor gyakorlatilag ezt a sort
adjuk meg. Mit is jelent a Default Gateway? Minden nem specifiklt esetben erre kell
tovbbmenni.
A Default Gateway alli kivtelnl mr egy kicsit bonyolultabb a mdszer.
Hasznlhatjuk pldul a route parancsot:
route add -p 192.168.99.0 mask 255.255.255.0 192.168.1.2 metric 1

Ez a parancs adja hozz a fenti pldban azt a plusz sort, mely a 192.168.99.0
irnyra vonatkozik. Felhvom a figyelmet a -p kapcsolra: ekkor a bejegyzs
perzisztens lesz, azaz kikapcsols utn is megmarad.

~ 20 ~

TCP/IP V4
A route tblt tudjuk piszklni a netsh paranccsal is, de igazn nagy hlzatoknl mr
komolyabb mdszereket szoktak alkalmazni. (Route/Switch Processor, vagy az
Internet rteg ICMP szolgltatsai.)
Viszont az brn az is ltszik, hogy a hlzat nem r vget a kzs znnl.
Elmletileg a 3-as routeren keresztl be is tudnnk menni a KisCeg hlzatba - mely
hlzatrl egyelre semmi informcink sincs. Ttelezzk fel, hogy van nluk is egy
file szerver (172.30.27.101) melyet el kellene rnnk. Honnan fogjuk tudni, hogy
most melyik router fel kellene mennnk? Ht gy, hogy berjuk a route tblnkba,
hogy ebben az esetben is a Router2 fel kell menni. Honnan tudja majd a Router2,
hogy neki merre kell tovbbmennie? Berjuk az route tbljba is azt a bizonyos
sort.
Ezt hvjk gy, hogy statikus routing. De mi van akkor, ha mi vagyunk egy risi multi
cg s tbbszz routernk van?
Gond egy szl se. A routerek beszlgetnek egymssal. Ki tudjk cserlni a routolsi
informciikat. Ezt hvjuk dinamikus routingnak.
Ettl a rvid ismertettl nagyon messze ll, hogy belemenjek a routerek trsalgst
ler protokollok ismertetsbe. Van nhny. Ezek kztt van olyan, mely az Internet
rtegben mkdik, van amelyik az alkalmazs rtegben (RIP - lsd 2.1. bra Rtegek a
Microsoft TCP/IP megvalstsban.) Van olyan, mely korltozott szm ugrst tud
kezelni, van, amelyik korltlant. Van gyors, van lass. Van kerek csokold, van
lyukas csokold. s gy tovbb.
Ami neknk fontos, az az, hogy a mai routerek mr okosak, ma mr nem kell 15 ujjal
gpelnie egy network rendszergazdnak ahhoz, hogy a routerekben lv route tblk
mindig sszhangban legyenek a tnyleges hlzattal. gy viszont maga az Internet
rteg algoritmusai mindig ki tudjk vlasztani a megfelel utat a forrs s a cl
kztt.
Mindig?
Nem felttlenl. A routerek ugyanis nem sz nlkl engednek t magukon
forgalmakat. Termszetesen szablyokkal tarthatjuk kordban, hogy melyik irnybl,
melyik irnyba, kicsoda, mit csinlhat a micsodjval. Ez teljes mrtkben a
rendszergazdkon mlik.

~ 21 ~

TCP-IP 1 RA ALATT
2.3.2 C M F O RD T S O K (NAT, PAT)
Vannak pldul specilis tartomnyok, melyeket bizonyos routereken ktelezen
tiltani kell.
RFC 1918
2.2. TBLZAT
Kezd cm
10.0.0.0
172.16.0.0
192.168.0.0

Vgs cm
10.255.255.255
172.31.255.255
192.168.255.255

Cmek szma
16777216
1048576
65536

Vgs cm
169.254.255.255

Cmek szma
65536

Illetve ksbb bvlt a klub.

RFC 3927
2.3. TBLZAT
Kezd cm
169.254.0.0

Az els tblzat tartomnyait nevezzk privt tartomnyoknak, az als tblzat


tartomnyt pedig IPv4 link-local tartomnynak. (Lenykori neve APIPA, Automatic
Private Internet Protocol Addressing.)
Mi rtelme lehet egyltaln egy tartomny tiltsnak a routeren?
Ht pldul az, hogy kt helyen is ltezik.
Persze jogos lehet a krds, mirt akarunk kt vagy tbb ugyanolyan cmtartomny
hlzatot mkdtetni? Nos, azrt mert a vilgszerte egyedi cmekbl kevs van s
egybknt is drgk. Ezrt talltk ki a privt tartomnyokat: ezekbl mindenki annyit
hasznl a sajt szemtdombjn bell, amennyit akar - de az internet hatrait rz
routerek ezeket a tartomnyok soha nem fogjk rengedni az internetre.
(Pontosabban mr a jl konfigurlt cges edge routerek sem engedik el az internetes
edge routerekig a privt tartomnyokat.)

~ 22 ~

TCP/IP V4

2.9.

BRA

G UBANC

AZ ALHLZATOK KZTT

Csak hogy rthetbb legyen, mirt nem lehet kapcsolatban kt ugyanolyan


tartomny. Szoks szerint megint a zld munkallomsrl nyomulunk. Melyik router
IP cmt is kellene bernunk a route tblnkba, hogy elrjk a 192.168.1.123-as IP
cm Webszerver #1 gpet? s mi van, ha kzben a Cg3 hlzatba is felvesznek
egy 192.168.1.123 IP cm gpet, mondjuk egy file szervert?
Ilyen esetekben csak a tilts jhet szba3. Vagy a Cg2, vagy a Cg3 - vagy mindkett
- hlzatt letiltjuk a routereken.
Igenm, de a letilts utn hogyan fognak ezek a szerencstlenek dolgozni? Hogyan
fogom elrni a webszervereket a kicsi zld munkallomsomrl?
Ha a teljes cges hlzatom privt tartomnyban van, hogyan fognak az
alkalmazottak bngszni a neten?
RFC 1631
Erre talltk ki a cmfordtsi technikkat.
Ilyenkor a router nem kzvetlenl engedi t magn a forgalmat, hanem lop, csal,
hazudik. Emlksznk (2.7. bra Routolsi folyamat), sima routols esetn a router
csak a MAC cmekkel jtszik. Cmfordtsnl mr bevonja a jtkba az IP cmeket
(Internet rteg, Network Address Translation, azaz NAT), illetve a portokat (Transport
rteg, Port Address Translation, azaz PAT)
3

Illetve termszetesen az IP tartomnyok megvltoztatsa.

~ 23 ~

TCP-IP 1 RA ALATT
Egy kicsit megint elreszaladunk. A port fogalma a Transport rtegben jelenik meg de
igazbl az alkalmazs rtegnl lesz bvebben kifejtve.
Pr szt azrt itt is ejthetnk rla.
Ttelezzk fel, hogy van a cgnl egy tbbfunkcis szervernk: fut rajta egy webes
alkalmazs, emellett DNS szerver is, no meg fjlszerverknt is funkcionl. n a kis
zld munkallomsomrl bngszem a szerver weblapjait, mikzben le akarok kapni
egy Excel tblzatot, amely a szerver egyik megosztsban van.
Nem akadnak itt ssze a szlak? Az n IP cmem, MAC cmem fix, hasonlan a
szerver is. Honnan fogjk tudni a kzleked csomagok, hogy melyik melyik
alkalmazshoz fog tartozni?
Erre talltk ki a portszmot.
Azaz amikor pldul egyszerre bngszek s msolom a tblzatot, gy alakulnak a
viszonyaim:
2.4.

TBLZAT

Source IP
Source Port
Target IP
Target Port

Weblap bngszs
10.89.101.82
45789
192.168.1.123
80

Exceltbla letltse
10.89.101.82
33478
192.168.1.123
445

Ok, vissza a cmfordtshoz. Azt mondtam, a router lop, csal, hazudik. gy bizony.
Cmfordts esetn gy viselkedik, mintha , a megfelel alhlzatba belg lbval
indtotta volna el a krst - azaz kicserli a forrs IP cmet a sajt, megfelel IP
cmre. Persze a router nem fog tudni sokat kezdeni mondjuk egy netrl letlttt
katewinslet.jpg fjllal, emlkeznie kell, ki is krte azt eredetileg s tovbbtania neki.
Amikor a cmfordts gy trtnik, hogy csak az IP cmet cserli ki a router, akkor
beszlnk NAT-rl. Br kicsi az eslye, de elfordulhat, hogy kt node fordul
ugyanazon webszerverhez, ms IP cmrl, de ugyanazt a kliensportot hasznlva ilyenkor a router azrt zavarba hozhat.
Emiatt inkbb elterjedtebb az a cmfordts, amikor a router nemcsak a felad IP
cmt, hanem a portszmt is kicserli. Ekkor beszlnk PAT-rl.
Illetve megklnbztetnk olyan verzit, amikor a router csak a source
adatokat piszklja (SNAT) s van olyan, amikor a router a cl adatokat
babrlja (DNAT). De a szmtstechnikai kznyelv ezt az egsz bagzst (NAT,
PAT, SNAT, DNAT) nevezi egsz egyszeren csak NAT-nak.

~ 24 ~

TCP/IP V4
A portfordts NAT-ot rdemes rszletesebben is megnzni.

2.10.

BRA

NAT,

PORTFORDTSSAL

A 10.0.0.2 forrs IP cmrl (port: 3123, tipikus kliens port) egy webszerverhez
szeretnnk kapcsoldni: 143.23.0.4, a portszm: 80 (tipikus webszerver port).
Csakhogy kzben van egy natol router, mely eltrolja a felad adatait egy port
mapping tblzatban, majd kicserli a felad adatait a csomagban: berja a sajt
kls lbnak IP cmt s egy msik kliens portot. Mindezt szintn rgzti a port
mapping tblzatban, st, ide kerlnek a cmzett adatai is. A mdostott feladtl
elmegy a krs a cmzetthez, az vissza is vlaszol neki. Itt kap szerepet a port
mapping tblzat, a router abbl keresi ki, hogy ki is volt az eredeti felad, fellrja a
csomagban a cmzett cmt s tovbbtja visszafel a csomagot.
Aki szeretne jobban is elmlylni a klnbz cmfordtsokba:
http://en.wikipedia.org/wiki/Network_address_translation

Amit mg rdemes megjegyezni, hogy a NAT-nak ersen megvannak a korltai. Nem


egy olyan protokoll ltezik, ahol nem csak az IP datagram fejlce tartalmazza az IP
cmeket, hanem maga az alkalmazs is belerakja egyes adatcsomagjaiba ezeket.(Pl.
FTP protokoll, PORT v. PASV parancsok.) Ilyenkor a natol eszkz vagy fel van ksztve
arra, hogy itt is cserlni kell az IP cmeket, vagy elhasal az alkalmazs.

~ 25 ~

TCP-IP 1 RA ALATT
2.4 S ZLLT SI (T RANSPORT )

RTEG

Dacra a nevnek, nem ez a rteg mozgatja a csomagokat. Az a Network Interface


rteg. A Transport rteg szervezi a szlltst.
Mghozz ktfle szervezelv szerint kpes dolgozni.
2.4.1 U S E R D A TA G RA M P RO T O C O L (UDP)
RFC 768
Mint a nevbl is ltszik, datagram. Azaz olyan csomag, mely kompakt. Ha kinyitom a
payload-ot, akkor nmagban is rtelmezhet blokkot tudok kivenni belle.

2.11.

BRA

E GY UDP

CSOMAG

Tessk megnzni. Megkrdeztem az index.hu IP cmt - s visszakaptam, hogy az


217.20.130.97. Emellett megtudtam azt is, hogy kik az index.hu name szerverei. Az
informci kompakt, sehol sem r olyat a wireshark, hogy a tovbbi rszletekrt menj
tovbb az xy sorszm csomaghoz.

~ 26 ~

TCP/IP V4
2.4.2 T RA N S M I S S I O N C O N T RO L P R O T O C O L (TCP)

2.12.

BRA

TCP

CSOMAG

Szemmel lthatan kompaktsgrl sz sincs. A csomag payload-jban egy


adatszegmens van (1460 bjt), a tartalmt csak alul a binris rszben tudjuk
megnzni. Rnzsre meg tudjuk tippelni, hogy ez egy HTTP zenet fejlce lesz, de a
vgt nem ltjuk. Nem is lthatjuk, hiszen csak egy 1460 bjtos darab utazik a
csomagban.
Nyilvn nem rulok el titkot, hogy a TCP szervezsi md a bonyolultabb. Egsz
pontosan sokkal-sokkal bonyolultabb. Ha elveszik egy UDP csomag, attl mg senki
nem dl a kardjba. Ha elveszik egy TCP szegmens, akkor az egsz adatfolyamnak
lttek - s ez mr tud fjni egy 100 megs zip fjlnl. De a TCP nemcsak
megbzhatsgban jobb, egy csom extra lett mg beleptve.

~ 27 ~

TCP-IP 1 RA ALATT
2.5.

TBLZAT

Kapcsolat

Megbzhatsg

Puffer

Trdels

Folyamatszablyozs

Tbbnejsg

Sebessg
Hatkonysg

UDP
Kapcsolatmentes.
A felad elkldi a csomagot, a cmzett
megkapja. Ezen a tranzakcin kvl semmit
nem beszlgetnek.
Megbzhatatlan.
A kld/fogad alkalmazsokra bzza, hogy
vegyk szre a csomagvesztst.
Nincs.
A kld alkalmazs egybl kldi a csomagot
s az ahogy megrkezik, egybl megy is
tovbb a fogad alkalmazshoz..
Nincs.
Az UDP kln nem foglalkozik vele. Ha a
csomag nagyobb lett az MTU-nl, akkor majd
trdel az IP rteg. A maximlis mrete 64
KB.
Nincs.
Nem tudja rzkelni, hogy dug van s
lasstania kellene. Hasonlkppen azt sem,
hogy szabad a plya, lehet gyorstani.
Poligm
Kpes
a pont-multipont kapcsolatra.
Multicast kommunikcinl csak UDP jhet
szba.
Gyors
Mivel nincs benne ez a sokfajta vdelem,
meg ellenrzs.
J
A csomagok tartalmhoz kpest nem tl
nagy a vzfej.

TCP
Kapcsolatcentrikus.
Mg a tnyleges adatklds eltt a felek
kiptenek egy kapcsolatot s azt poljk
is.
Megbzhat.
Az adatfolyam darabjai szmozottak s
azokat leltr szerint t kell vennie a
fogad flnek.
Van.
Mind kld oldalon, mind fogad oldalon
ltezik egy tmeneti trolhely, mely segt
a csomagok elrendezsben.
Van.
A TCP kpes kommuniklni az IP rteggel
s
a
csomagok
sszeraksnl
figyelembeveszi az MTU rtkt.
Van.
Rendszeresen
mri
a
csomagok
berkezsi idejt s ehhez hangolja a
sebessget.
Monogm
Csak
pont-pont
kapcsolatra
j,
multicasthoz hasznlhatatlan.
Lass.
Mivel ebben viszont benne van az a
sokfajta vdelem, meg ellenrzs.
Gyenge
Mind a csomagok fejlct, mind az extra
elkldtt csomagokat tekintve nagy a
vizfej.

A tblzatbl remekl kiolvashatak a tipikus felhasznlsi terletek is. Nem akarom


a vgtelensgig elnyjtani, gy csak egy markns pldt emelnk ki.
A DNS nvfelolds felvltva hasznlja az UDP, illetve TCP protokollokat, mghozz
gy, hogy ha az informci belefr egy UDP csomagba, akkor gy megy (tipikusan a
DNS lekrdezs, illetve vlasz), ha nem, akkor jn a TCP (tipikusan znatranszferek).

2.5 A LKALMAZS (A PPLICATION )

RT EG

Megrkeztnk a dzsungelbe. Eddig ugyanis meglehetsen rgztett formk kztt


zajlott az let - innentl viszont elszabadul a pokol. Kismilli protokoll - s egyltaln
nem ktelez, hogy ezek szabvnyostva legyenek. A Szomszd Lacika kitallja, hogy
r egy szerveralkalmazst, mely az 59999-es porton szolgltat, majd r hozz kliens
alkalmazsokat, melyek ezen a porton rik el a szervert. Ez mr az alkalmazs rteg.
Tipikus vadnyugat. Mg akkor is, ha Lacika mr TCP-t vagy UDP-t fog hasznlni, a
cmek kezelst az IP rteg fogja vgezni, a szlltst pedig a hlzati rteg.

~ 28 ~

TCP/IP V4
Termszetesen a protokollok j rsze szabvnyostott. Nincs semmi rtelme jra meg
jra felfedezni a spanyolviaszkot. (Pl. megrni egy alternatv DHCP-t.)
A szabvnyostott (RFC, ugye) protokollok viszont rgztett portokon kommuniklnak.
Persze ne gondoljon senki kbevssre, minden tovbbi nlkl zemeltethetek
webszervert, mely nem a 80-as porton mkdik - csak ppen elvesztek mindenkit,
aki olyan cges tzfal mgl jn, ahol csak a 80-as portot engedlyeztk
bngszsre.
Ezeket a szabvnyos, de legalbbis ersen ajnlott portokat nevezik wellknown
portoknak.
2.5.1 T R K P

AZ AL K AL M A Z S R T E GH EZ

2.13.

BRA

T RKP

AZ ALKALMAZS RTEGHEZ

Termszetesen nem teljes. Irgalmatlanul nem teljes. Nyilvn nem csak ennyi
protokoll ltezik. Nyilvn nem csak a bngsz hasznlja a DNS-t. A Total
Commander nyilvn nem csak az SMB-t hasznlja - ha nevet kell feloldania, fordulhat
DNS-hez s WINS-hez is. A fokonyv.exe-rl meg legtbbszr a fejlesztje sem tudja,
mit is hasznl pontosan.

~ 29 ~

TCP-IP 1 RA ALATT
De az elv, ahogy egymsba plnek a kockt, remlhetleg jl lthat.
Aprop, SMB. Nem, nem sajthiba: a Windows Server 2000 ta mr nem a Netbioson keresztl dolgozik, hanem kzvetlenl fordul a TCP-hez (TCP 445). Innentl
nevezik CIFS-nek is.

2.6 T ZFALAK
Ezek azok az eszkzk, melyek kpesek valamilyen szinten kontrolllni a rajtuk
keresztlmen forgalmat. A routereknl mr emltettem, hogy le lehet tiltani rajtuk
bizonyos forgalmakat. Erre a clra jogosultsgi listkat (ACLs) hasznlunk s az
egyszerbb feladatokhoz ez bven elg is.
De akadnak jcskn sszetettebb feladatok is. Amikor egy jogosultsgi lista mr
kevs. Ilyenkor hvjuk segtsgl a tzfalakat.
Egy tzfal tbbflekppen tudja kontrolllni a rajta tmen forgalmat:
csomagszrssel, azon bell is
llapottr nlkli (stateless), vagy
llapotteres (stateful) csomagszrssel, illetve
proxyzssal (application layer, protocol proxy).
Kihasznlom, hogy a fejezet alapveten bevezets jelleg, gy akr durvn
egyszersthetek is.
A csomagszrst kpzeljk el gy, hogy ll a biztonsgi r a repltri kapunl,
mindenkit megmotoz s megnzi mi van nla. Egy golystoll? Mehet. Egy kulccsom?
Mehet? Egy veg kla!? Riad, terroristaveszly!
Nyilvn ez gy trtnik, hogy a biztonsgi rnek ki van adva, hogy mit engedhet fel.
Mrlegelsi joga nincsen. Nem fogja megvizsglni, hogy az egy jtkpisztoly, vagy
igazi - nem engedi fel. Ez a stateless vltozat.
A sateful csomagszrs mr intelligensebb. Maradva az elz pldnl, itt is jnnek
sorban az emberek. A biztonsgi r itt is tvizsgl mindenkit. Golystoll? Felrtam,
mehet. Kulccsom? Felrtam, mehet. Egy veg kla? Felrtam, mehet.
Beazonosthatatlan vasdarab? Felrtam, mehet. 1 deci Moyra krmlakk? Lssuk
csak, valaki mr vitt fel egy veg klt, mrpedig a kla keverve ezzel a krmlakkal,
robbananyagot alkot4. Kidobjuk, s visszahvjuk a kls fazont, hogy is dobja ki a

Nyilvn nem... ez csak egy plda. Nehogy nekillj ezekkel otthon napalmbombt
barkcsolni.
4

~ 30 ~

TCP/IP V4
kljt - mert elkpzelhet, hogy ezek ketten rosszban sntikltak. (Vigyzat, nagyon
durva egyszersts.)
Lthat, hogy a stateful vltozat sokkal bartsgosabb s rugalmasabb. Cserbe
viszont rlt nagy noteszt kell kezelnie a biztonsgi rnek, jl kell tudnia kombinlni,
s napraksz technolgiai adatbzis kell mg, hogy tudja, milyen alkatrszekbl
milyen fenyegetseket lehet sszerakni.
Nzzk a proxy tzfalakat.
A pilta mr bent l a piltaflkben, hamarosan indulnak - de ekkor megkvn egy
hamburgert. Odaint egy biztonsgi rt, ad neki pnzt, az r pedig kimegy a repltr
el. Tudja, hol van hamburgeres - mert a pilta elmagyarzta neki - megveszi a
hamburgert, alaposan leellenrzi, hogy az tnyleg csak egy rtalmatlan hamburger
legyen, majd beviszi s odaadja a piltnak.
Azrt hvjk ezt a technikt proxynak, mert a kld s a fogad fl kzvetlenl nem
tallkoznak. Egy helyettest szemly - a proxy - kzvett kzttk. Az egyik
elmagyarzza neki, mit szeretne, a proxy ekkor kimegy a vad, veszlyes terepre,
begyjti a begyjtendket, majd ellenrzs utn odaadja a megbzjnak.
Lthat, hogy a direkt kapcsolat hinya miatt a proxy jval biztonsgosabb, de ennek
a technolginak is megvannak a htrnyai. Mi van, ha a pilta hirtelen egy
talajgyalut szeretne? A biztonsgi r csak hamburgerre lett kikpezve. Csak egy
hamburgerboltban tudja, hogyan kell viselkednie. Csak a hamburgert tudja
tvizsglni, hogy tnyleg hamburger-e. Csak a hamburgerhez van kis rzsaszn
manyag doboza, amelyben biztonsgosan tudja szlltani. Ha a piltnak talajgyalu
kell, akkor egy msik biztonsgi rt kell odahvnia, aki otthon rzi magt egy
exkavtor szakzletben, aki meg tud gyzdni arrl, hogy tnyleg talajgyalut kapott,
nem pedig afgn ngyilkos mernylt, s akinek van olyan rzsaszn dobozkja,
amelyben biztonsgosan tudja szlltani a talajgyalut. Aztn a fkabbihez harmadik
biztonsgi r kell. s gy tovbb. Radsul mindegyik rt folyamatosan kpezni kell,
mert a fejlds soha nem ll meg, a hamburger, a talajgyalu, a fkabbi llandan
vltozik, talakul. Arrl nem is beszlve, hogy a fizeteszkz is, s a pilta lehet, hogy
egy id utn bankkrtyt ad - a biztonsgi rnek meg kell tanulnia azt is hasznlni.
Vgezetl remlem az is ltszdik, hogy a proxy technika jval lassabb is.

~ 31 ~

TCP-IP 1 RA ALATT
Az SPF (Stateful Packet Filter) technolginak markns kpviseli a Checkpoint
tzfalak, mg a proxy technolgira hirtelen a magyar Zorp Gateway tzfalat tudnm
megemlteni.
Checkpoint:
http://www.checkpoint.com/
Zorp Gateway:
http://www.balabit.hu/network-security/zorp-gateway/

A Microsoft TMG (s az ISA vonulat is) hibrid termk. A webes protokollokat proxy
technikval kezeli (webproxy service), a tbbi hozzfrst pedig SPF mdon.

~ 32 ~

TCP/IP V6

3 TCP/IP

V6

RFC 1719
Ha hiszed, ha nem, az RFC 1719 mr 1993-ban elkszlt, az IPv6 - mely gyakorlatilag
az IP rteg teljesen ms szemllet kezelst megvalst szabvnygyjtemny pedig 1995-ben llt ssze. 15 v!
Ehhez kpest nem mondanm, hogy olyan nagyon kzismert, nagyon elterjedt
dologrl lenne sz.
Trtnelmileg gy alakult, hogy a kilencvenes vekre kezdtek elfogyni az IP cmek. Az
IETF-nl gyorsan nekilltak kidolgozni egy jabb szabvnyt, kzben workaroundknt
bedobtk a CIDR szemlletet s a NAT technolgikat. Gondolom, nem elszr
hallasz ilyesmirl, de a workaround annyira jl sikerlt, hogy ksbb, amikor mr
elkszlt a vgleges megolds, senki sem rezte szksgt lecserlni. (Ne mondd,
hogy soha nem hallottl mg kvfz-gumival hajtott vzpumprl.)
Nagyjbl mostanra rtnk el odig, hogy az ideiglenes megolds kezd elrkezni
lehetsgei hatraihoz. Azrt akrhogy is nzzk, a NAT meglehetsen
erforrsignyes s az IPv4-nek nem is egy komoly htrnya van az IPv6-hoz kpest.
risi vltozsrl van sz. Mrmint mennyisgben. Az internet az utbbi 15 vben
tlpett minden elkpzelhet hatrt. s ebben a hatalmas hlzatban kellene
komplett lecserlni az IP rteget egy msikra.
Nyilvn nem fog menni egyik naprl a msikra. Elszr el kell jutni addig, hogy
minden rsztvev gyrt alapbl is tmogassa. Aztn le kell cserlni azokat az
eszkzket, amelyek nem tmogatjk. Vgl szp finoman, vatosan el kell kezdeni
tlltgatni a rendszereket. Termszetesen a mrnkknek, a rendszergazdknak
addigra kpbe kell kerlnik, meg kell tanulniuk az j IP rteget - hiszen hossz
vekig fognak egyms mellett zemelni IPv4 s IPv6 hlzatok.
Izgalmas idszak lesz - s van egy tippem, hogy a minesweeper-t be fogja elzni a
npszersgi listn a calc.exe.
Kezdjk a legltvnyosabb vltozssal: jval nagyobbak lesznek a cmek. Eddig 32
bites cmeket hasznltunk (ezeket rtuk le ngy bjtos formban) - mostantl 128
bites cmeink lesznek. Anlkl, hogy elmerlnnk a matek rejtelmeiben, ez nem
ngyszeres vltozs - sokkal inkbb negyedik hatvnyos. Ennyi cm valsznleg
akkor is elg lesz, ha Knban az sszes kenyrpirtnak sajt egyedi IP cmet kell
adni.

~ 33 ~

TCP-IP 1 RA ALATT
Nzznk egy pldt:
11000000 10101000 00010111 00001100

Ez a 192.168.23.12, binrisan brzolva.


Csak a hecc kedvrt rjunk fel egy IPv6 cmet binrisan:
11000000 10101000 00010111 00001100 11000000 10101000 00010111 00001100
11000000 10101000 00010111 00001100 11000000 10101000 00010111 00001100

Ez a 192.168.23.12.192.168.23.12.192.168.23.12.192.168.23.12 cm.
Ilyen cmekkel a fejnkben fogunk szaladozni.
Nyilvn nem. Knytelenek lesznk egy tlthatbb brzolst vlasztani. Persze ezzel
is lesz gondunk, hiszen gy megszoktuk mr a rgi, tizes szmrendszeren alapul
brzolst - most meg lehet majd hexzni.
C0A8:170C:C0A8:170C:C0A8:170C:C0A8:170C

A fenti IP cmet ilyen formban fogjuk lerni, megtanulni, hasznlni.


3.1. TBLZAT
Hexadecimlis
C0
A8
17
0C

Decimlis
192
168
23
12

Nmi rvidts mg lehetsges.


Pldul - az IPv4 cmekhez hasonlan - nem kell kirni a vezet nullkat. Azaz
a ":0FB9:" cmdarab teljesen egyenrtk az ":FB9" cmdarabbal.
A teljesen nulla darabokat ssze is lehet vonni.
A C0A8:170C:C0A8:0000:0000:170C:C0A8:170C cm helyett rhatjuk azt is,
hogy C0A8:170C:C0A8::170C:C0A8:170C. Nyilvn ilyen sszevonst csak egy
helyen tehetnk egy cmben, hiszen egybknt nem tudnnk, az adott helyen
hny nulla volt.
A subnet mask szerepe megmaradt, de mr nem irkljuk azt a rengeteg F bett meg
nullt. Maradunk a /xxx formtumnl.
Azaz a C0A8:170C: C0A8:170C: C0A8:170C: C0A8:170C/64 cm azt jelenti, hogy az
els 64 bit a hlzatazonost, a msodik 64 pedig az alhlzaton bell a node
azonostja.
A vgn nzznk egy elrettent pldt. Hogyan nz ki a localhost cm az IPv6-ban?
::1/128. gy. Kibontva: 0000:0000:0000:0000:0000:0000:0000:0001/128.

~ 34 ~

TCP/IP V6
Nagy vltozs, hogy az IPv6-ban az alapveten ktsk IPv4 hierarchia szthzdik.
Egy IPv6 cmrl els ltsra meg fogjuk tudni llaptani, hogy melyik znba esik:
Vilgon egyedi
Site szint
Loklis
Eddig annyit tudtunk, hogy egy IPv4 privt cmrl meg tudtuk mondani, hogy az loklis
cm. A publikus cmre azt mondtuk, hogy az valsznleg nem loklis cm. Az IPv6-nl
eleve bejtt egy kzbens szint, a site. Elg hossz a cm, ki tudunk alaktani
hromszintes struktrt is. (Nem ktelez. Lehet. De az ISP-k valsznleg hasznlni
fogjk.)
Fussuk t, milyen IPv6 cmek lehetsgesek.
UNIQUE-GLOBAL: Vilgszerte egyedi cm. Az els 3 bit jelzi, hogy ez unique-global cm
(001), a kvetkez 45 bit egy globlis azonost (pl. az ISP-m vilgon egyedi
azonostja), majd jn 16 bit site azonostsi clra (pldul az ISP-m csinl egy kln
Budapest site-ot), vgl a maradk 64 bit lesz a node azonostja. A node
azonostjt generlhatjuk a MAC cmbl (IEEE EUI64), de lehet vletlenszm is.
Ez gyakorlatilag azt jelenti, hogy a vilgszerte egyedi cmhez a rendszergazdknak
hozz sem kell nylni, generldik magtl.
LINK-LOCAL: Olyan cm, mely csak loklisan rtelmezett. A routerek nem fogjk
kiengedni az internetre. (Meglehetsen analg az IPv4 privt cmeivel.) Az els 10 bit
jelzi, hogy ez link-local cm (1111111010), utna jn 54 darab nulla, majd a
korbban is emltett node azonost. Azaz FE80::/64 konstans prefix, a vgn pedig a
node azonost. Ez a cm is legenerldik magtl.
SITE-LOCAL: Nem vagyunk ktelesek elfogadni azt a site struktrt, melyet a uniqueglobal cm biztost szmunkra. Mi magunk is ki tudunk alaktani a magunk szmra
egy site struktrt. Termszetesen az ebben a struktrban hasznlt IP cm nem lesz
vilgszerte egyedi - igazbl nem is kerlhet ki a site-on kvlre. Az els 10 bit jelzi,
hogy ez site-local cm (1111111011), a kvetkez 54 bit lesz a site azonostja,
vgl jn a jl ismert node azonost. Ha a site IPv6 routereit felokostjuk, akkor ez a
cm is magtl generldik.
RFC 4193
UNIQUE-LOCAL: Olyan, vilgszerte nagyon nagy valsznsggel egyedi cmekrl van sz,
melyek loklisan (maximum site szinten) rtelmezettek, ezen a hatron nem
lphetnek t. Ltszlag faramuci dolog ez. Akkor hasznljk, ha cgek
sszeolvadsrl van sz, vagy ssze-vissza kborl mobil felhasznlkrl. Az els
ht bit jelzi a cm kategrijt (1111110), a kvetkez bit egy flag (L). Ezt kveti egy

~ 35 ~

TCP-IP 1 RA ALATT
40 bites azonost, a Global ID. Ettl lesz a cm nagy valsznsggel vilgszerte
egyedi. Ez egy pszeudorandom szm, a generlsa az RFC4193-ban le van rva, de a
net is tele van olyan oldalakkal, ahol ugyanezzel az algoritmussal Global ID-t
generlhatunk magunknak. Ha az L flag magas, akkor ezt az algoritmust hasznltuk a
cmadshoz. Jelenleg ugyan ms algoritmus nem ltezik, de ha lesz, akkor az L flag
alacsony llapota fogja jelezni, hogy az jabbat hasznltuk. Ez utn jn 16 bit site
azonost, majd a jl ismert 64 bites node azonost. Mondanom sem kell, ha a
routernek megadjuk a szksges ID rtkeket, akkor ez a cm is automatikusan
oszthat ki.
Eddig tartottak az unicast cmek. Lteznek termszetesen multicast cmek is. Ezek 8
darab magas bittel kezddnek (11111111), ezt kveti ngy flag (RFC2373,
RFC3306, RFC3956), majd jn ngy bit, melyek a cm szkpjt adjk meg, vgl jn
egy 112 bites csoportazonost. A multicast cmek tipikusan FF0 kezdetek, a flag-ek
ugyanis ltalban nulla rtkek.
Nhny plda.
3.2. TBLZAT
Multicast cm
FF02::1
FF02::2
FF05::2

Fix rtk
FF0
FF0
FF0

Scope
2
2
5

Group ID
::1
::2
::2

A cm rtelme
link-local scope all nodes
link-local scope all routers
site-local scope all routers

A teljes vlasztk:
http://www.iana.org/assignments/ipv6-multicast-addresses/

Korbban elejtettem egy olyan megjegyzst, hogy egy cmrl rnzsre is meg fogjuk
tudni mondani, melyik kategriba esik. Nos, a lehetsg megvan r... de ehhez
matekozni kell egy kicsit. Szerencsre a tblzat kitltshez minden informci
adott, csak vissza kell lapozni a cmek lershoz.
3.3. TBLZAT
Cmtipus
Unique global
Link local
Site local
Unique local #15
Unique local #26
Multicast7

Cmtartomny eleje
2000::
FE80::
FEC0::
FD00::
FC00::
FF01::0001

Cmtartomny vge
3FFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF
FEBF::FFFF:FFFF:FFFF:FFFF
FEFF::FFFF:FFFF:FFFF:FFFF
FDFF::FFFF:FFFF:FFFF:FFFF
FCFF::FFFF:FFFF:FFFF:FFFF
FF35::FFFF:FFFF

Pszeudorandom algoritmussal.
Jvbeni algoritmussal - ergo ez a tartomny mg nem l.
7 Nem folytonos tartomny, mg a definilt rsztartomnyok kzl sem aktv
mindegyik.
5
6

~ 36 ~

TCP/IP V6
Hogy mi van akkor, ha olyan cmet ltunk, melyet nem fed le a tblzat? Jelenlegi
tudsommal, tapasztalatommal azt tudom csak javasolni, hogy vatosan nylj fel a
levegbe s kezd el tancstalanul vakarni a fejed tetejt.
Komolyabbra fordtva a szt, a fentiek alap cmtipusok. Vannak bven ms cmek is.
Itt van pldul a solicited node cm. Az IPv6-ban ugyanis nem csak a cmzs jelenti a
nagy vltozst, hanem a klnbz automatizmusok bevezetse is. Ilyen
automatizmus a Neighbor Discovery (ND), azaz az a folyamat, melynek sorn az
azonos linken lv node-ok - mindenfle ARP varzslat nlkl - meg tudjk tallni
egymst. Ennek a folyamatnak egyik eleme a solicited node cm. De ebbe most nem
fogok belemenni, hasonlkppen a Multicast Listener Discovery (MLD) folyamatba
sem.
RFC 4862
Az autokonfigurcirl viszont illik pr szt szlni. Eddig ugyanis elejtettem olyan
megjegyzseket, hogy majd a router legenerlja a cmet.
szintn, nlatok ez a megszokott? Ha van dinamikus cmkioszts, akkor ott egy
DHCP szerver teszi a dolgt, az osztja a cmeket. Ha nincs, s nem statikus IP
cmeket hasznltok, akkor mg mkdhet a korbban emltett APIPA mdszer.
De a router...? Micsoda perverzits mr ez?
Pedig nem az, csak szokatlan. Gondolj bele, melyik hlzati elem az, amelyik mindent
tud magrl az alhlzatrl? Termszetesen a router. Mirt ne osztogathatna
cmeket?
Ennek ellenre nem osztogat. Csak megmondja a hozzfordul node-oknak a globlis
azonostkat vagy a site azonostt - azaz a prefixeket. A cmeket ezek alapjn mr
maga a node generlja le magnak. (Valjban ennl sokkal tbbet mond, de most
nem megynk bele mlyebben.)
J krds, hogy ezek utn mi szerepe lehet a DHCPv6-nak? Mert ltezik.
A kt dinamikus cmoszts prhuzamosan mkdhet egyms mellett. A DHCP
ugyanis tud olyan belltsokat is terjeszteni, amelyeket a router nem. Gondolj csak
bele a DHCP Options lehetsgekbe (Domain name, WINS server name, WINS node
type, lease time... meg ilyenek.)
http://www.iana.org/assignments/bootp-dhcp-parameters/

~ 37 ~

TCP-IP 1 RA ALATT
A kvetkez router/DHCP kombincik lteznek:
Nincs DHCP, mindent a router oszt.
DHCPv6 Stateless: Van router s van DHCPv6 is. A prefixeket a routerek
osztjk, minden ms inft pedig a DHCPv6 szerver.
DHCPv6 Stateful: Minden inft, azaz az IP cmeket is, a DHCPv6 szerver osztja.

~ 38 ~

IPV4-IPV6 EGYTTMKDS

4 IP V 4-IP V 6

EGYTTMKDS

Ez nem csak azrt bonyolult, mert nmagban is bonyolult technolgikat jelent hanem azrt is, mert ezeket a technolgikat a hatalmas s roppant vltozatos
internet teljes egszn kell tudni majd alkalmazni.
Nzznk egy pldt.

4.1.

BRA

IP V 4

IP V 6

Mit saccolsz, ez a fellls az internet jelenlegi llapotban (2010.01.01) mkdhete? El fogom tudni rni a kis zld munkallomsomrl az IPv6 only webszervert?
Gondolom, te is kiszrtad, hogy a szk keresztmetszet maga az internet. Hiszen a
routerek le tudjk kezelni mindkt IP verzit. De a neten csak az IPv4 megy t. Egsz
egyszeren jelenleg ugyanis nem tudjuk garantlni, hogy nem kborol az IPv6
csomag olyan szakaszra, ahol csak IPv4 only router van.

4.2.

BRA

IP V 4 - I PV 6

TUNNEL

De ezt tudjuk kezelni. A kt biztos pont kztt kiptnk egy alagutat (csatornt,
nevermind) - s ekkor tkmindegy, mi van tkzben.
Hogyan is kell ezt elkpzelni? Elveszek fizikailag egy vakondot. felhzom kulccsal,
belltom a megfelel irnyba - s mr frja is az utat az interneten keresztl?

~ 39 ~

TCP-IP 1 RA ALATT
Nem igazn. Sokkal inkbb arrl van sz, hogy a megszokott csomagszerkezetbe (2.3.
bra Csomagok htn csomagok) valamelyik jl meghatrozott ponton berakunk egy
plusz csomagolst. Amit gy becsomagoltunk, azt megvtuk attl, hogy tkzben brki
piszklja. Ez a plusz csomagols lehet autentikcis fejlc, lehet titkosts (ksbb
ltunk mindegyikre pldt) - s lehet egyszeren inkompatibilis informcikat elrejt
csomagols.

4.3.

BRA

IP V 6

CSOMAG AZ

IP V 4

CSOMAGON BELL

Ez ltszlag egy sima IPv4 csomag. Van neki fejlce s van neki tartalma. Aztn hogy
a tartalmon bell egy IPv6 csomag van becsomagolva, azzal egy IPv4 only router nem
fog foglalkozni. (Azrt jelezzk neki - Protocol 41.) Az alagt kt oldaln lv
IPv4/IPv6 routerek viszont rteni fogjk a helyzetet s kpesek lesznek kicsomagolni
az IPv6 csomagot az IPv4 csomagbl. (Nekik muszj lesz, mert a TCP/UDP csomag az
IPv6 payloadban utazik, a jelen brn ppen az Upper Layer Protocol Data Unit nv
mg bjtatva.)
J hrem van: ezekkel az alagutakkal tl sokat nem kell foglalkoznunk. Akr mg a
sajt kicsi zld kliensgpnk is kpes arra, hogy teljesen magtl, elengedett kzzel,
automatikusan kiptsen egy, az adott szitucihoz ppen illeszked alagutat.
Termszetesen lehetsgnk van manulisan is alagutat pteni. Netsh. Mirt
krded?
Ebben az esetben informatikus szakik hoznak ltre routerek kztt egy csatornt,
mindkt oldalon belltjk a kapcsold alhlzaton a megfelel route szablyokat s mr mkdik is a kt szls IPv6 hlzat kztti kommunikci, az IPv4 hlzaton
thzd csatornn keresztl.

~ 40 ~

IPV4-IPV6 EGYTTMKDS
Az automatikus csatornaptsre inkbb az jellemz, hogy kliens s
kliens/szervergpek kztt jnnek ltre, ad-hoc jelleggel.
Amit mindenkppen tudnunk kell, az a kt node IPv4 cme, illetve kt IPv6 cm is,
mely az IPv6 fell azonostja be a csatornt. J lesz erre a gp sajt IPv6 cme?
Visszakrdezek: melyikre gondoltl? Egy IPv6 node-nak lehet egy csom IPv6 cme mikzben persze egyltaln nem garantlt, hogy ezek mindegyike ltezik.
A megolds az, hogy a meglehetsen egyrtelm IPv4 cmbl generlunk klnbz,
egyrtelm algoritmusok alapjn IPv6 cmeket s ezeket hasznljuk a klnbz
csatornatpusokhoz.
INTRA-SITE AUTOMATIC TUNNEL ADDRESSING PROTOCOL, ISATAP
RFC 4214
Az IPv4 cmnbl link-local IPv6 cmet gyrt - ebbl kvetkezen csak site-on bell
hasznlhat.
6TO4
RFC 3056
Habr itt mr elmletileg global-unique cm keletkezik, de mivel a kpzshez
felhasznlja a host IPv4 cmt is, gyakorlatilag csak akkor jn ltre, ha az IPv4 cm
publikus tartomnyba esik. Ms szval, ha a gpemnek privt IP cme van, n pedig
natols utn rem el az internetet, akkor ez csatornatpus nem hasznlhat.
TEREDO
RFC 4380
Az ultimate megolds. Global-unique cm keletkezik, melyhez nem a host IPv4 cmt
hasznljuk fel, hanem egy kls, privt IP cmet s egy hozz tartoz portot. Ehhez
persze kell nmi kls segtsg is, ezt egy teredo szerver (teredo.ipv6.microsoft.com)
biztostja.
Ez abban is klnbzik a tbbi megoldstl, hogy nem a korbban bemutatott
csatornzst hasznlja (4.3. bra IPv6 csomag az IPv4 csomagon bell), hanem az
IPv6 rszt megfejeli egy UDP-be csomagolssal - gy a csomag azokon a
routereken/tzfalakon is tmegy, amelyek nem tudnak mit kezdeni az IPv6 payloaddal.

~ 41 ~

TCP-IP 1 RA ALATT

5 E LBCSZS
Nos, ennyi.
Nem tudom, mrted-e stopperrel az idt... de itt a vgn azrt mr elrulhatom, hogy
abszolt nem jelent semmit, mennyi idbe tellett vgigolvasnod. A helyzet az, hogy
volt egy remek vonatfnykpem s ehhez pont passzolt ez a cm.
Te viszont nyugodtan olvasd vgig a fzetet, lassan, alaposan megrgva minden
kifejezst. s ha szeretnl jobban elmlylni a tmban, akkor ismtelten csak a
jval bvebb knyvet tudom ajnlani:
TCP/IP Alapok I-II:
http://mivanvelem.hu/letoltheto-konyvek/

Amennyiben pedig brmilyen szrevteled lenne a knyvvel kapcsolatban, az albbi


cmen tudsz elrni:
Petrnyi Jzsef
jpetrenyi@gmail.com

~ 42 ~

JAVTSOK

6 J AVTSOK
Nocsak, mg ebben a nylfarknyi rsban is akadtak javtanivalk.

6.1 1.1

VERZI

A 'Javtsok' fejezet beszrsa.


A 'vilgmret' kifejezs kiirtsa a szvegbl.
A 16. oldalon sajthiba egy IP cmben.

~ 43 ~

You might also like