4. Hálózati réteg¶
Az OSI modell harmadik rétege a hálózati réteg, melynek a nagy kiterjedésű hálózatokban, tipikusan az internetes kommunikáció során van szerepe. Ebben a fejezetben az itt használt címzési eljárást, működésének részleteit, kapcsolódó eljárásait és néhány, a kiberbiztonságot érintő ismerünk meg.
4.1. Mi a baj a MAC címekkel?¶
Újabb címzési eljárás? Miért van erre szükség, ha az adatkapcsolati rétegben az ethernet csomagok címzését már kidolgozták? Ott azt láttuk, hogy velük célba juttathatók az ethernet csomagok! Megismertük, hogy egy hálózat switchei hogyan irányítják a csomagokat a megfelelő irányba, ráadásul a VLAN-ok alkalmazásával az egyes gépeket biztonságosan el is tudtuk választani egymástól!
Sajnos az ethernet címzés, és így a switchek nem alkalmasak nagyméretű hálózatok működtetésére. Ahhoz, hiogy ez működhessen, minden switch MAC táblájában az Internet összes számítógépének MAC címét és a hozzá tartozó port számát tárolni kellene, ami nem lenne reális elvárás. A MAC táblák mérete egyébként is korlátozott, (ahogy láttuk, még a switchek Mercedeseinek számító Cisco eszközei is csak százezres nagyságrendű bejegyzést tartalmazhatnak). Az Internet sokmillió gépének MAC címe ezekben nem férne el, így a hálózatunkból csak egy részük lenne elérhető.
Az ethernet címek szerkezeténél fogva sajnos az sem működhet, hogy a címek egyúttal valamilyen helyet fejezzenek ki, és ez alapján irányíthatóak legyenek pl. úgy, hogy az AC:0A
kezdetűek csak Budapesten fordulnának elő, az AC:0B
kezdetűek pedig pl. Egerben. Ha ez lehetséges lenne, nem kellene minden címet egyesével tárolni a MAC táblákban, mert pl. az első két byte már meghatározná a cél régióját, így a csomagokat odakülve a továbbítás már helyi feladat lenne. Az ethernet címeket másképp definiálták, azok gyártó:egyedi_cím alakúak, és utólag már nem lehetett ezt újra szervezni.
De nem ez az egyetlen oka annak, hogy az ethernet címzési rendszerére nem alapozható nagy hálózatok működése. Bár a fizikai réteg tárgyalásakor főként az ethernetre, a helyi hálózatok legelterjedtebb típusára koncentráltunk, de láttuk, hogy más hálózati technológiák is léteznek, melyek nem ethernet csomagokkal és nem is az ethernet címzési rendszerével működnek. A bluetooth, a zigbee és a powerline mellett a WiFi eszközök sem az eddig tárgyalt ethernet csomagokat használják – hogy csak néhány példát említsünk. Az ethernet tehát csak egy a sok lehetőség közül – bár valószínűleg a legelterjedtebb. Általánosságban: az adatkapcsolati réteg protokolljai csak az adott, ugyanolyan típusú hálózati eszközök helyi forgalmát képesek lebonyolítani, mások kommunikációs protokolljait nem ismerik fel, pl. bluetooth interfésszel nem lehet WiFi hálózatokhoz kapcsolódni. Bluetooth-os eszközök csak bluetooth-képes eszközökkel, zigbee eszközök zigbee-képesekkel képesek kommunikálni.
4.2. A csomagok beágyazása¶
Mivel elvárjuk, hogy egy bluetooth-os mobileszköz, egy zigbee-n kommunikáló okosotthon eszköz vagy egy WiFi-képes hálózati berendezés is internet-képes legyen, ezért azoknak a saját, natív kommunikációjuk mellett egy egységes, mindegyik eszköz által ismert egységes címzési rendszerre és az azt továbbítani képes hálózati berendezésre is szüksége van. Ezt címzési rendszert és a velük készült csomagokat az OSI modell harmadik, hálózati rétege definiálja, és vannak ebbe a rétegbe tartozó hálózati eszközök is (a routerek). Az alábbi ábrán a fizikai réteget 1-essel, az adatkapcsolatit 2-essel, a hálózatit pedig 3-assal jelöltük. A 3-as hálózati réteg tehát egy új, eszközfüggetlen címzést használ, ami azt jelenti, hogy bármilyen módon is kommunikáljon egy fizikai-adatkapcsolati rétegben működő eszköz, az a saját módján elvégzi a továbbítást, de a harmadik réteg szoftvere szempontjából érdektelen, hogy az hogyan és milyen úton-módon történt. Ennek során a harmadik réteg csomagjait a második valamelyik hálózati protokolljával továbbítják úgy, hogy azok adatmezője a harmadik rétegből küldött teljes adatcsomagot tartalmazza. Így a második réteg pusztán hordozója lesz a harmadik rétegbeli egységes, minden eszköz által egyformán „beszélt” kommunikációs eljárásának.
Lássunk erre egy példát! Az ábra bal oldalán levő számítógép harmadik rétege adatokat akar küldeni a jobb oldali számítógépnek. Ezért a harmadik rétegben használatos címeket alkalmazva elkészíti az adatcsomagot, és átadja a második rétegnek. Példánkban a második réteg feladatát egy ethernet hálózat látja el, ezért a harmadik rétegtől kapott csomagot egy az egyben egy ethernet csomag adatmezőjébe teszi (beágyazza oda) a feladó és a címzett mezőkbe pedig bemásolja a megfelelő ethernet címeket. Az így elkészített csomagot végül átadja a switchnek. A beágyazás folyamatát gyakran nevezik encapsulation-nak, a kibontását pedig decapsulating-nak.

A harmadik réteg csomagjának beágyazása ethernet csomagba¶
A két számítógépet összekapcsoló switch veszi ezt a csomagot, majd a szükséges ellenőrzések elvégzése után a címzett portjára továbbítja azt (ennek során használja a már tanult MAC tábláját és a VLAN információkat). A továbbított csomagot a példa jobb oldali számítógépének fizikai rétege veszi. A sértetlenség ellenőrzése után pedig átadja a második, adatkapcsolati rétegnek, ami az ethernet csomagból kiveszi az adatmező tartalmát – ami a feladó által küldött teljes harmadik rétegben elkészített csomag – és azt átadja a harmadik rétegnek, ami feldolgozza azt.
A folyamat során a vevő harmadik rétegének nincs tudomása arról, hogy a csomag milyen úton jutott el hozzá, mivel adatot csak az alatta levő, második réteggel cserél. A vevő harmadik rétege a saját szemszögéből nézve tehát csak a feladó harmadik rétegével kommunikál.
Ugyanez egy WiFi hálózat esetén is így van, annak ellenére, hogy az adatkapcsolati réteg protokollja és az átviteli közeg is alaposan eltér az ethernettől. A harmadik rétegben elkészített csomag azonos az előző példában szereplővel, de azt most tehát nem etherneten, hanem a WiFi hálózaton kell eljuttatni a jobb oldali géphez. Most a második réteg nem ethernet csomagot készít, hanem az adott vezetéknélküli hálózat által használt típust. Bár ennek felépítését eddig nem ismertettük, és részletei most nem is különösebben fontosak, a lényeg az, hogy most egy eltérő hálózati hardver eltérő felépítésű csomagjáról és egy másik átviteli közegéről van szó. A rádióhullámokat használó fizikai közegen az WiFi adatcsomag átkerül a jobb oldali gépre, amelyet annak fizikai rétege ellenőriz, majd szintén a második, adatkapcsolati rétege dolgoz fel. Ennek során vevő most is kiveszi az adó által elkészített teljes, harmadik rétegnek szóló adatcsomagot az adatmezőből és a hálózati réteg számára átadja. A végeredmény így azonos az előzővel annak ellenére, hogy a harmadik réteg csomagját most egy teljesen eltérő fizikai eszköz juttatta célba.

