Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Távközlési és Médiainformatikai Tanszék
Juniper mérési segédlet Felkészülés az Információs Rendszerek Üzemeltetése (IRÜ) tantárgyi mérésre
Tartalomjegyzék 1. Bevezetés ................................................................................................................... 2 2. A Junos OS működése................................................................................................ 3 3. Vezérlési és továbbítási síkok (Control and Forwarding planes) ................................. 4 3.1 Áthaladó forgalom (Transit Traffic) ........................................................................ 5 3.2 Kivételes forgalom (Exceptional Traffic) ................................................................ 5 4. Kezelői felületek: Webes GUI és CLI .......................................................................... 6 4.1 A Command Line Interface (CLI) ........................................................................... 7 4.2 Segítség kérése - (?) ............................................................................................. 8 4.3 Konfigurációs változtatások ................................................................................... 8 4.4 Ne felejtsük el érvényesíteni a változásokat .......................................................... 9 5. Szintaxis .................................................................................................................... 10 6. A kezdő konfiguráció lépései ..................................................................................... 11 6.1 A gyári alapbeállítások visszaállítása .................................................................. 12 7. Routing konfiguráció.................................................................................................. 13 7.1 A routing bejegyzések forrásai............................................................................. 13 7.2 A forwarding tábla ................................................................................................ 15 7.3 Konfiguráció CLI-n keresztül ................................................................................ 16 8. Biztonsági beállítások................................................................................................ 17 8.1 Routing vezérelv (Routing policy) ........................................................................ 17 8.2 Biztonsági zónák.................................................................................................. 18 9. A mérés során használt leggyakoribb parancsok ...................................................... 19 1
1. Bevezetés Ahhoz, hogy napjainkban a hálózatok és szolgáltatások világában alkotó mérnökként tudjunk tevékenykedni, szükség van egy bizonyos szintű tudásra, szakértelemre a témával kapcsolatban. A számítógép-hálózatok alapjait követően érdemes részletesebben is megismerkednünk a hálózati eszközök felépítésével, működésével, a hálózattervezés alapjaival, valamint az útvonalválasztás (routing) témakörével is. Ezt a tudást valódi eszközök működésének megismerésével tovább mélyíthetjük. Jelen segédlet célja, hogy megismertesse a hallgatót vállalati környezetben is használatos hálózati eszközökkel (switchek, routerek, tűzfalak), valamint betekintést nyújtson alapszintű konfigurációs és hibaelhárítási lehetőségekbe is. A segédlet többnyire a Juniper Networks cég termékeit, technológiáját veszi alapul. A Juniper Networks, Inc. fő profilja hálózati szolgáltatások és eszközök tervezése és gyártása. A céget 1996-ban alapították, székhelye a kaliforniai Sunnyvale-ben található. Világszerte közel 10.000 alkalmazottal dolgoznak és a Cisco egyik legnagyobb konkurenciájaként működnek. A laboratóriumi mérés keretében ezen gyártó eszközein oldanak meg különféle feladatokat a hallgatók. További információ a cégről az alábbi dokumentumban olvasható: http://www.juniper.net/assets/us/en/local/pdf/fact-sheets-backgrounder/3000054-en.pdf
2
2. A Junos OS működése A Junos OS egy FreeBSD UNIX alapokra épülő robosztus, moduláris felépítésű hálózati operációs rendszer. A cég különböző platformjain és eszközein ugyanezen rendszer különféle változatai futnak. Ez azért előnyös, mert így elég egyszer megismerkednünk a rendszerrel, a különböző termékeket hasonló módokon tudjuk konfigurálni, üzemeltetni. Számos vezérlési, beállítási és lekérdezési funkciót azonos módon érünk el más és más eszközön, ezzel is leegyszerűsítve a hálózatunk üzemeltetésével és karbantartásával járó feladatokat.
A Junos OS működése több folyamatra van bontva. Minden folyamat az eszköz funkcióinak egy részhalmazáért felel. A folyamatok külön-külön egy-egy védett memóriaterületen működnek, ezzel biztosítva, hogy egy folyamat ne tudjon közvetlenül hozzáférni egy másikhoz. Amennyiben egy folyamat leáll, az nem feltétlenül vonja maga után a teljes rendszer leállását. Ennek a felépítésnek köszönhetően a rendszerhez úgy adhatók hozzá új funkciók, hogy közben az aktuális működést nem zavarjuk. 1. ábra. A Junos OS moduláris felépítése.
3
3. Vezérlési és továbbítási síkok (Control and Forwarding planes) A Junos OS kialakításának különlegessége, a Vezérlési (Control) és a Továbbítási vagy Adat (Forwarding) síkok szétválasztása. Azok a folyamatok, amik az útvonalválasztást (routing) és a kapcsolási (switching) protokollokat vezérlik, teljesen szét vannak választva azoktól a folyamatoktól, amik csomagok vagy keretek továbbításával foglalkoznak. Ez a kialakítás lehetővé teszi, hogy ezek a folyamatok a lehető leghatékonyabb és legmegbízhatóbb környezetben működjenek.
2. ábra. A vezérlési és továbbítási síkok.
A fenti ábra a Junos architektúrát mutatja be, kiemelve a Control és Forwarding síkokat. A Control sík futtatja a Routing Engine-t (RE). A Routing Engine tartja karban a különféle adatbázisokat, melyek az eszköz működéséhez elengedhetetlenek. Erre példa az útvonalválasztó tábla (Routing Table, RT) vagy a csomagtovábbító tábla (Forwarding Table FT). A vezérlési síkon történik továbbá a készülékházzal kapcsolatos adatok (hőmérséklet, hűtés, stb.) monitorozása is, valamint ez a sík látja el a csomagtovábbító (Packet Forwarding Engine, PFE) vezérlését is. A Routing Engine-en futó különböző folyamatok védett memóriaterületek alkalmazásával különülnek el egymástól. Az RE és a PFE egy belső buszon keresztül kapcsolódik egymáshoz. Az ábrán a Packet Forwarding Engine a szaggatott vonal alatt látható; ennek oka, hogy a PFE általában a Routing Engine-től elkülönült hardveren fut. A PFE az eszközön áthaladó csomagok továbbításáért felelős, a Forwarding Table (FT) által vezérelt módon. Azokat a csomagokat, melyeket magának az eszköznek címeztek, valamint azokat, melyekre vonatkozóan még nincs bejegyzés a FT-ben, a vezérlési síkbeli Routing Engine dolgozza fel.
4
Bizonyos, Junos-t használó platformok a magasabb teljesítmény érdekében speciális integrált áramköri megoldásokat használnak a PFE alkalmazás futtatására. Ezek architekturális kialakítása különválasztja a vezérlő utasításokat (protokoll frissítések és rendszer management) a csomagtovábbító műveletektől. Érdekesség, hogy a két sík közötti belső kapcsolat korlátozott sebességű, ezáltal elkerülhetőek az eszközt érő esetleges szolgáltatás-megtagadásos támadások (Denial of Service, DoS), ugyanis torlódás esetén a vezérlési adatok prioritást élveznek az egyéb adatforgalommal szemben.
3.1 Áthaladó forgalom (Transit Traffic) Az összes továbbítandó csomag, ami az eszközhöz érkezik, összehasonlításra kerül a PFE-ben lévő Forwarding Table bejegyzéseivel, és az adott csomag mindig a leghosszabb, legteljesebb egyezést mutató szabály szerint továbbítódik (most specific route). Az ilyen forgalom soha nem jut el a vezérlő síkra, annak a CPU-ját nem terheli (lásd az alábbi ábrán).
3. ábra. Az áthaladó forgalom.
3.2 Kivételes forgalom (Exceptional Traffic) Az áthaladó forgalommal ellentétben léteznek olyan kivételek, amikor a bemenő csomagokkal nem a PFE foglalkozik, hanem egyből továbbítja a vezérlési síknak. Ilyen csomagok lehetnek: ● Routing protokoll frissítések, telnet session, ping, traceroute – illetve válaszok, amik az RE-ből kezdeményezett forgalomra érkeznek. ● IP csomagok IP beállításokkal (Az IP fejlécen belül érkező beállítások elég ritkák, de a PFE szándékosan nem is próbálja meg kezelni őket, ezeket a csomagokat az RE dolgozza fel.) ● Olyan csomagok, amelyekre válaszul ICMP üzeneteket kell generálni.
5
A forgalom vezérlését ilyenkor a Routing Engine CPU-ja végzi, ahogyan az alábbi ábra is mutatja.
4. ábra. A kivételes forgalom.
4. Kezelői felületek: Webes GUI és CLI A különböző gyártók hálózati eszközei általában két fő konfigurációs módszerrel rendelkeznek. Ezek egyike a Command Line Interface (CLI), azaz a parancssoros felület, míg a másik lehetőség a webes grafikus felület használata. A J-Web GUI-n elérhető konfigurációs lehetőségek gyártónként eltérnek egymástól. A Cisco, illetve a Juniper is elsősorban a CLI használatát javasolja konfigurációs feladatok ellátására. Az alábbi képen a JunOS webes kezelői felületéről látható egy részlet. A mérés során ezzel szemben kizárólag a parancssoros vezérléssel (CLI-vel) fogunk dolgozni.
5. ábra. Részlet a J-Web grafikus kezelői felületről.
6
4.1 A Command Line Interface (CLI) Célszerű a konfigurációval kapcsolatos ismerkedést a CLI-nél kezdeni, hiszen ez az a felület, melyen a hálózati eszköz minden funkciója, szolgáltatása kivétel nélkül elérhető. Sokan hónapokat, éveket foglalkoznak egy-egy gyártó parancssori felületével, míg igazán kiismerik magukat a rendszerben. Ennek a mérésnek a célja a legfontosabb ismeretek elsajátítása – ebben az útmutatóban a CLI használatához szükséges alapvető ismereteket is összefoglaljuk. A mérés során a feladatokat a CLI segítségével fogjuk megoldani. A parancssoros kezelői felület segítségével lehetőségünk nyílik a hálózati eszközök konfigurálására, illetve a hibaelhárításra is megkapjuk a szükséges eszközöket. A CLI két móddal rendelkezik, ezek az Operational (működtetési) és Configuration (konfigurációs) módok. Operational módban az eszköz szoftverének és hardverének, valamint a hálózatnak a monitorozására – illetve az ezekkel kapcsolatos hibakeresésre van lehetőségünk. A Configuration mód ad lehetőséget a hálózati interfészek, útvonalválasztó protokollok, illetve egyéb funkciók beállítására. Első belépéskor (mely történhet Telnet, SSH, vagy konzol portos csatlakozás segítségével) a felhasználót egy login prompt fogadja. A helyes felhasználónév/jelszó páros megadását követően automatikusan Operational módba kerülünk. Az Operational módot a > karakter jelöli a képernyő bal oldalán, a felhasználói adatok mellett. Erre mutat példát az alábbi CLI-ből kimásolt kódrészlet (az eszköz hosztjának neve IRUlab, a felhasználó neve pedig hallgato – a beírt jelszó biztonsági okokból nem olvasható a konzol kimenetén): IRUlab (ttyd0) login: hallgato Password: --- Junos 10.4R1.9 built 2010-12-08 16:25:40 UTC hallgato@IRUlab> Amennyiben a root jogosultságú felhasználóval jelentkezünk be, az Operational mód helyett közvetlenül a shell-be kerülünk, melyet a % karakter szemléltet a > helyett). Ebben az esetben a cli parancs kiadásával indíthatjuk el a parancssori folyamatot és léphetünk Operational módba. Operational módból a configure paranccsal léphetünk Configuration módba, amit a # karakter jelöl.
7
4.2 Segítség kérése - (?) A CLI a könnyebb felhasználhatóság érdekében környezetfüggő (context-sensitive) segítséget nyújt, bárhol járunk is a command line-ban. Elmondja, milyen használható beállítási lehetőségeink vannak az adott ponton és részletes leírással is segíti az utasítás további opcióinak megértését. Ha bárhol elakadunk, vagy nem tudjuk, hogy az adott parancs után milyen elérhető lehetőségeink vannak, csak gépeljünk be egy kérdőjelet (?). Az entert nem kell lenyomni, mert amint begépelésre kerül a kérdőjel az operációs rendszer rögtön kilistázza az elérhető felhasználói beállításokat vagy lehetséges további opciókat. A listázás után rögtön visszakerülünk a command line-ban arra a pontra, ahol beírtuk a kérdőjelet.
4.3 Konfigurációs változtatások A konfigurációs változtatások a Junos OS-en belül nem lépnek rögtön érvénybe. Ezzel lehetőségünk van arra, hogy csoportosítsuk a konfigurációs beállításokat, mielőtt hozzáadnánk azokat egy már futó konfigurációhoz. A konfigurációk típusai: ● Aktív konfiguráció (Active Configuration): Az éppen rendszeren futó konfiguráció. Ezt tölti be a rendszer egy adott bootoláskor. ● Jelölt konfiguráció (Candidate Configuration): Egy átmeneti konfiguráció, amiből aktív konfiguráció is lehet. Amikor egy futó eszközön változtatjuk a konfigurációs beállításokat, akkor a rendszer létrehoz egy jelölt konfigurációt, amin tudunk dolgozni. Utána lehetőségünk van arra, hogy ezt megtegyük aktívnak úgy, hogy az összes változtatásunkat élesítjük (commit) az eszközön. Ekkor válik a jelölt konfiguráció aktívvá. Ezt mutatja be az alábbi ábra.
6. ábra. A konfigurációk típusai.
8
Amikor az eszközön a konfigurációs módba lépünk (a configure parancs kiadásával), a rendszer létrehoz egy jelölt konfigurációt, amit az éppen aktív konfiguráció beállításaival tölt fel. Ahhoz, hogy a jelölt konfigurációnak legyen bármi hatása, commitolnunk kell. Egy commit után a Junos OS ellenőrzi, hogy szintaktikailag helyes-e az a konfiguráció, amit éppen élesnek szeretnénk megtenni. Ha bármi hibát talál, akkor egy hibaüzenetet dob, és a jelölt konfiguráció egyik része sem aktiválódik. Ahhoz, hogy valóban élesítsük, ki kell javítani a hibaüzenetben jelzett problémákat. Könnyen vissza tudunk térni egy korábbi, már működő konfigurációnkhoz a rollback n paranccsal (ahol n az a szám, ahova szeretnénk rollbackelni [0-49]). A Junos OS az előző 50 aktív konfigurációt tárolja, amiknek a sorszáma minden commit esetén 1-gyel növekszik (lásd 6. ábra). Ebben az 50-ben az éppen aktív konfiguráció is benne van a 0. indexen. Miután rollback-eltünk, a rendszer betölti az adott konfigurációs fájlt, és utána ugyanúgy commit-olni kell, különben nem lesz változás a rendszeren futó aktív konfigurációban.
4.4 Ne felejtsük el érvényesíteni a változásokat Az élesítésnek (commit) rettentő fontos szerepe van a konfigurálás során. A továbbiakban áttekintjük azokat az élesítési opciókat, amiket a labor alatt használnunk kell majd, illetve amiről hasznos, ha minden hallgató tud. ● commit check: ellenőrizni tudjuk vele a jelölt konfiguráció szintaktikáját, anélkül, hogy ténylegesen megpróbálnánk aktiválni.
● commit confirmed: Természetesen a commit check nem tudja ellenőrizni a konfigurációban lévő logikai problémákat. Mi történik akkor, ha egy eszközt távolról konfigurálunk, és egy logikai hiba (pl. hibás gateway IP cím beírása) miatt kizárnánk magunkat az eszköz távoli kapcsolatától? Az ilyen esetek kezelésére jó a commit confirmed time-out parancs, ami elindít egy időzítőt, miközben egy commit parancsot vár. Ha a time-out idő alatt nem érkezik commit parancs, a rendszer végrehajt egy rollback 1, commit 9
parancssort, ami a commit előtti aktív konfigurációt hozza vissza. Természetesen az addigi változtatások nem vesznek el, mivel el lehet érni a logikailag rossz konfigurációt is az automatikus rollback után a rollback 1 paranccsal.
● commit comment: Naplóbejegyzést ad hozzá a commit-hoz, a commit comment “comment-string” paranccsal. Ezeket a naplókat a show system commit paranccsal lehet elérni később.
5. Szintaxis A CLI parancsok felépítése hierarchikus. Tekintsük az alábbi példát: hallgato@IRUlab# set system host-name IRUlab (1)
(2)
(3)
(4)
(1): parancs típusa: set -> felülírunk valamilyen értéket (2): parancs pontosítása: system -> rendszerbeállításról van szó (3): host-name nevű rendszerparamétert akarjuk módosítani (4): módosítás értékét adjuk meg Miután megismertük a parancsokat, azokat nem kell minden alkalommal teljesen beírnunk. Ha a begépelés közben lenyomjuk a szóköz billentyűt, a CLI befejezi helyettünk a parancsot. Pl. a show parancs beírásánál: hallgato@IRUlab> sh<szóköz>ow ipv6 A Tab billentyűvel hasonlóan kiegészíttethetjük a parancsokat, továbbá az általunk definiált változók neveit is kiegészíti így a rendszer. Ilyen változó lehet pl.: szabályok nevei, IP címek. 10
hallgato@IRUlab> show policy-statement lab
or-policy Ha egy parancs paramétereiben nem vagyunk biztosak, a ? beírásával a rendszer megmutatja a lehetséges opciókat. hallgato@IRUlab> clear ? Possible completions: amt arp auto-configuration ... A begépelt konfigurációs utasítások aktiválásához be kell írnunk a commit parancsot. Ezután a rendszer elmenti a módosításokat. A változtatások teszteléséhez nem kell elhagynunk a konfigurációs módot, a run parancs segítségével operational módbeli parancsot is futtathatunk konfigurációs módban.
A prompt felett található szögletes zárójelben láthatjuk a CLI hierarchiában az aktuális pozíciónkat. A fenti példában az [edit interfaces ge-0/0/12] azt jelenti, hogy a ge-0/0/12-es interfészre vonatkozó beállításokat végzünk.
6. A kezdő konfiguráció lépései A Junos első indulásakor – tehát például amikor megérkezik hozzánk a megvásárolt eszköz – szükség van néhány alapvető konfigurációs feladat elvégzésére. (Az első indítást követő állapotot elérhetjük a gyári beállítások visszaállításával.)
Első feladatunk egy root jelszó beállítása, mely azt biztosítja, hogy illetéktelenek ne tudják módosítani eszközünk beállításait. 11
Célszerű beállítani egy, az eszközt egyértelműen azonosító nevet, a pontos dátumot és időt.
Engedélyezni kell a megfelelő menedzsment interfészeken keresztüli hozzáférést (pl. Telnet, SSH).
Fontos, hogy a menedzsment-forgalom számára felvegyük a megfelelő statikus útvonalakat is.
Ezen feladatokat a mérés során is el fogjuk végezni.
6.1 A gyári alapbeállítások visszaállítása A Junos OS-t használó eszközök első üzembe helyezésükkor már tartalmaznak egy alapértelmezett, gyári konfigurációs fájlt. Ennek betöltésével érdemes kezdeni a beállítást. Ha az eszköz használata során átláthatatlanná válna a konfiguráció, a gyári alapbeállítások visszaállításával bármikor visszatérhetünk egy biztos kiindulási alaphoz. A gyári konfiguráció paraméterei nem azonosak minden eszköz esetén, különböző funkcionalitású berendezéseknél eltérőek lehetnek. CLI-t használva két lehetőségünk van, hogy visszaállítsuk alapállapotba az eszközt. Ezen parancsok eltérő módon viselkednek: ● request system zeroize Törli az összes naplófájlt, adatot, és visszatölti az eszköz gyári konfigurációját. Újraindulást követően nem kér jelszót. Az elejéről kell kezdeni az eszköz teljes beállítását. ● load factory-default A parancs csak a beállításokat törli, és visszatölti az alap konfigurációt. Az utasítás commitolása (véglegesítse) előtt meg kell adni az újraindulás után használni kívánt root jelszót. A beállítás megkezdéséhez a gyári konfiguráció engedélyezi a felhasználónak a root (rendszergazdai) hozzáférést. Alapértelmezetten a root fiókhoz nem tartozik jelszó, de mielőtt módosítanánk a rendszer beállításokat, meg kell adnunk egyet. A jelszavak választásánál vegyük figyelembe, hogy a jelszónak legalább hat karakter hosszúnak kell lennie, és tartalmaznia kell írásjelet vagy számot is. A rendszer alapértelmezetten naplófájlokat készít az eseményről és az elvégzett műveletekről. Később könnyen lekérdezhetjük ezen fájlok tartalmát a show log paranccsal; így az esetleges hibák okát is felfedhetjük. 12
7. Routing konfiguráció Amint elhagyjuk a helyi hálózatot (LAN-t), valamilyen módon meg kell határoznunk, hogy a célhálózat milyen úton érhető el. Ezt a célt szolgálja a hálózati útvonalválasztás (routing). A routing logikai címekkel dolgozik (IP cím), az OSI-modell 3. rétegében, TCP/IP-modell szerinti Internet rétegben. A routingnak két fajtája létezik: statikus és dinamikus. Statikus routing esetén az útvonalat a hálózat adminisztrátora kézzel állítja be, míg dinamikusnál egy routing protokoll választja ki a megfelelő útvonalakat. Ilyen dinamikus routing protokoll például a RIP (Routing Information Protocol), illetve az OSPF (Open Shortest Path First). A RIP egy távolság (distance vector) alapú protokoll, ami mértékegységként hop-count-ot használ, azaz azt figyeli, hogy hány köztes router található az aktuális router és a célállomás közt. Routing konfigurálásához elkerülhetetlen az alhálózatokra bontás (subnetting) folyamatának ismerete. Korábbi tanulmányok során más tárgyakból volt róla szó, ezért most nem térünk ki rá részletesen. Ezzel a témával kapcsolatos esetleges hiányosságok többek között innen pótolhatók: https://www.juniper.net/techpubs/software/junos-es/junos-es93/junos-es-swconfiginterfaces-and-routing/ipv4-addressing.html#ipv4-addressing-section
7.1 A routing bejegyzések forrásai A routing bejegyzéseknek több forrása is lehet. Az információk érkezhetnek különböző routing protokollok felől (például RIP, OSPF), de beállíthatók statikusan is, illetve közvetlen kapcsolatból is adódhatnak. Ezek a bejegyzések bekerülnek a routing táblába. A router minden hálózat felé kiválaszt egy aktív útvonalat, ami bekerül a forwarding táblába. A különböző csomagok továbbítása a forwarding táblában lévő bejegyzések alapján történnek.
7. ábra. A routing és a forwarding tábla forrásai.
13
Junos OS-t futtató eszközök több routing táblát is tartalmaznak. Az egyik ilyen tábla az inet.0, ami az IPv4 unicast routing bejegyzéseket tartalmazza. Opcionálisan létrehozhatóak újabb táblák. Az előre definiált routing táblák a következők:
Ha egy hálózat felé több forrásból érkező routing információ is rendelkezésre áll, akkor a Junos OS az útvonal-preferencia értékek alapján választ aktív útvonalat. Az alapértelmezett preferencia értékek különböző források esetén az alábbi táblázatban láthatók. Az értékek változtathatók, ha egy adott forrásból érkező routing információt szeretnénk előnyben részesíteni. Ez alól kivétel a direct és a local routing információ, amik mindig előnyt élveznek más bejegyzésekkel szemben. Bizonyos gyártók az útvonal-preferencia értékek (route preference values) helyett az adminisztratív távolság (administrative distance) elnevezést használják.
8. ábra. Az alapértelmezett útvonal-preferencia értékek.
Alább egy show route parancs eredménye látható. -
Az inet.0 jelöli az IPv4 unicast route-ok tábláját,
-
a különböző célhálózatokhoz tartozó bejegyzések forrása és preferencia értéke a szögletes zárójelben található,
14
-
a bejegyzés előtt lévő csillag (*) aktív útvonalat jelöl, ami a forwarding táblába is bekerül.
A példában a 10.1.1.0/24-es hálózat felé egy statikus és egy OSPF által szolgáltatott útvonal is megtalálható, amik közül a router az előbb ismertetett preferenciaértékek alapján a statikus útvonalat választja aktívnak.
7.2 A forwarding tábla A forwarding táblában találhatók az aktív útvonalak és a továbbításhoz használt információk, mint például a célállomásokhoz tartozó kimeneti interfész és a next-hop IP/MAC-cím. Alább egy forwarding tábla látható.
Az első két oszlop a célállomást és annak típusát jelöli. A táblában látható még a next-hop (a cél felé vezető következő interfész címe) és annak típusa, az utolsó oszlopban pedig a bejegyzéshez tartozó kimeneti interfész. 15
A célállomás típusai közül a user statikus route-ot, vagy routing protokolltól származó bejegyzést jelent, míg a Junos kernel által hozzáadott bejegyzést a perm típus jelöli. Az egyik ilyen bejegyzés a default, ahol a next hop típusa rjct (reject). Amelyik csomag csak ennek a bejegyzésnek felel meg, azt a router egy ICMP Unreachable üzenet generálása mellett eldobja. A dscd (discard) típus ICMP üzenet nélküli eldobást jelent, míg az ucst a unicast bejegyzést. A router egy beérkező csomag esetén (amennyiben nem az adott router a címzett) összeveti a cél címét a forwarding táblában található bejegyzésekkel, és annak megfelelően továbbítja, vagy eldobja azt. Ha több hálózatcím (prefix) is megfelel a célállomásnak, akkor a router mindig a legpontosabb bejegyzés (most specific entry) szabályának megfelelő irányba küldi a csomagot. Vegyük például a fent látható forwarding táblát:
Egy 172.19.52.101-es cél IP címmel rendelkező csomag esetén megfelelő célállomás a 172.19.0.0/16-os prefix is, de a legpontosabb bejegyzést a 172.19.52.0/24-es hálózat adja, így a kimeneti interfész a ge-0/0/1.0.
172.19.52.21-es cél IP esetén már a 172.19.52.16/28-as hálózat is megfelelő, ez adja a leghosszabb egyezést. A csomag a ge-0/0/2.0 interfészen lesz továbbítva.
Ha a cél IP cím 172.25.100.27, akkor nem felel meg egyik prefix sem, így a csomag a felhasználó által definiált alapértelmezett (default) útvonalon továbbítódik, azaz a kimeneti interfész a ge-0/0/0.0 lesz.
7.3 Konfiguráció CLI-n keresztül A routing beállítása CLI-n keresztül Configuration módban végezhető. A statikus routing az [edit routing-options static] hierarchia szinten módosítható. Routing bejegyzés a set paranccsal adható hozzá a routing táblához, ahol meg kell adni a célhálózatot, illetve a next-hop címet. Tegyük fel, hogy a 10.10.2.0/24-es alhálózat elérhető a 192.168.10.2-es közvetlenül kapcsolódó interfészen. Ezt a bejegyzést a set routing-options static route 10.10.2.0/24 next-hop 192.168.10.2 paranccsal adhatjuk hozzá a routing táblához. A routing megfelelő működéséhez elengedhetetlen az interfészek helyes konfigurációja. Ez ugyancsak a set paranccsal végezhető, az [edit interfaces] hierarchia
16
szinten. Meg kell adni a beállítani kívánt interfész nevét (1), a protokollcsaládot (2), az interfész IP címét és az alhálózati maszkot (3). (1)
(2)
(3)
set interfaces ge-0/0/2 unit 0 family inet address 192.168.10.1/30
8. Biztonsági beállítások Az eszközök konfigurációjának szerves részét képezik a biztonsági beállítások is. Ezeknek a segítségével garantálható a routing információk biztonsága, és megakadályozható az illetéktelen hozzáférés. Egyes beállítások védelmet nyújtanak különböző hálózati támadások ellen is.
8.1 Routing vezérelv (Routing policy) A routing vezérelvek beállításával szabályozható a routing táblába bekerülő, illetve az onnan továbbított routing információk áramlása. Ennek egy áttekintése látható a következő ábrán.
9. ábra. A routing vezérelvek áttekintése.
Az import vezérelvek a routing táblába bekerülő, az export vezérelvek az onnan kikerülő routing információkat szabályozzák. Minden routing protokoll rendelkezik egy alapértelmezett routing vezérelvvel. RIP protokoll esetén az alapértelmezett import vezérelv az, hogy a router a beállított RIP szomszédoktól minden RIP útvonalat elfogad, és eltárolja azt az inet.0 routing táblába. Export esetén azonban a beállított RIP szomszédoknak sem küld útvonalakat. Így ha útvonalat szeretnénk hirdetni a szomszédos routereknek, akkor létre kell hozni egy export routing vezérelvet, ami ezt engedélyezi. Ahogy a következő ábrán is látható, a vezérelveket egymást követő kifejezések (term) alkotják. A kifejezésekben megadható egy feltétel, aminek a teljesülése esetén
17
különböző műveletek végezhetők. A művelet többek között lehet elfogadás (accept) és elutasítás (reject) is.
10. ábra. A routing vezérelvek felépítése.
RIP protokoll esetén egy routing export vezérelv lehet a következő: policy-statement advertise-routes-through-rip { term match-rip-routes { from protocol [ rip ]; then accept; } }
Ez a vezérelv a RIP protokoll által létrehozott útvonalak exportját engedélyezi.
8.2 Biztonsági zónák A biztonsági zónák logikai egységek, amelyekhez egy vagy több interfész tartozhat. Ezeknek a segítségével szabályozható, hogy az adott interfészeken milyen típusú forgalom haladhat bejövő, illetve kimenő irányban. Juniper eszközök esetén alapértelmezetten két biztonsági zóna van létrehozva, az egyik a megbízható (trust), a másik a nem megbízható (untrust) zóna. A megbízható zónába gyárilag kizárólag a menedzsment interfész tartozik. Ezen engedélyezve van a http, https, ssh, telnet és dhcp forgalom, de semmi más.
18
A forgalom szabályozása a zónák között meghirdetett biztonsági vezérelvekkel történik, amik a korábban ismertetett routing vezérelvekhez hasonlók. A gyári konfiguráció engedélyezi a megbízható zónában található interfészektől származó forgalmat, de tiltja azt a forgalmat, ami a nem megbízható zónában található interfésztől származik. Ahhoz, hogy az eszköz bármilyen neki címzett forgalomra válaszoljon, a fogadó interfészt a megbízható zónába kell helyezni, és a kívánt alkalmazást (például ping, traceroute) engedélyezni kell. Ez Configuration módban az [edit security zones security-zone trust interfaces] hierarchia szinten végezhető.
9. A mérés során használt leggyakoribb parancsok ?
Környezetfüggő segítségkérés az adott hierarchia szinten
% cli
A parancssoros interfész indítása shellből
> > > > > >
show route show route forwarding table show interfaces show configuration show configuration interfaces configure
A routing tábla megjelenítése A forwarding tábla megjelenítése Interfész beállítások megjelenítése Az aktív konfiguráció megjelenítése Az aktív konfiguráció interfész beállításainak megjelenítése Belépés Configuration módba
# # # # # # # # # # # # # # #
run commit rollback n commit check commit confirmed time-out commit comment set delete rename … to … set interfaces set routing-options static set security zones set protocols set policy-options show | compare
Operational módbeli parancs futtatása A jelölt konfiguráció aktíválása Egy korábbi aktív konfiguráció visszaállítása Konfigurációs változtatások szintaktikai ellenőrzése Automatikus rollback time-out időn belül Megjegyzés fűzése a változtatásokhoz Konfiguráció beállítása Konfigurációs bejegyzés törlése Meglévő konfiguráció módosítása Interfész konfiguráció beállítása Statikus routing beállítása A biztonsági zónák beállítása Dinamikus routing protokollok beállítása Vezérelvek beállítása Az aktív és a jelölt konfiguráció összehasonlítása
19