Professional Documents
Culture Documents
Tcp-Ip 1 Óra Alatt
Tcp-Ip 1 Óra Alatt
Petrnyi Jzsef
Microsoft Magyarorszg
2010
TARTALOMJEGYZK
1
Bevezets _________________________________________________________ 4
TCP/IP v4 _________________________________________________________ 5
2.1
Rtegek _______________________________________________________ 7
2.2
2.2.1
2.2.2
2.3
2.3.1
Routing ___________________________________________________ 16
2.3.2
2.4
2.4.1
2.4.2
2.5
2.5.1
2.6
Tzfalak ______________________________________________________ 30
TCP/IP v6 ________________________________________________________ 33
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.
~4~
TCP/IP V4
2 TCP/IP
V4
~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
~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
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.
~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
~ 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
~ 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
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
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
~ 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 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
RFC 3927
2.3. TBLZAT
Kezd cm
169.254.0.0
~ 22 ~
TCP/IP V4
2.9.
BRA
G UBANC
AZ ALHLZATOK KZTT
~ 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
~ 25 ~
TCP-IP 1 RA ALATT
2.4 S ZLLT SI (T RANSPORT )
RTEG
2.11.
BRA
E GY UDP
CSOMAG
~ 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
~ 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.
RT EG
~ 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.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
Decimlis
192
168
23
12
~ 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/
~ 42 ~
JAVTSOK
6 J AVTSOK
Nocsak, mg ebben a nylfarknyi rsban is akadtak javtanivalk.
6.1 1.1
VERZI
~ 43 ~