A harmadik réteg csomagjának beágyazása WiFi csomagba¶
Megjegyzés
Ez a folyamat hasonlít egy hagyományos levél küldéséhez. Maga a levél a harmadik réteg által továbbítandó adat, a harmadik réteg címzési rendszere pedig a borítékra írt városból, utcából és házszámból áll. A levelet a legtöbbször a Magyar Posta viszi tovább, ők a célba juttatáshoz irányítószámot használnak és a levelet zsákba teszik (ez az ethernet csomag), ez a második szint protokolljának felel meg. De a levelet végül is kismotoros futár is célba juttathatja, ez egy másik adatkapcsolati rétegben használt eljárás lehet, ahol a fizikai réteget a kismotor jelenti. Tudunk további lehetőségeket javasolni? Persze, hiszen a levelet vihetik repülőgépen, biciklis futárral és ki tudja még mivel – akár ketteslétrán is, az Amazon már évekkel ezelőtt drónokkal kísérletezett a a kisebb csomagok kiszállítására.
Bármelyik módot is használják, a levél végül megérkezik, és a címzettnek, amikor kézhez veszi azt, fogalma sincs arról, hogy milyen módon kézbesítették azt számára. Amikor kibontja a borítékot és olvassa a levelet, már a küldő „levélírási rétegével” van kapcsolatban, és már annak feldolgozását végzi.
4.3. Az IP címzés¶
A harmadik rétegben tehát egy új címzési eljárást használunk, méghozzá olyat, amellyel az internet összes gépe egyedi címmel rendelkezhet. Ennek a címzési eljárásnak viszont route-olhatónak kell lennie, azaz valamilyen módon tartalmazni kell a cél számítógép helyét, vagy legalább annak irányát.
A hálózatok történetében számos különböző címzési rendszert terveztek és alkalmaztak már. Az egykor piacvezető Novell Netware fájlszervere pl. egy IPX nevűt használt, a Microsoft a fájlszerverének elérésére az SMB-t alkalmazta. Napjainkra a legtöbbjük kihalt, vagy kompatibilitási okokból van még életben, és egy egységes új protokoll, az Internet Protocol, röviden IP váltotta le őket. Ma az IP protokoll negyedik verzióját használjuk, amit röviden IPv4-nek írnak (ha nem jelöljük a verziót, akkor IP protokoll alatt a 4-es verziót értjük). Azok a hálózati berendezések, amelyeknek harmadik rétege ma már nem az IP protokollt használja, egzotikus rétegeszközöknek számítanak, melyek csak hasonszőrű társaikkal értenek szót, ezért a gyártók egyértelmű érdeke, hogy IP kompatibilis eszközöket tervezzenek.
Egy IP cím 4 byte-ból (0 és 255 közé eső számból) áll, melyet a könnyebb olvashatóság érdekében pontokkal választanak el egymástól valahogy így: 193.225.32.11
. Mivel a négy byte mindegyike [0,255] közötti értéket vehet fel, így elméletben 2564, azaz 4.294.967.296 db cím áll rendelkezésre.
Megjegyzés
Az IP címzést az 1970-es években tervezték meg, így abban az időben fel sem merült, hogy négymilliárdnyi cím valaha is kevésnek bizonyulhat. Az Internet elterjedése, és a pazarló címgazdálkodás miatt elfogyó IP címek miatt tervezték meg az IP 6-os verzióját, röviden az IPv6-ot, mely tömegesen még mindig nem terjedt el. Erről az IP változatról az érdeklődő olvasó egy rövid ismertetőt talál pl. itt, de mi a továbbiakban csak az IPv4-gyel foglalkozunk.
Az Interneten kommunikáló számítógépeknek tehát rendelkezniük kell egy egyedi IP címmel, melyet az operációs rendszerükben be kell állítani. A beállításra alapvetően két módszer áll rendelkezésre, az elsőben a rendszergazdák minden gépen egyesével adják ezt meg úgy, hogy az operációs rendszer megfelelő pontján egyszerűen beírják azt. Ezt a módszert leginkább a valamilyen közösen használt számítógépek (pl. szerverek, hálózati nyomtatók stb.) esetében választják, mert ezek így mindig ugyanazt a címet használják, és ezzel könnyen elérhetők.
Munkállomások, mobiltelefonok esetén, ahol az IP cím csak a más gépek által nyújtott szolgáltatások igénybevételéhez szükséges, a gépek egyenkénti beállítása hosszas és kényelmetlen és felesleges munkát igénylő megoldás lenne. A modern operációs rendszerek képesek a gép bekapcsolását követően egy arra kijelölt számítógéptől vagy hálózati berendezéstől (tipikusan a már említett routertől) IP címet kérni. Az erre konfigurált berendezések (pl. szinte minden otthoni router így működik) képes ezekre válaszolni, és adott időre kölcsönözni egy címet. Ez az oka annak, hogy egyszerű felhasználóknak otthon nemigen kell foglalkozni a számítógépek, okostévék és mobiltelefonok IP címeinek manuális kiosztásával. A témával bővebben a DHCP szerverről szóló fejezetben és egy gyakorlaton is foglalkozunk.
Nem szabad két számítógépben ugyanazt az IP címet beállítani, mert ekkor mindkét gép kommunikációképtelenné válik. Az operációs rendszerek érzékelik, ha a címüket egy másik gép is használja, és az így fellépő IP cím ütközést egy üzenetablakban jelzik is. Az ütközések elkerülésére a rendszer megtervezésekor ki kell jelölni az egyes címek felhasználási tartományát, azokról nyilvántartást kell vezetni és a változásokat követni kell. A nyilvántartás alapján egy új eszköz beállításakor azonnal kiválasztható a következő szabad IP cím, egy incidens esetén pedig a forenzikus vizsgálat azonnal megkezdhető.
Megjegyzés
A példákban látni fogjuk, hogy az IP cím önmagában nem elég a hálózati kommunikációhoz, ezért további paramétereket: alhálózati maszkot, alapértelmezett átjárót, és DNS szervert is be kell állítani. Ezeket a fejezet további részeiben tárgyaljuk.
Egy Windows-os számítógép IP címe az ipconfig paranccsal kérdezhető le. A parancsok begépeléséhez először el kell indítani a cmd programot az Ctrl-R lenyomásával, majd a cmd begépelésével. A megjelenő, fekete hátterű ablak a Windows parancssoros felülete. A hálózati paramterek megtekintéséhez szükséges parancs az :cmd:`ipconfig`, ezt kell begépelni, majd Entert nyomni. A parancs válaszában néhány adat olvasható le a számítógép hálózati beállításairól, többek közt az IP cím is. Mivel egy számítógépnek több hálózati csatlakozója és több IP címe is lehet, ezért több blokk is megjelenhet – a parancs sorra veszi ezeket és mindegyikről megjeleníti a részleteket. Az alábbi példában is két interfész kimenete olvasható, minket a második, az Ethernet Adapter Ethernet 3
kimenete érdekel. Ebben leolvasható, hogy a gép által használt IP cím a 10.1.74.190
.

Az ipconfig paranccsal kiolvasható a számítógép IP címe.¶
A hálózati paraméterek megtekintése és módosítása a Windows grafikus felületén is elvégezhető – az ábrán szereplő panelt pl. a vezérlőpult hálózati beállításaiban lehet elérni. A példában a gép számára egy fix IP címet állítottunk be, ez a 192.168.1.44
. Itt lehetne bekapcsolni az automatikus beállítást is, ehhez a két Obtain… kezdetű beállítását kellene kiválasztani.

Hálózati paraméterek beállítása a Windows operációs rendszerben¶
A 127.0.0.1
cím az ún. loopback cím, ami minden számítógép esetében önmagát jelenti. A 127-tel kezdődő címeket tesztelési és fejlesztési célokra használják. Az alábbi példában látható ping parancsra ezért akkor is érkezik válasz, ha számítógépünk egyetlen élő hálózati kapcsolattal sem rendelkezik.
C:\Users\kf> ping 127.0.0.1
PING 127.0.0.1 (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.103 ms
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.106 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.173 ms
Az adatok továbbítását a hálózati réteg is csomagkapcsolással végzi. Ezért, ha nagyobb mennyiségű adatot kell továbbítani, már eleve részekre bontva kap meg a felette elhelyezkedő szállítási rétegtől, az IP rétege ezeket eljuttatja el a címzetthez. A csomagok előállítása és küldésük külön-külön, egyesével történik a célszámítógép felé. A gyakorlatban az elkészült csomagok mindegyikének tartalmaznia a feladó címét is, amire azért van szükség, hogy a címzett azonosíthassa azt, és képes legyen arra válaszolni is. Egy IP csomag a küldendő adat mellett számos egyéb mezőt tartalmaz, egy szűkített, csak a legfontosabb részeket tartalmazó változata az alábbi ábrán látható. A csomag felépítésének teljes leírása elérhető pl. itt.

Egy IP csomag felépítése¶
Egy IP csomag a feladó és a címzett IP címe mellett számos egyéb adatot is tartalmaz. A legfontosabbak az alábbiak:
Feladó címe. A feladó IP címe (192.168.1.3).
Címzett címe. A címzett IP címe (192.168.1.10).
Protokoll. Értéke a következő fejezetben ismertetésre kerülő szállítási réteg protokollját adja meg (TCP: 6, UDP: 17, ICMP: 1).
TTL (Time to Live). A TTL értéke eggyel csökken minden hálózati csomópontokon (routeren) történő áthaladás során. Amikor a TTL értéke 0 lesz, azt eldobják, így megakadályozva, hogy egy esetleges hibás beállítás következtében a csomag örökké a hálózatban keringjen, nagyszámú csomag esetén megbénítva annak működését (64).
Ellenőrző összeg. Ez a szám a csomag fejlécében rögzített adatok ellenőrző összege, melyet a feladó számít ki. Az ellenőrző összeget a csomagok sértetlenségének ellenőrzésére használják úgy, hogy azt a csomag továbbítását végző berendezések és a cél számítógép is újra és újra kiszámítja és eltérés esetén eldobja.
Adat. A címzettnek szóló adat.
4.4. Az útválasztás¶
A fejezet elején már volt szó arról, hogy az IP címeknek úgy kell felépülniük, hogy a cím ismeretében el lehessen dönteni, hogy a címzett az interneten hol, pontosabban melyik irányban helyezkedik el. A szakzsargonban ezt a tulajdonságot route-olhatóságnak nevezik, melynek alapja az ún. alhálózatok képzése.
Egy alhálózat általában egy kisebb vállalat, szervezet vagy iskola számára átadott címtartományt jelent. Az IP esetében ezeket a címeket nem véletlenszerűen, hanem tartományokra bontva osztják ki úgy, hogy egy alhálózatot egy szervezet használjon.

Alhálózatok és az útválasztás¶
Az IPv4 címtartományokat világszinten a Internet Assigned Numbers Authority (IANA) osztja ki. Ha egy szervezetnek (publikus) IP címekre van szüksége, végső soron ez a szervezet teszi ezt lehetővé. Az ábra első intézményénének kérelmére az IANA ezt valami ilyesmit válaszol:
„a 193.225.32-vel kezdődő alhálózat a tiéd. Az első három számjegyet meghatároztuk neked, minden belső címed ezzel kell, hogy kezdődjön, az utolsó helyen álló 255 számot viszont (erre még azért visszatérünk) a hálózatodon belül úgy használod, ahogy akarod. Az Interneten minden, 193.225.32-vel kezdődő címzésű csomagot a te alhálózatodba, a te routerednek fognak küldeni.”
Az ábra másik három alhálózatában is hasonló a helyzet, de számukra az IANA értelemszerűen más kezdő számsorozatot jelölt ki.
Tennivaló
IP hálózatok kiosztásának lekérdezése: whois 193.224.76.114 (https://www.whois.com/whois)
Az IP csomagok továbbítását a harmadik réteg útválasztó eszköze, a router (magyarul útválasztó) végzi, erre minden alhálózatnak szüksége van ahhoz, hogy az internet felé IP csomagokat tudjon küldeni. A router tehát útválasztást végez IP cím alapján (a switch szintén útválasztást végez, de azt a második réteg ethernet címei alapján teszi).
Mi történik akkor, amikor a 193.225.32.10
-es IP című gép egy adatcsomagot akar küldeni a 193.225.32.20
-as gépnek? Ekkor a két gép egy alhálózatban van, hiszen mindkettő címe a szervezet által használt 193.225.32.[0-255]
tartományba esik. Ekkor a routerre igazából nincs is szükség, a csomag továbbítása a switch feladata lesz. A feladó megkeresi a 193.225.32.20
IP című gép ethernet címét (!), az adatkapcsolati réteg elkészíti az címzettnek szóló ethernet csomagot, és a fizikai rétegen keresztül eljuttatja azt a cél számítógéphez. A vevő adatkapcsolati rétege pedig az ethernet csomag adatmezőjéből kiveszi az IP csomagot és átadja a harmadik rétegnek.

A routing működése azonos alhálózatban¶
A csomag továbbítása azonban más lesz akkor, ha a címzett nincs egy alhálózatban a küldővel. Ekkor ugyanis a switch nem tudja kézbesíteni a csomagot, hiszen csak a hozzá közvetlenül kapcsolt gépekkel képes kommunikálni, más alhálózatok gépeivel nem. A küldő adatkapcsolati rétege nem ismeri a címzett ethernet címét (de ha ismerné sem tudna mit kezdeni vele) ezért azt át kell azt adnia a routernek, ami a csomagot majd továbbítja az internet további routerei felé. Ezért az ethernet csomag címzett mezőjébe most a router MAC addressét írja (!), így a csomagot a router veszi. A router az adatmező kinyerése után az internet felé „néző” csatlakozóján keresztül kiküldi a csomagot a szolgáltató routerébe. Ennek során már egyáltalán nem biztos, hogy a második rétegben ethernet működik, egy 4G-s, mobilkapcsolattal működő router már a 4G-s kommunikációhoz szükséges adatkapcsolati protokollt és átviteli közeget használja majd.

A routing működése más alhálózatok felé¶
Ez az oka, hogy minden IP-képes számítógépnek – feltéve, hogy nem csak a helyi hálózatán belül szeretne kommunikálni – meg kell adni a router IP címét is. Ennek általában az alhálózat első vagy utolsó IP címét szokás adni, ez példánkban az előbbi: 193.225.32.1
. A router IP címét gyakran alapértelmezett átjáróként (default gateway-ként) is nevezik, ezt lehet látni az IP beállítások párbeszédpaneljén is.
A routing folyamatának megértése nagy lépést jelent a modern számítógépes hálózatok működésének elsajátításában, de még két, szorosan a témához tartozó kérdést tisztáznunk kell: az alhálózatok méretének megadását és az ARP protokoll szükségességét.
4.5. Az ARP¶
A routing mindkét példájában előállítottunk a címzett számára szóló ethernet csomagot, amit (!) jelzéssel meg is jelöltünk. Az ethernet csomagba a címzett MAC addressét kellett beírnunk, azonban eddig nem volt szó arról, hogy azt a küldő hogyan szerezheti meg. A küldő számítógép második rétegében nem elég a címzett IP címét ismernie, mert azt az ethernet csomagok címzésére nem tudja felhasználni, rendelkeznie kell a címzett ethernet címével is. Ezért szükség van egy nyilvántartásra, amelyben ezek az adatok megtalálhatók: ennek neve arp tábla (mindjárt kiderül miért adták ezt a nevet).
Az arp tábla tartalmát ismét csak a parancssorban lehet lekérdezni, a arp -a paranccsal. Az alábbi példában ennek kimentét látjuk, ebben leolvasható, hogy az operációs rendszer mely IP-Mac address párosokat ismeri. Ha a címzett ethernet címe szerepel az arp táblában, a küldés folyamata folytatható, egyébként azt fel kell függeszteni, és a szükséges ethernet címet valahogyan meg kell szerezni.
C:\Users\kf> arp -a
Interface: 193.225.32.10 --- 0x2
Internet Address Physical Address Type
193.225.32.20 F4:5C:89:12:34:56 dynamic
193.225.32.1 00:1B:44:7A:9C:AA dynamic
Szükség van tehát egy módszerre, ami lehetővé teszi, hogy egy IP cím ismeretében a MAC cím lekérdezhető legyen, és az az arp táblába kerüljön: ez az arp (Address Resolution Protocol). Az arp működése nem szokványos, mivel a feladat nyakatekert: egy gép hardver címét kellene lekérdezni annak tulajdonosától, anélkül, hogy ismerné a címét. (Mint ha egy telefonszámot úgy kellene megtudnunk, hogy előbb fel kellene hívnunk azt.) A megoldást egy mindenki számára szóló üzenettel lehet megoldani, amely során a feladó egy speciális hardver címet, az FF:FF:FF:FF:FF:FF
-et használja. Ez az ún. broadcast cím, amelyet az alhálózat minden számítógépe vesz, és sajátjának is tekint. Egy arp kérés ez alapján egy olyan, a hálózat minden gépe számára hallható üzenet, melynek tartalma: „hey, kinek a címe a 193.225.32.20?” Az üzenetet mindenki veszi, de csak egy gép válaszol majd rá, a 193.225.32.20 című, és a válaszban közli az ethernet címét. Ezt a forrás gép rögzíti az arp táblájába, majd folytatódik az eredeti küldési folyamat. A táblában szereplő dynamic
azt jelzi, hogy az összerendelés az arp protokollon keresztül, tanulással történt.
Megjegyzés
A broadcast üzenetek egyes pontokon rendkívül fontosak a hálózatok működésében. Nem csak az arp kérések során van rájuk szükség, más esetekben is találkozunk még vele. A broadcast üzenetekkel azonban óvatosan kell bánni, mivel azok nagyobb forgalmat generálhatnak akkor, ha arra mindenki válaszol.
Az arp kérések témája eléggé részletkérdésnek tűnik, de a kibervédelem szempontjából eléggé hangsúlyos terület ez – több támadási forma is a MAC címek hamisításán, és az arp tábla csaló értékeinek feltöltésével operál. Amellett, hogy lehetőség van az arp táblát a megfelelő paranccsal kézzel is módosítani, egy csaló gép az arp kérésekre hamis válaszokat is küldhet. Amennyiben sikerül a küldő arp táblájában szereplő ethernet címet módosítania, el tudja hitetni vele, hogy az eredeti számítógéppel kommunikál – így hamis adatokat küldhet számára, vagy lehallgathatja annak forgalmát.
Megjegyzés
Az arp paranccsal tetszőleges IP-MAC összerendelést lehet végezni a arp -s 193.225.32.88 00-0A-FA-44-12-AC paranccsal. Ekkor a bejegyzés
static
jelzővel kerül be az arp táblába.A bejegyzés az arp -d 193.225.32.88 paranccsal manuális úton törölhető.
4.6. Az alhálózatok típusai¶
A példánkban szereplő négy alhálózat mindegyikében az IANA az első három byte-ot rögzítette, és a negyedik felhasználását bízta a tulajdonosra. Az első három byte az alhálózatot azonosította, az utolsó pedig a gépeket. Tehát az első szervezet hálózata a 193.225.32
, a másodiké a 192.115.33
és így tovább. Mivel az utolsó helyre 256 különböző értéket lehet írni, egy ilyen hálózat birtokában egy cég (majdnem) ennyi gépet kapcsolhat az internetre. Ez sok cég számára több, mint elég, de nagyobb vállalatoknak ennél többre van szüksége. Számukra az lenne ideális, ha az IANA nem az első három byte-ot rögzítené, hanem csak az első kettőt, a fennmaradó két byte már a gépeket azonosítaná. Hány gépet lehetne egy ilyen alhálózatban működtetni? Elméletben 256x256-ot, azaz 65.536-ot. Bár ez már óriási címtartomány, a legnagyobb cégek esetén ez is kevés lehet, számukra az IANA csak az első számot teszi kötelezővé, és a maradék három helyre írt számok már a gépeket címzik. Egy ilyen hálózatban 2563 darab gép működhet. Ekkora címtartománnyal már tényleg csak a legnagyobbak, pl. a Google rendelkezik.
Azokat az alhálózatokat, amelyekben csak az első számjegyét rögzítették, A osztályú alhálózatoknak nevezik. Ebből összesen 127 van, az első számjegyek [1-127] közé esnek. Az A osztályú hálózatokban több mint 16 millió számítógép helyezhető el.
Osztály |
Tartomány |
Hálózatok száma |
Gépek száma |
---|---|---|---|
A |
1.0.0.0 - 127.255.255.255 |
127 |
2563 = 16 777 216 |
B |
128.1.0.0 - 191.255.255.255 |
16.128 |
2562 = 65.536 |
C |
192.1.1.0 - 223.254.254.255 |
2.031.616 |
256 |
A fentiek mellett létezik egy „D” osztály is, ezt a multicast adatforgalom számára tartják fenn.
Osztály |
Tartomány |
Hálózatok száma |
Gépek száma |
---|---|---|---|
D |
224.0.0.0 - 239.255.255.255 |
16 |
268.435.456 |
A D osztály ún. multicast címeket tartalmaz. Ezek speciális IP-címek, amelyeket arra használnak, hogy egy feladó egyszerre több, meghatározott célállomásnak tudjon adatot küldeni, anélkül, hogy mindegyiknek külön kellene egy csomagot létrehoznia. A multicast csomagok használatával a hálózat sávszélességével takarékoskodunk olyan esetekben, amikor ugyanazt az adatot több gépnek kell megkapnia. Tipikus példái a videokonferencia beszélgetések és az online rádiók, valamint a streaming videók, pl. a NetFlix.
A privát és a publikus címtartományok megismerése előtt tekintsünk át egy minden bizonnyal jól ismert példát, a cégek belső telefon mellékeivel kapcsolatban! Ennek működése jól példázza a privát alhálózatok működését!
Egy vállalat esetében gyakori a belső telefon mellékek használata. Egy ilyen mellék nem rendelkezik „valódi” telefonszámmal, csupán egy belső mellékként, pl. a 2514
-es számmal hívható. A munkatársak ezt a belső számot tárcsázhatják, ami csak ezen a belső hálózaton működik, azon kívülről nem hívható. Használhatja a 2514
-es melléket egy másik cég a saját belső hálózatában? Persze, de annak semmi köze az első cég ugyanazon mellékéhez, hiszen az is csak a saját, belső hálózatában él. Azt mondhatjuk, hogy a ezek a mellék számok belső, ún. privát számok, míg a „normál” telefonszámok ún. nyilvános hívószámok.
A belső telefon mellékek működésének módszerét alkalmazták az IP címek esetében is: bizonyos tartományokat az IANA nem oszt ki senkinek, hanem belső hálózati felhasználására tartja fenn azokat. Ezeket csak a helyi hálózatokon belül használják, és a nyílt Interneten nem működnek, mert a routerek nem továbbítják őket. A privát címek tartományait az RFC 1918 szabvány írja le.
Osztály |
Tartomány |
Hálózat |
Gépek száma |
---|---|---|---|
A |
10.0.0.0 - 10.255.255.255 |
1 db. |
2563 = 16 777 216 |
B |
172.16.0.0 - 172.16.255.255 |
1 db. |
2562 = 65.536 |
C |
192.168.0.0 - 192.168.255.255 |
256 db. |
2562 = 65.536 |
B - Ad-Hoc |
169.254.0.0 - 169.254.255.255 |
1 db. |
2562 = 65.536 |
A privát címek használata nagyban hozzájárult ahhoz, hogy az IP címek évtizedek óta emlegetett elfogyása még mindig nem okozott súlyos problémát. A munkaállomások többségének valójában nincs szüksége publikus címre, hiszen a legtöbb esetben csak szolgáltatást vesznek igénybe, amihez a privát cím tökéletesen megfelel. És bár az Interneten ezek a címek nem használhatók, a routerek egy speciális funkciójával, a NAT-tal ezek a munkaállomások is képesek az internet szolgáltatások igénybevételére. A NAT-ról bővebben majd a szállítási réteg megismerése után lesz szó.
Az ad-hoc hálózatról bővebben a DHCP szerverről szóló fejezetben foglalkozunk.
4.7. Egy hálózatban vagyunk?¶
A számítógépek hálózati beállítása során nem elég csak az IP címet és az alapértelmezett átjárót megadni, azt meg kell tudni adni, hogy a címben meddig tart az alhálózatot leíró rész, és honnan kezdődik a gépek leírása. Ez az információ feltétlenül szükséges ahhoz, hogy a számítógép egy csomag küldésekor el tudja dönteni, hogy a címzettel egy hálózatban van, vagy nem – hogy a csomag a helyi hálózatra küldve azonnal kézbesíthető, vagy a router fogja azt célba juttatni az interneten keresztül. Egy rendszergazdának ezért, amikor egy számítógép hálózati beállításait adja meg, ezt a határvonalat is le kell írnia, amit az ún. alhálózati maszkkal tehet meg. Ennek működési elvét, a hozzá kapcsolódó elméletet valamilyen szinten ismernünk kell. Sajnos a megértéséhez és a használatához elkerülhetetlen a kettes számrendszer használata, illetve a logikai ÉS művelet ismerete, így informatikai alapismeretek nélkül ez lehet a fejezet leginkább embert próbáló része.
Tennivaló
Amennyiben szükséges, a kettes számrendszer és a logikai műveletek ismertetése.
Amikor egy IP csomagot a számítógép küldeni szeretne, meg kell állapítania, hogy a címezettel egy hálózatban van-e. Ezért első lépésként meg kell állapítania a saját hálózati címét, majd ennek ismeretében meg kell néznie, hogy az azonos-e a címzett hálózatával. Egyezés esetén a címzett alhálózata azonos az feladóéval, így csak egy helyi hálózatba címzett ethernet csomagot kell előállítania, ellenkező esetben viszont az ethernet csomag címzettje a default gateway (másnéven alapértelmezett átjáró, vagyis a router) ethernet címe kell, hogy legyen.
A hálózat és a gépek elválasztási pontját tehát az alhálózati maszkkal adják meg. Ez formájában hasonló az IP címhez, szintén pontokkal elválasztott négy számból áll – felépítése viszont speciális: a kettes számrendszerbeli alakja mindig balról jobbra haladva először egymást követő egyesekből, majd csak nullákból állhat. Tehát a 11111111.11111111.11111111.00000000
egy lehetséges netmaszk, mert kielégíti ezt a feltételt, míg a 11111000.11111111.11111111.00000000
nem lehet érvényes netmaszk, mert balról jobbra haladva nem csak egyesekből, majd azt követően csak nullákból áll. A netmaszkban az egyesek és 0-k találkozási pontja adja meg az alhálózat és a gépeket leíró rész elválasztási pontját. Az alábbi példákban szereplő netmaszkok a C, a B és az A osztályú hálózatokat definiálják.

Az alhálózati maszk írja le az alhálózat és a gépek határát¶
A kettes számrendszerben leírt forma alapján lehet a netmaszk működését megérteni, de a gyakorlatban ebben a formában leírogatni meglehetősen kellemetlen lenne. Ezért a négy tagot tízes számrendszerben szokás írni. A példában szereplő A, B és C osztály alhálózati maszkjait könnyű megjegyezni, mert a 00000000
értéke a tízes számrendszerben is 0, a 11111111
-é pedig 255. A netmaszkok 10-es számrendszerbe váltott alakja az ábra jobb oldalán látható.
Megjegyzés
A netmaszkoknak egy még rövidebb leírási módja is létezik, amit CIDR (Classless Inter-Domain Routing) jelölésnek neveznek. Ebben a hálózat címének leírása után egy / jelet követően a bal oldali egyesek számát adják meg. Ez alapján a 192.168.1.0/24 azt jelenti, hogy a netmaszk 3*8 egyessel kezdődik, amit nullák követnek, így 255.255.255.0
formának felel meg. A 255.255.0.0
netmaszkot 2*8 darab egyes alkotja, ezért azt /16
-ként írjuk le. A /8 netmaszkban csak az első 8 bit 1-es, így azt /8
alakban írjuk. Az 10.0.0.0/8
ez alapján az egyetlen privát A osztályú hálózatot jelöli.
Az operációs rendszer tehát a netmaszk alapján dönti el, hogy egy hálózatban van-e a címzett géppel. Ehhez a következő lépéseket teszi:
Kiszámítja a saját hálózati címét.
A saját alhálózati maszkjával kiszámítja a címzett hálózati címét úgy, hogy bitenként ÉS logikai művelete hajt végre az IP cím és a netmaszk közt.
Ha a két hálózat azonos, akkor a címzett a feladóval egy hálózatban van, tehát az közvetlenül, egy ethernet csomaggal elérhető.
Ellenkező esetben a csomagot a routernek kell átadni, és az végzi annak továbbítását a címzett felé.
Lássunk erre néhány példát!
1. példa:
Egy hálózatban van a 192.168.10.11
és a 192.168.20.11
IP című gép, ha a netmaszk 255.255.255.0
?
A megoldáshoz először ki kell számítani a feladó hálózati címét. Ezt az IP cím és a netmaszk 2-es számrendszerbe átváltott alakján, bitenkénti ÉS műveletet végezve kapjuk meg. Az ÉS művelet igazságtáblája:
Igaz |
Hamis |
|
---|---|---|
Igaz |
Igaz |
Hamis |
Hamis |
Hamis |
Hamis |
Megjegyzés
Emberi nyelven megfogalmazva ez azt jelenti, hogy ha egy mondat két részállítást tartalmaz, amelyet ÉS-sel kötünk össze, akkor a teljes mondat csak akkor igaz, ha mindkét részállítás igaz. Ha két ÉS-sel összekapcsolt állítás egyik fele nem igaz, az az egész állítást hamissá teszi. Egy gyakorlati példán keresztül nézve: ha a férj késve ér haza, és azt mondja otthon: „Hazafelé benéztem a Két Pisztoly Sörözőbe és ittam egy pohár sört.” Ez a mondat akkor igaz, ha a férj pontosan az említett sörözőben volt és pontosan egy pohár sört (azt és annyit) ivott. Ha nem abban a sörözőben volt, vagy netán nem csak egy pohár sört ivott, a teljes mondat már hazugság lesz, így a feleség azt mondhatja neki: „Bélám, állításod logikai értéke hamis.”
Váltsuk tehát át a forrás IP címet és a netmaszkot, majd végezzük el az „éselést” (ez elég rosszul hangzik, de így mondják) az alábbi ábra alapján:

A bitenkénti ÉS művelet elvégzése¶
Először vizsgáljuk meg az IP cím és a netmaszk első bitjeit! Mindkettő 1-es értékű (azaz igaz), így az igazságtábla a alapján a hálózat első bitje is igaz lesz. A második bit esetében is ugyanez a helyzet. A harmadik bit vizsgálatakor azonban az IP címben már 0 (hamis) szerepel, így a hálózat harmadik bitje is 0 lesz (ha meggondoljuk, nem is lehet más, hiszen, ha bármelyik részállítás hamissága már a teljes kifejezést hamissá teszi.) Ugyanezt folytatjuk az összes többi bit esetében is, így a folyamat végén megkapjuk a hálózat címét, ami a 10-es számrendszerben 192.168.10.0
lesz.
192.168. 10.11: 11000000.10101000.00001010 .00001011
255.255.255.0 : 11111111.11111111.11111111 .00000000
----------------------------------------------------
Hálózat címe: 11000000.10101000.00001010 .00000000 = 192.168.10.0
Ugyanezt egyébként józan paraszti ésszel is megállapíthatjuk: A netmaszkunk ugyanis balról jobbra haladva az első három byte-on csupa egyest tartalmaz. Mivel az ÉS művelet csak akkor lehet igaz, ha az IP cím az adott pozíción 1-es, ezért a hálózat első három byte-ja pontosan az IP cím első három byte-ja lesz. A határvonalig tehát a hálózat címe és az IP cím azonos. Ez után viszont a netmaszk minden bitje 0, ami – bármi is legyen az IP címnek ezen a részén – mindent kinulláz. A hálózat címében a határoló vonaltól jobbra eső rész tehát mindig 0 lesz. A gyakorlatban a legtöbb hálózati adminisztrátor az A, B és C osztályú címek esetén így gondolkodik: a hálózat címe a határolóig azonos az IP-vel, utána pedig csupa 0.
Most már csak azt kell eldönteni, hogy a címzett is ebben a hálózatba tartozik-e. Ennek kiszámításához ugyanígy kell eljárni: számítsuk ki a 192.168.20.11
hálózati címét a saját netmaszkunkkal!
192.168. 20.11: 11000000.10101000.00010100 .00001011
255.255.255.0 : 11111111.11111111.11111111 .00000000
----------------------------------------------------
Hálózat címe: 11000000.10101000.00010100 .00000000 = 192.168.20.0
Látható, hogy a két alhálózat címe eltér, az egyik a 10-esben, a másik a 20-asban van, így ezek a gépek nincsenek egy hálózatban. A csomagot a routernek kell átadni, és az fog gondoskodni a célba juttatásról.
2. példa:
Most nézzük meg, hogy mi történik, ha az előző példában szereplő gépek netmaszkját 255.255.0.0
-re cseréljük! Ekkor az alhálózatunk sokkal nagyobb lesz, hiszen az első két byte határozza meg a hálózatot és a második kettő pedig a gépeket.
A forrás IP cím hálózatának kiszámítása most az alábbiak szerint alakul:
192.168. 10.11: 11000000.10101000.00001010 .00001011
255.255.255.0 : 11111111.11111111.00000000 .00000000
----------------------------------------------------
Hálózat címe: 11000000.10101000.00000000 .00000000 = 192.168.0.0
A cél számítógépé pedig:
192.168. 20.11: 11000000.10101000.00010100 .00001011
255.255.255.0 : 11111111.11111111.00000000 .00000000
----------------------------------------------------
Hálózat címe: 11000000.10101000.00000000 .00000000 = 192.168.0.0
Látható, hogy a két gép most egy alhálózatba tartozik, így azok közvetlenül a switch segítségével elérhetik egymást, most nincs szükségünk routerre.
Az ilyen típusú feladatok a hálózatok működésének és védelmének tervezésekor is meglehetősen fontosak – enélkül nem lehet egy hálózat felépítését megtervezni, valamint számos berendezés működését nem lehet átlátni. Ezért érdemes a kapcsolódó feladatokat megoldani, mert az lesz az alapja a tűzfalak, az IDS, IPS és más berendezések működésének alaposabb megismeréséhez. A bemutatott példák a témakör legegyszerűbbjei, mivel az alhálózataink pontosan a byte határoknál voltak. A gyakorlatban azonban ez nem követelmény, a határvonal a netmask byte-jainak belsejébe is eshet, ekkor – bár a módszer azonos – a kapott eredményeket már nehezebb átlátni.
Essen néhány szó egy alhálózat hálózati- és broadcast címéről. A hálózat címét két példában is kiszámoltuk, és láthattuk, hogy ez a tulajdonképp a gépek tartományának legkisebb címe. Ezért ezt a címet nem állíthatjuk be valamelyik gép IP címeként, azt foglaltnak kell tekintenünk. Ugyanez a helyzet a legnagyobb címmel is: a tartomány legnagyobb címe az összes gépnek szóló broadcast üzenet – így azt sem szabad beállítani valamelyik gép IP címeként. A 192.168.10.12/24
-es számítógép jellemzői az alábbiak:
IP: |
192.168.10.12 |
Netmask: |
255.255.255.0 |
CIDR: |
/24 |
Hálózat: |
192.168.10.0 |
Broadcast: |
192.168.10.255 |
Gépek száma: |
253 db. |
Első IP: |
192.168.10.1 |
Utolsó IP: |
192.168.10.254 |
Átjáró: |
192.168.10.1 vagy 192.168.10.254 |
4.8. A routing tábla¶
Az Interneten áramló csomagok célba juttatását tehát a routerek végzik. Ezek működése hasonló a hagyományos levelek irányításához, melyet a Magyar Postán működő berendezések segítségével automatikusan végeznek.

Levelek célba juttatása az irányítószám alapján¶
A gép minden egyes levélen levő szöveget beszkennel, és felismeri a címzett irányítószámát. A levél további útját ez a szám fogja meghatározni. Közismert, hogy a budapesti irányítószámok 1-essel kezdődnek, és az ezt követő két számjegy a kerületet azonosítja. A gép ezért ez alapján a két szám alapján a leveleket a kerületbe tartó ládába dobja. Ezeket a ládákat aztán a kerületi postahivatalokba viszik, ahol végül a postások azokat kézbesítik.
A gép programja egy irányítószám - láda kapcsolatokat leíró táblázat alapján működik, mi tartalmazza, milyen irányítószám részletre melyik ládába kell dobnia a küldeményt. A táblázat az alábbi formájú lehet:
Irsz |
Láda |
---|---|
101[0-9] |
I |
102[0-9] |
II |
103[0-9] |
III |
104[0-9] |
IV |
… |
… |
123[0-9] |
XXIII |
Minden |
Nem Budapest |
A nem Budapestre címzett levelek nem egyessel kezdődnek, ezért a gép ezeket nem tudja célba juttatni. Ez az első számjegy alapján nyilvánvaló a számára, ezért azokat egyszerűen egy elkülönített ládába dobálja. Ezek további feldolgozását más gépek feladata lesz.
Egy router hasonlóképpen működik, csak ez levelek helyett IP csomagokat irányít a céljuk felé. Míg az előző példában az irányítás alapját az irányítószámok és ládák táblázata jelentette, a router az egyes alhálózatok közötti forgalom irányítását egy hasonló táblázat, az ún. routing tábla alapján végzi el. A router útválasztási folyamatában – ugyanúgy, mint a levelekében – csak a csomag címzettje számít, a router nem foglalkozik azzal, hogy az merről érkezett. Egy egyszerű, csak egyetlen alhálózatot kiszolgáló router esetében a routing tábla meglehetősen egyszerű, gyakorlatilag két sorból áll, ahol a irányítószám részletek helyett IP hálózatok, a ládák helyett pedig a router megfelelő interfészeinek nevei (pl. fa0/1
, fa0/2
stb. ) szerepelnek.

A 193.225.32.0/24 hálózat routere¶
Az ábrán szereplő router egy kis intézmény hálózatát szolgálja ki. Mivel abban egyetlen alhálózat működik, ezért a bejövő csomagokat, feltéve, hogy azok címzettje a 193.225.33.0/24
-es hálózatba tartozik, be fogja küldeni a hálózatan működő switch felé. Ez alapján a router routing táblája az alábbi felépítésű:
Sorszám |
Hálózat |
Netmaszk |
Interfész |
---|---|---|---|
1 |
193.225.32.0 |
255.255.255.0 |
fa0/1 |
2 |
0.0.0.0 |
0.0.0.0 |
fa0/3 |
Hogyan használja a router a routing tábláját egy beérkező csomag továbbításakor? Első lépésként a csomagból kiolvassa a címzett címét, és eldönti, hogy a routing táblának van-e olyan sora, amelyben a hálózat címe megegyezik a csomag hálózatának címével. Ha talál ilyet, akkor a csomagot az adott sorban szereplő interfészre fogja továbbítani.
A keresést az első sorral kezdi, és a már látott éseléssel a címzett IP címéből és a sorban szereplő netmaszkból kiszámítja a hálózat címét. Ha ez megegyezik sorban szereplő hálózati címmel, akkor a csomagot ebbe a hálózatba kell küldeni. Ha nincs egyezés, a folyamatot a router a következő sorral folytatja.
De mit jelent az utolsó sorban szereplő 0.0.0.0
hálózat és a 0.0.0.0
alhálózati maszk? Ez tulajdonképp az Posta gépében a „Nem Budapest” láda, azaz a router alapértelmezett átjárója. Az fa0/3
az az interfész, amely a felettes routerhez kapcsolódik, és minden olyan csomagot, amelynek címzettjéhez a roting tábla nem tartalmaz megfelelő sort, ehhez kell továbbküldeni. Az alapértelmezett átjárót azért írjuk le a 0.0.0.0
hálózattal és netmaszkkal, mert ez a páros minden csomagra illeszkedik. Ez az alábbi példa alapján nyilvánvaló: a netmaszk 0 bitjei mindent hamissá tesznek, tehát bármilyen cím és a 0.0.0.0
netmaszk hálózata szükségszerűen a 0.0.0.0.
lesz.
192.168. 20.11: 11000000.10101000.00010100 .00001011
255.255.255.0 : 00000000.00000000.00000000 .00000000
----------------------------------------------------
Hálózat címe: 00000000.00000000.00000000 .00000000 = 0.0.0.0
Az alapértelmezett átjárónak mindig a routing tábla utolsó sorában kell elhelyezkednie. Egy olyan zárt hálózat esetén, melynek nincs internet kapcsolata, meg sem kell adni, a router azokat a csomagokat, amelyek a routing tábla egyik sorának sem felelnek meg, egyszerűen eldobja.
Lássunk most egy összetettebb példát! A router működési elve nem változik, de most egy nagyobb szervezet két, egymástól távolabb eső épületét kapcsolja össze. Az egyik épületben a 193.225.32.0/24
-es, a másikban pedig a 193.225.33.0/24
-es hálózat működik. A két hálózatot a router köti össze, és ennek feladata a csomagok továbbítása. Az ehhez szükséges routing táblának mindkét hálózatot le kell írnia, valamint tartalmaznia kell egy alapértelmezett átjárót is.

Egy nagyobb szervezet két alhálózattal¶
A routing tábla most így épül fel:
Sorszám |
Hálózat |
Netmaszk |
Interfész |
---|---|---|---|
1 |
193.225.33.0 |
255.255.255.0 |
fa0/2 |
2 |
193.225.32.0 |
255.255.255.0 |
fa0/1 |
3 |
0.0.0.0 |
0.0.0.0 |
fa0/3 |
A routernek ebben a hálózatban három, különböző esetet kell kezelnie, melyek az alábbiak:
Egy csomag érkezik, melynek címzettje a
193.225.32.44
. Az IP címet az első sorban szereplő255.255.255.0
netmaszkkal a193.225.32.0
hálózatot kapjuk, ami megegyezik az első sorban szereplő hálózati címmel. Ezért a csomagot a sorban szereplőfa0/2
-es interfészre továbbítjuk.Egy csomag érkezik, melynek címzettje a
193.225.33.44
. Az IP címet az első sorban szereplő255.255.255.0
netmaszkkal a193.225.33.0
hálózatot kapjuk, ami nem egyezik meg a sorban szereplő hálózati címmel. Ezért a következő sorra lépünk, és az ott levő netmaszkkal újra elvégezzük az éselést. Most egyezést kapunk, ezért a csomagot a sorban szereplőfa0/1
-es interfészre továbbítjuk.Ha a csomag címzettje az
1.1.1.1
, akkor az éselések az első két sor esetén nem hoznak egyezést. Ezért végül az utolsó sorban szereplő, alapértelmezett átjáró sor feldolgozása következik, ahol a csupa 0 számjegyekből álló netmaszk mindenképp egyezést hoz, így a csomagot a router azfa0/3
interfészen keresztül az alapértelmezett átjárónak küldi el.
Egy komplex hálózatban nem csak egy router működik. Ezekben a végpontokhoz közeli berendezések néhány kisebb hálózatot kötnek össze, a felettes routerek pedig egyre nagyobb hálózatokat fednek le. Az alábbi példában egy háromszintű hálózatra látunk példát.

Egy összetett hálózat működése¶
Ebben a 193.225.32.0/24
hálózat működése pontosan megegyezik az eddigiekkel, ezért annak működésével most nem foglalkozunk. A 19.225.33.0/24
-es és a 193.225.35.0/24
-es hálózat egy szervezethez tartozik, amit az két telephelyén, az előző példa mintájára használ. A cég routerének routing táblája is az előző példában ismertetett módon épül fel:
Sorszám |
Hálózat |
Netmaszk |
Interfész |
---|---|---|---|
1 |
193.225.33.0 |
255.255.255.0 |
fa0/1 |
2 |
193.225.34.0 |
255.255.255.0 |
fa0/2 |
3 |
0.0.0.0 |
0.0.0.0 |
fa0/3 |
Az ábra középső routerének a 32-es, 33-as és a 34-es hálózat forgalmát kell irányítania, ezért a routing táblájának ezekre a hálózatokra vonatkozó sorokat kell tartalmaznia.
Sorszám |
Hálózat |
Netmaszk |
Interfész |
---|---|---|---|
1 |
193.225.32.0 |
255.255.255.0 |
fa0/2 |
2 |
193.225.33.0 |
255.255.255.0 |
fa0/1 |
3 |
193.225.34.0 |
255.255.255.0 |
fa0/1 |
4 |
0.0.0.0 |
0.0.0.0 |
fa0/3 |
De a szolgáltató routerének is van felettes routere, amely akár más városban levő hálózatok kapcsolódását biztosítja. Ez a felettes router még nagyobb routing táblával rendelkezik, mely a saját fa0/1
interfészére küldi a 32-es, 33-as és a 34-es hálózat forgalmát is. Az egyes szolgáltatók nagyobb IP hálózatokkal rendelkeznek, ami lehetővé teszi, hogy a felettes routerek routing tábláiban már csak egyetlen sorral lehessen leírni azokat. Ezért a gyakorlatban, ahol a 193.225.32.0/24
-es hálózat az egri egyetemé, a 193.225.220.0/24
-es hálózatot Egertől nem távol elhelyezkedő intézmény részére adják ki azért, hogy a felettes routerek valamelyikében már a 193.225.0.0/16
-os hálózatot leíró sorral lehessen az útválasztást biztosítani.
4.9. Még egyszer a TTL-ről¶
A fenti példákban láttuk, hogy a routerek a csomagokat a címzettjeik fel továbbítják. A gyakorlatban könnyű lenne egy hálózatot hibás routing táblákkal működésképtelenné tenni. Ha pl. két router egymás alapértelmezett átjárója lenne, egy idegen hálózatba címzett csomagot a végtelenségig dobálnának egymás között, ami előbb utóbb felemésztené a kettőjük között rendelkezésre álló sávszélességet. Ennek elkerülésére van szükség a már említett TTL-re. Ez tehát az IP csomag egy mezője, melynek kezdeti értékét a feladó pl. 64-re állítja be. A routerek a csomag minden egyes továbbítása után eggyel csökkentik a TTL értékét, így a célba érkezéskor ez annyival lesz kevesebb, ahány routeren az áthaladt. A TTL ilyen működése megakadályozza, hogy az említett pattogás vég nélkül történjen, amikor a TTL mező értéke 0 lesz, a routerek eldobják a csomagot.

A TTL értéke minden továbbításkor eggyel csökken.¶
4.10. A VPN¶
Egy intémény számítógépes hálózatában rendszerint különféle kiszolgáló számítógépek és nyomtatók érhetők el, amelyek a helyi hálózaton kapcsolódó számítógépeket szolgálják ki. Ezek a kiszolgálók pl. adatbázis szerverek, melyek a kliensek által közösen használt adatbázist tartalmazzák, fájlszerverek, melyek a kliensek fájljait tartalmazzák és a jogosultságaik alapján tesznek elérhetővé, de számos más fajtájuk létezik. Mivele ezek a szerverek rendszerint nem nyilvános adatokat tartalmaznak, a rendszergazdák nem teszik lehetővé, hogy azok az Internet irányából elérhetők legyenek. Ugyanakkor a cégek egyes munkatársak számára biztosítani akarják a távoli munkavégzés lehetőségét pl. a home office-ban dolgozók, vagy a mobilitást igénylő munkakört ellátók (pl. kereskedők, üzletkötők) részére. Számukra a biztonságos távoli hozzáférést a VPN (Virtual Private Network) biztosítja. (Figyelem! A VPN nem azonos az adatkapcsolati rétegben tanult VLAN-nal, ne keverd össze őket!)
A VPN az interneten keresztül egy titkosított kapcsolatot hoz létre egy felhasználó számítógépe (telefonja, tabletje stb.) és egy távoli szerver vagy hálózat között úgy, mintha a felhasználó eszköze közvetlenül védett hálózatra lenne csatlakozva. Technikai szempontból a VPN tulajdonképpen egy „alagút” mely titkosított adatkapcsolatot biztosít, így biztonságos adatátvitelt nyújt egy nyilvános vagy nem biztonságos hálózaton keresztül. A VPN-ek különböző titkosítási algoritmusokat használnak annak érdekében, hogy az alagúton keresztül küldött adatok értelmezhetetlenek legyenek egy olyan támadó számára, aki képes a forgalom lehallgatására. A titkosítás lehetővé teszi, hogy forgalom érzékeny adatatai biztonságosan átvihetők legyenek.
A VPN-kapcsolat kialakítása előtt a felhasználónak és a VPN-szervernek azonosítania kell egymást. Ez általában felhasználónévvel és jelszóval, illetve digitális tanúsítványokkal történhet. Azonosítás nélkül a VPN kapcsolatok nem építhetők fel.
Tennivaló
VPN kapcsolat létrehozása Windows és Mikrotik router között.
A VPN kapcsolatokat gyakran használják a felhasználó kilétének elrejtésére. Egy élő VPN kapcsolat során a kliens teljes adatforgalma azon keresztül folyik, így pl. webodalak böngészése során is úgy látszik, mintha a kérés a védett hálózatból érkezett volna. Ezzel az oldal lekérését végző személy el tudja érni, hogy webszerver az ő IP-je helyett a célhálózat átjárójának IP címét rögzítse forrás címként. Ez az oka annak is, hogy egy kibertámadás nyomainak elemzésekor a rendszer logokban szereplő IP címekkel nagyon óvatosan kell bánni, egyáltalán nem biztos, hogy azok valóban a támadót azonosítják.
Tennivaló
A forrás IP cím ellenőrzése a https://www.whatismyip.com oldalon
A VPN alkalmas a tűzfalak korlátozásainak kijátszására is. Amennyiben egy intézményi hálózat belső forgalmát korlátozzák, egy külső VPN szerverhez kapcsolódva ezek a korlátozások nem lesznek érvényesek. Többek között ezért olyan népszerűek a VPN szolgáltatók a nagy Kínai Nagy Tűzfal mögött – egy európai vagy amerikai kapcsolat kiépítése után egy titkosított csatornán keresztül már bármilyen tartalom elérhető számukra.

Az ExpressVPN egy amerikai kapcsolattal¶
4.11. Támadási módszerek¶
A hálózati réteg támadására több, közismert módszer létezik, melyek közül a leggyakoribbak az alábbiak:
Tennivaló
Arp poisoning bemutatása
IP cím hamisítás (IP Spoofing)
A támadó a csomagok feladójaként nem a saját, hanem valamely más számítógép IP címét adja meg. Mivel a routerek csak a címzett alapján továbbítják a csomagokat, ezért a hamis feladójú csomagok is célba érnek. A csomag megtévesztheti a címzettet, ami azt hiszi, hogy azt egy másik feladótól kapta. Amennyiben a küldött csomag valamilyen biztonsági hibát használ ki, pl. a kiszolgáló leállását okozza, a technika alkalmazásával a feladó kiléte ismeretlen marad.
A feladó hamisítása azzal jár, hogy a címzett az esetleges válaszokat nem az eredeti feladónak, hanem a hamisított címre küldi vissza. Ez utóbbi technikát használják az ún. DDOS (Distributed Denial of Service) támadásokkor, amely során az Internet számos gépének küldenek olyan csomagokat, melyek nagymennyiségű választ küldenek a csomag hamisított feladójának, a megtámadni kívánt gépnek. A védekezés meglehetősen nehéz, mert támadók a kéréseket számos, egymástól távol elhelyezkedő gépnek szokták küldeni, amelyek a válaszokkal így így egyetlen gépet bombáznak.
Közbeékelődéses támadás (Man in the Middle)
A közbeékelődéses támadás (Man in the Middle) során, melynek több, különböző rétegben működő variánsa is van, a támadó két, egymással kommunikáló fél közé ékelődik be úgy, hogy a kettőjük közötti forgalom rajta keresztül kerül továbbításra. A támadó így minden adatforgalmat megismerhet és tetszés szerint módosíthat is azok tartalmát. Az ilyen típusú támadások megelőzésének egyik legbiztosabb módszere az adatforgalom titkosítása a kommunikáló felek közt.
4.12. Ellenőrző kérdések¶
Miért van szükség routerekre? Miért nem elég csak switcheket alkalmazni?
Mi a különbség a hub, a switch és a router között?
Mit jelent az, hogy az ethernet csomagok nem routolhatók?
Mi az encapsulation?
Mit értünk az alatt, hogy az IP címzés eszközfüggetlen?
Hogyan épülnek fel az IP címek?
Milyen osztályokba sorolták az IP tartományokat?
Mik a privát és mik a publikus címek?
Mi az alhálózati maszk felépítése, és mire használjuk?
Mi az alapértelmezett átjáró (default gateway) feladata?
Honnan tudja egy munkaállomás, hogy mi az alapértelmezett átjáró IP címe?
Miért kell az alapértelmezett átjárónak egy hálózatban lennie a többi állomással?
Milyen parancsok használhatók az IP maraméterek lekérdezésére?
Melyik szervezet dönt az IP címek kiosztásáról?
Mi az útválasztás lényege?
Hogyan szerezhető meg egy IP címhez tartozó ethernet cím?
Melyik paranccsal lehet lekérdezni és módosítani az arp tábla tartalmát?
Mi a broadcast, milyen célt szolgál és melyik cím tartozik hozzá?
Mi a logikai ÉS igazságtáblája?
Hogyan lehet eldönteni, hogy két IP cím egy hálózatba tartozik-e?
Hogyan dönti el egy számítógépe, hogy egy IP csomagot közvetlenül a címzettnek, vagy a routernek kell küldenie?
Mi a CIDR és hogyan kell értelmezni?
Hogyan épül fel egy router routing táblája?
Mi a TTL szerepe és hogyan működik?
Milyen, a hálózati réteget érintő támadási módszereket ismer?