OSPF - dynamické routování



Podobné dokumenty
Jiří Tic, TIC080 Lukáš Dziadkowiec, DZI016 VŠB-TUO. Typy LSA v OSPF Semestrální projekt: Směrované a přepínané sítě

Projekt k předmětu Směrované a přepínané sítě. Ověření kompatibility implementací OSPF na Cisco IOS a Linuxu - různé typy oblastí

Projekt VRF LITE. Jiří Otisk, Filip Frank

Europen: IP anycast služba

BIRD Internet Routing Daemon

Budování sítě v datových centrech

Počítačové sítě ZS 2005/2006 Návrh sítě zadání

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

BEZTŘÍDNÍ SMĚROVÁNÍ, RIP V2 CLASSLESS ROUTING, RIP V2

Směrované a přepínané sítě Border Gateway Protocol (BGP)

Směrované a přepínané sítě

Technologie počítačových sítí - LS 2016/2017. Případová studie příklady syntaktických konstruktů Cisco IOS pro jednotlivé části případové studie.

Průzkum a ověření možností směrování multicast provozu na platformě MikroTik.

Směrovací protokoly, propojování sítí

Směrovací protokol OSPF s využitím systému Mikrotom. Ing. Libor Michalek, Ph.D.

Route reflektory protokolu BGP

Budování sítě v datových centrech

Technologie počítačových sítí - ZS 2015/2016 Kombinované studium

Počítačové sítě IP routing

Testy kompatibility BGP a OSPF mezi Cisco a Mikrotik

Směrování. static routing statické Při statickém směrování administrátor manuálně vloží směrovací informace do směrovací tabulky.

Podmíněná propagace cest do protokolu BGP

Nepřímé do jiných sítí (podle IP adresy sítě přes router - určitou gateway ) Default gateway (společná výchozí brána do všech dostupných sítí)

X36PKO Úvod Protokolová rodina TCP/IP

Nové LSA v topologické databází OSPFv3

Praktikum Směrování Linux

OSPF. Směrování a OSPF. Historie OSPF. Základní vlastnosti OSPF. OSPF základní nastavení. Činnost OSPF

Počítačové sítě I LS 2004/2005 Návrh a konstrukce sítě zadání

Možnosti DHCP snoopingu, relayingu a podpora multicastingu na DSLAM Zyxel IES-1000

Statistiky sledování televize

Příkazy Cisco IOS. 1 Přehled módů. 1.2 Uživatelský mód (User Mode) 1.3 Privilegovaný mód (Privileged Mode) 1.1 Klávesové zkratky

PROJEKT FENIX Petr Jiran NIX.CZ. EurOpen.CZ VZ Měřín

Semestrální projekt do předmětu SPS

INSTALACE DATABÁZE ORACLE A SYSTÉMU ABRA NA OS WINDOWS

Počítačové sítě II. 13. Směrování Miroslav Spousta,

Počítačové sítě IP směrování (routing)

Základy IOS, Přepínače: Spanning Tree

Ladislav Pešička KIV FAV ZČU Plzeň

Směrovací démon BIRD. CZ.NIC z. s. p. o. Ondřej Filip / IT10

Dodávka nových switchů a jejich integrace do stávající IT infrastruktury inspektorátu SZPI v Praze

IPv6 VPN přes IPv4 MPLS páteř

Konfigurace IPv6. A7B36PSI Počítačové sítě A7B36SPS Správa počítačových sítí X36MTI Moderní technologie internetu X36LOS Lokální sítě

Směrování. 4. Přednáška. Směrování s částečnou znalostí sítě

Počítačové sítě II. 13. Směrování. Miroslav Spousta, 2004

DLNA- Průvodce instalací

Nová cesta ip. Stará cesta ifconfig, route. Network address translation NAT

NWA Příručka k rychlé instalaci. Dvoupásmový bezdrátový přístupový bod N třídy business

Loop-Free Alternative (LFA)

Telekomunikační sítě Protokolové modely

BIRD Internet Routing Daemon

Dvojitý IP teploměr s výstupním relé a s digitálním a analogovým vstupem.

Nezávislé unicast a multicast topologie s využitím MBGP

Počítačové sítě, ZS 2007/2008, kombinované studium. Návrh sítě zadání. Petr Grygárek, FEI VŠB-TU Ostrava

Stručný návod pro nastavení routeru COMPEX NP15-C

Podpora QoS na DSLAM Zyxel IP Expres IES 1000

a autentizovaná proxy

QoS na MPLS (Diffserv)

Internet protokol, IP adresy, návaznost IP na nižší vrstvy

Možnosti vylaďování subsecond konvergence EIGRP

Zabezpečení síťových protokolů

5. Směrování v počítačových sítích a směrovací protokoly

Rychlý postup k nastavení VoIP gatewaye ASUS VP100

Administrace Unixu (Nastavení firewallu)

Další nástroje pro testování

3 Prefix suppression v OSPFv3... 7

GRE tunel APLIKA ˇ CNÍ P ˇ RÍRU ˇ CKA

Směrování a směrovací protokoly

Představa propojení sítí

DWL-2000AP+ Než začnete. Kontrola obsahu dodávky

Úvod do síťových technologií

Zone-Based Firewall a CBAC na Cisco IOS

Typická využití atributu Community protokolu BGP - modelové situace

Konfigurace směrovače, CDP

Uživatelský modul. Modem Bonding

OSPF multi-area adjacency

SPARKLAN WX-7615A - návod k obsluze. Verze i4 Portfolio s.r.o.

VAR-NET INTEGRAL Manuál správce VNI 5.1 VAR-NET INTEGRAL. verze 0.2. Manuál správce VNI 5.1

Administrace služby - GTS Network Storage

Popis zapojení jednotlivých provozních režimů WELL WRC3500_V2 WiFi GW/AP/klient/repeater/switch, 54 Mb/s, R-SMA

2N Access Commander. Základy použití Verze

Popis zapojení jednotlivých provozních režimů WELL WRC7000N WiFi GW/AP/klient/repeater/switch, 300 Mb/s, R-SMA

OpenVPN a dynamické směrování

Správa sítí. RNDr. Ing. Vladimir Smotlacha, Ph.D.

HSRP v1+v2, reakce na události object trackingu, vliv na zátěž CPU

Základní principy obrany sítě II. Michal Kostěnec CESNET, z. s. p. o.

Klientské Mikrotiky - Instalační checklist

MyIO - webový komunikátor

1 Výchozí nastavení zařízení

X36PKO Jiří Smítka

Směrovací protokoly. Veronika Štorková, CCIE R&S #23705 Systems Engineer, Cisco RCNA_Plzeň_RoutingProtokoly

Programování síťové služby Sniffer OSPFv2 a OSPFv3

Klientské Mikrotiky - Instalační checklist

TCP2RTU. Transparentní převodník protokolu MODBUS TCP na MODBUS RTU/ASCII. Tři varianty: pro RS422, RS485 a RS232

NAS 323 NAS jako VPN Server

32-bitová čísla Autonomních Systémů v protokolu BGP

Internet se skládá ze o Segmentů, kde jsou uzly propojeny např. pomocí Ethernetu, Wi-Fi, atd. a tvoří autonomní oblasti 10.1.x.x x.x Atd.

Opakování k maturitní zkoušce z informatických předmětů

Osobní firewall s iptables

Možnosti IPv6 NAT. Lukáš Krupčík, Martin Hruška KRU0052, HRU0079. Konfigurace... 3 Statické NAT-PT Ověření zapojení... 7

UŽIVATELSKÝ MANUÁL. Model R502 Multifunctional Broadband Router

Transkript:

OSPF - dynamické routování Protokol OSPF Název znamená Open Shortest Path First a jedná se protokol používaný pro interní routování uvnitř autonomního systému (AS). Autonomním systémem může být např. infrastruktura ISP linky po republice nebo v menším měřítku například wifi síť v nějaké lokalitě. OSPF a dynamické routování obecně se používá v případech, kdy se cesta ven (default route) dá uskutečnit více než jednou trasou. V praxi to znamená v podstatě ten příklad s jízdou autem. OSPF je tzv. link state protokol, pomocí kterého si sousední routery prostřednictvím hello paketů vyměňují informace o stavu linek, a každý z routerů v dané oblasti (area) zná celou topologii sítě. Výchozí konfigurace je hello paket jednou za 10 sekund, a pokud nepřijde žádná odezva do 40 sekund, vyprší dead interval a linka je prohlášena za mrtvou. Poté následuje přepočet a router hledá cestu jinudy, nezapomene však informovat všechny své sousedy (neighbor). Proces OSPF zjištěné informace předá démonu zebra, který již kernelu řekne novou default routu a routy přijaté od sousedů. Příklad dynamického okruhu Na obrázku je vidět situace, kdy router A je tzv. hraničním routerem v oblasti, routery B a C jsou

routery v různých lokalitách této oblasti. Z obrázku rovněž vyplývají možné cesty ven. V tomto případě se tedy quagga postará o to, že router A bude propagovat ostatním routerům sebe jako default routu. Pomocí cost můžeme určit "cenu" linky a tím určit i preferovanou trasu, nebo můžeme traffic rovnoměrně rozprostřít (load balancing, equal cost multipath) a nechat jej téct více směry. Dokonce můžeme zařídit, že směr ven půjde jinou cestou než směr dovnitř. V našem případě použijeme na všech spojnicích cost 100, tedy všechny tři linky jsou kvalitativně stejné. Neurčujeme žádnou preferovanou trasu. Platí princip, že čím menší cost, tím kvalitnější linka a má přednost. V případě poruchy linky např. mezi routerem A, B se tedy nastaví na routeru B default routa přes C s costem 201 a rovněž cost na router A bude 200. Na routeru A bude cost na router B 200 a trasa bude přes router C. Samozřejmě, že se vzájemně vypropagují i routy na sítě BB a CC. Pro všechny případy je nutné vypnout na routerech RP Filter, aby routerům nevadilo, že odpověď na paket odeslaný jedním rozhraním může přijít z jiného: #/bin/bash for i in /proc/sys/net/ipv4/conf/*/rp_filter; do echo "0" > $i; done echo "1" > /proc/sys/net/ipv4/conf/lo/rp_filter V tomto případě jsou mezi jednotlivými routery použity spojovací sítě /30 (4 adresy). Za routery B a C jsou v sítích BB a CC koncoví uživatelé, kteří mají default routu nastavenu na router B resp. C. Konfigurace routerů Na routerech B a C nenastavovat default routu. Ta bude nastavena právě díky OSPF podle výpočtu nejkratší trasy. O komunikaci s kernelem a mj. i nastavení default routy se přes rozhraní Netlink postará démon zebra. V tomto konfiguračním souboru je třeba nastavit název, heslo, heslo pro pokročilé funkce, vyjmenovat interface, případně vyjmenovat statické routy. Na hraničním routeru (v našem případě router A) by zde měla být i default routa směrem ven. Příklad konfigurace zebra.conf hostname router password nejakeheslo enable password nejakejineheslo log file /dev/null service advanced-vty debug zebra events debug zebra kernel interface lo interface eth0 interface eth1 interface eth2 Konfigurace OSPF démona je o něco složitější, ale nic záludného to není. Opět zde nastavíme hostname, obě hesla, poté se vyjmenují interface, na kterých se má OSPF používat, a nakonec globální nastavení včetně pokročilých nastavení.

Příklad konfigurace ospfd.conf Jmeno routeru hostname router Heslo pro vzdaleny vty pristup (konzole) password nejakeheslo Heslo pro prechod do rozsireneho modu v quagga shellu (konzoli) enable password nejakejineheslo Kam logovat (doporucuji po odladeni /dev/null, nebot zebra a ospfd na disk chrli mega a mega logu) log file /dev/null Povolit funkce rozsireneho virtual-terminalu (konzole) service advanced-vty Co logovat debug ospf ism debug ospf zebra Loopback interface lo description system loopback Prvni sitovka zakomentovana, do internetu nebudeme vysilat OSPF interface eth0 Druha sitovka interface eth1 description smer router A ip ospf cost 100 ip ospf dead-interval 40 ip ospf hello-interval 10 Treti sitovka interface eth2 description smer router C ip ospf cost 100 ip ospf dead-interval 40 ip ospf hello-interval 10 Konfigurace ospfd router ospf ID-routeru (napr. IP adresa) ospf router-id 10.10.10.1 redistribute connected metric-type 1 redistribute static metric-type 1 network 10.0.0.0/24 area 0 network 10.0.1.0/24 area 0 network 10.0.2.0/24 area 0 tohle jen na hranicnim routeru (router A) - propagovani default routy default-information originate always metric-type 1 Díky těmto nastavením a OSPF se na router A vypropagují i statické routy na sítě BB a CC z routerů B a C a rovněž mezi B a C si vzájemně předají routy na BB a CC. Důležité: Sousedi musí mít vzájemně shodné nastavení intervalů pro hello pakety a dead interval, jinak se spolu nedomluví. Rovněž router id musí být v celé OSPF síti unikátní, jinak se ospf proces bude

chovat velice divně, pokud náhodou úplně nezkolabuje. Toto bývají jedny z nejčastějších chyb, proto si své konfigurační soubory důkladně přečtěte a možné překlepy opravte. Routovací tabulka na routeru B Adresát Brána Maska Přízn Metrik Odkaz Užt Rozhraní 10.0.0.0 0.0.0.0 255.255.255.252 U 0 0 0 eth0 10.0.0.4 0.0.0.0 255.255.255.252 U 0 0 0 eth1 10.0.2.0 10.0.0.6 255.255.255.0 UG 100 0 0 eth1 10.0.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth2 127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo 0.0.0.0 10.0.0.1 0.0.0.0 UG 101 0 0 eth0 Pomocí metrik se vypočítává nejkratší cesta a z výpisu je poznat, že routy označené metrikou nastavila zebra. Ještě lépe je to vidět, použijete li příkaz ip route, např. pro routu do sousední sítě: 10.0.2.0/24 via 10.0.0.6 dev eth1 proto zebra metric 100 Quagga VTY shell Démony zebra i ospfd lze během provozu ovládat přes konzoli (quagga shell, vty). Ve výše uvedeném nastavení budou poslouchat pouze na loopbacku. Přihlášení lze provést pomocí telnetu, přičemž zebra poslouchá na portu 2601 a ospfd na portu 2604. Podrobnostem se budu věnovat později.

OSPF - dynamické routování - 2 (SNMP, Quagga) Route-map Routujeme li staticky z místa A do místa B přes několik routerů (C,D,E), je třeba, aby po celé cestě routery věděly, kam mají posílat který segment a kam vede výchozí routa. Snadno se pak může stát, že na některém routeru po cestě můžeme zapomenout přidat routu a problém je na světě. Použijemeli ovšem dynamické routování, začneme řešit zcela opačný problém. Routery si mezi sebou "vykecají" všechno, co jim nezakážeme. Příkladem mohou být např. dohledové adresy a tunely z privátních rozsahů, které nechceme, aby se míchaly mezi ostré. Toto zajistí mechanismus route map, kde můžeme definovat, jaké rozsahy adres, jaké routy propagovat a jaké naopak nepropagovat na sousední OSPF routery. Route map je však mnohem mocnější nástroj, nicméně v našem dalším příkladu si ukážeme jednodušší věci. Příklad zaokruhování Schéma: Máte zákazníka, který má dvě pobočky, a vyžaduje vysokou dostupnost služeb. V jedné lokalitě již má dvě ostré adresy a ve druhé jednu. Tyto adresy jsou svázány s VPN do zahraničí, a proto si je přeje zachovat. Nejjednodušší by bylo před routery zákazníka vložit ještě další routery, které by se právě o zaokrouhlování staraly. Protože jsou ale oba routery u zákazníka ve vaší správě, můžeme

přidat další rozhraní a uzavřít okruh přímo na nich. Protože se na těchto routerech původně jen prováděl NAT a spojení VPN, na některých rozhraních musí být privátní adresy. Tady se dostává ke slovu route map, pomocí které je třeba zakázat propagaci těchto privátních adres na další OSPF routery. Na jaké rozhraní ale umístit původní ostré adresy? K tomu použijeme zařízení dummy. Je li v jádře jako modul, nezapomeňte na: modprobe dummy Téměř všechna práce se dá udělat na dálku (tedy kromě zapojení dalšího kabelu a uzavření okruhu). Nejdříve je vhodné začít nahozením nových spojovacích adres mezi všemi třemi routery. Poté je třeba shodit výchozí routu a přesunout původní ostré adresy na zařízení dummy. Adresy nastavte v masce /32 např.: ip add add 177.104.252.130/32 brd + dev dummy0 Nahozením IP adresy na dummy zařízení získáte možnost přihlášení na router nejvýhodnější možnou cestou (myšleno z pohledu topologie sítě). Když nemáte výchozí routu, musíte se logovat na routery po spojovačkách od sousedů. Nyní konfigurace OSPF na routeru u zákazníka (vybrané části): interface dummy0 description dummy ip ospf cost 10 Konfigurace ospfd router ospf ID-routeru (napr. IP adresa) ospf router-id 177.104.252.130 redistribute static metric-type 1 redistribute connected metric 100 metric-type 1 route-map zakaznik network 177.104.252.160/28 area 21 aclka access-list propaguj deny 192.168.0.0/16 SPOJOVACKY access-list propaguj permit 177.104.252.160/28 IP NASE access-list propaguj permit 177.104.252.130/32 access-list term permit 127.0.0.1/32 access-list term deny any route-map zakaznik permit 10 match ip address propaguj propojeni se snmp smux peer.1.3.6.1.4.1.3317.1.2.5 quagga_ospfd V konfiguraci OSPF je třeba v tomto případě v sekci zažízení uvést zařízení dummy0. Dále pomocí access list zakázat (deny) propagování privátních adres ostatním OSPF routerům. Access list je poté třeba přidat do route map a tu aplikovat na distribuování okolním routerům. redistribute connected metric 100 metric-type 1 route-map zakaznik

V neposlední řadě nesmíme zapomenout upravit NAT privátních adres zákazníka. Protože se odchozí rozhraní bude díky možným dvěma cestám ven měnit, musí se NAT provádět jen na adresu, nesmí se uvádět rozhraní. Mohlo by to vypadat nějak takto: iptables -A POSTROUTING -t nat -j SNAT -s 192.168.2.0/24 --to 177.104.252.130 Quagga a SNMP Stav routeru můžeme sledovat pomocí SNMP a rovněž můžeme dostávat trapy při mimořádných událostech. Pro tento případ je třeba mít spuštěný démon snmpd a v konfiguraci ospfd mít řádek: smux peer.1.3.6.1.4.1.3317.1.2.5 quagga_ospfd Základy SNMP (Simple Network Management Protocol) byly popsány v článku Monitoring pomocí nástrojů z balíku Net SNMP, kam bych tímto rád nasměroval všechny, kteří zatím SNMP neznají a nepoužívají. Aby SNMP démon akceptoval propojení s quaggou je třeba v snmpd.conf mít řádek: smuxpeer.1.3.6.1.4.1.3317.1.2.5 quagga_ospfd Dále jsem zjistil, že SNMP je velmi háklivé na to, když dotaz přijde na jednu IP adresu, ale odpověď odejde jiným rozhraním a tedy i s jinou zdrojovou adresou. V tomto případě je tedy potřeba ještě SNMP démonu říct, aby poslouchal na jedné adrese: agentaddress 177.104.252.130 Protože si přejeme být informováni o mimořádných událostech na routeru (nejen OSPF), je třeba v snmpd.conf nastavit, kam posílat SNMP trapy: trapsink XX.XX.XX.XX Tímto jsme v podstatě hotovi s konfigurací. Podrobnosti o možnostech SNMP a příslušné mib tabulky naleznete v repozitáři projektu quagga a konkrétní příkladech v dokumentaci. Quagga shell - konzole Po rozběhnutí OSPF okruhu a spuštění quaggy můžete v quagga shellu provádět diagnostiku, ale i kompletní konfiguraci. Výchozí chování je, že do shellu se dostaneme pouze z lokálu. Quagga shell používá analogické příkazy jako např. Cisco. Do shellu se přihlásíme pomocí: telnet localhost ospfd pro kongiguraci OSPF procesu, případně telnet localhost zebra pro konfigurace statických rout. Tady je na místě malá ukázka. Je li například k routeru připojen další router, který routuje pouze staticky např. segment osmi adres pro jiného zákazníka, je třeba k němu těch osm adres zaroutovat staticky. To provedeme pomocí zebry. Příklad:

user@zakaznik:~# telnet localhost zebra Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. Hello, this is Quagga (version 0.99.4). Copyright 1996-2005 Kunihiro Ishiguro, et al. User Access Verification Password: r1-zak> en Password: r1-zak# con r1-zak# configure r1-zak# configure terminal r1-zak(config)# ip route 185.121.13.0/28 166.125.13.125 r1-zak(config)# write me r1-zak(config)# configuration saved to /etc/zebra.conf r1-zak(config)# q r1-zak# q Connection closed by foreign host. V příkladu vidíte, že funguje doplňování pomocí tabulátoru. Seznam příkazů naleznete v dokumentaci a můžete si je vyvolat pomocí list. Naprosto stejně se dostanete do shellu pro konfiguraci OSPF. Příklad: user@zakaznik:~# telnet localhost ospfd Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. Hello, this is Quagga (version 0.99.4). Copyright 1996-2005 Kunihiro Ishiguro, et al. User Access Verification Password: r1-zak> en Password: r1-zak# sh ip ospf neig r1-zak# sh ip ospf neighbor Neighbor ID Pri State Dead Time Address Interface RXmtL RqstL DBsmL 177.104.252.129 1 Full/Backup 31.429s 177.104.252.166 eth0:177.104.252.165 0 0 0 177.104.252.132 1 Full/Backup 31.220s 177.104.252.170 eth3:177.104.252.169 0 0 0 r1-zak# Tímto například zobrazíme seznam sousedů. V tabulce vidíme router id, prioritu, stav, čas do vypršení dead intervalu, adresu souseda, interface a podrobnosti o sousedství. Opět je vhodné doplňovat pomocí tabulátoru a rovněž pomocí otazníku, ten nám ukáže možné další pokračování. Příklad:

r1-zak# sh ip ospf neighbor? A.B.C.D Neighbor ID IFNAME Interface name all include down status neighbor detail detail of all neighbors <cr> Chceme li například změnit cenu na rozhraní, uděláme to takto: r1-zak# configure r1-zak# configure terminal r1-zak(config)# inte r1-zak(config)# interface et r1-zak(config)# interface eth r1-zak(config)# interface eth0 r1-zak(config-if)# ip os r1-zak(config-if)# ip ospf co r1-zak(config-if)# ip ospf cost 120 r1-zak(config-if)# q r1-zak(config)# q r1-zak# write me Doporučuji dokumentaci Quaggy případně Cisco a hlavně zkoušet a nebát se. Load Balancing - Equal Cost Multipath Pokud k routeru vede více linek se stejnou cenou (cost) na jiný router a máte v kernelu i v routovacím démonu quagga podporu pro multipath(ecmp), můžete rozlévat traffic do těchto linek mít více výchozích rout. Rozlévání trafficu funguje per connection, nikoliv per packet. To znamená, že navázané spojení jde stejnou cestou. V kernelu je třeba mít: CONFIG_IP_ROUTE_MULTIPATH=y Quaggu je potřeba kompilovat s přepínačem (N je maximální počet cest): --enable-multipath=n Pokud se vše zadaří, může výchozí routa vypsaná příkazem ip route vypadat takto: default proto zebra metric 101 nexthop via 181.192.159.138 dev eth0 weight 1 nexthop via 181.192.159.134 dev eth1 weight 1 Schéma:

Pro zájemce existuje ECMP Mini howto v angličtině. Toto howto bylo psáno pro routovací démon zebra, ale protože quagga je fork zebry, je toto howto použitelné i s quaggou. Upřednostňování Pokud se dostanete do situace, že traffic začne zaplňovat kapacitu linky, je třeba provést upřednostňování OSPF protokolu. Může se vám snadno stát, že zahozením hello paketů mezi routery dojde k vypršení dead intervalu a tedy ke shození rout a přepočtu trasy. V detailu OSPF sousedů lze vidět, jak dlouho je navázáno spojení, případně důvod rozpadu (většinou vypršení dead intervalu). Pokud například chceme pakety protokolu OSPF značkovat DSCP značkou, uděláme to takto: iptables -t mangle -A OUTPUT -p 89 --jump DSCP --set-dscp 0x1a #AF31 Více o DSCP značkách naleznete např. na http://www.cisco.com/warp/public/105/dscpvalues.html. Číslo protokolu získáme z /etc/protocols. Pak již stačí tyto pakety na základě této značky např. na aktivním prvku zpracovávat s vyšší prioritou než neoznačené pakety. Další podrobnosti o řízení trafficu na Linuxu naleznete v dokumentaci balíku iproute2 a např. na http://www.linuxguruz.com/iptables/howto/2.4routing 14.html najdete konkrétní příklad pro upřednostňování označkovaných paketů. Samozřejmě můžete namísto DSCP využít i klasický TOS field u paketů. Dynamické routování - OSPF 3 (topologie, zabezpečení) Topologie sítě z pohledu OSPF Mějme typickou situaci ISP, kdy je síť rozdělena na: páteř (backbone) area 0 koncové oblasti (stub areas) tranzitní oblasti Budeme li stavět síť s cílem co nejvyšší dostupnosti, je třeba postavit stabilní backbone páteř sítě. Z pohledu OSPF to znamená okruh se dvěma hlavními routery, které mají uplinky směrem k nadřazenému providerovi. Okruh tedy bude začínat na jednom z hlavních routerů a končit na

druhém. Tím je zajištěna redundance pro případy havárie nebo výměny hw, upgrady sw vyžadující restart či jiné akce vyžadující dlouhodobější odstávky. Schéma sítě typického ISP: Na obrázku je vidět rozdělení sítě na výše uvedené části. Páteřní okruh area 0 spojuje všechny hraniční routery (ABR) dalších oblastí. Dále jsou na obrázku vidět dvě tranzitní oblasti area 1 a 2. Koncovou oblastí je v našem případě area 3, ze které vede jen jedna cesta ven. Do této speciální oblasti není třeba importovat celou routovací tabulku z ostatních ospf routerů z jiných oblastí, ale postačuje jen default route. Taková koncová oblast se nazývá totally stubby area. Všechny routery v takové oblasti musí být shodně nakonfigurovány jako stub (popř. totally stubby) a přes tuto oblast nesmí procházet virtual link. V horní části obrázku jsou vidět uplinky směrem do NIXu (český Internet) a směrem do zahraničí. Tyto propoje jsou realizovány pomocí externího routovacího protokolu BGP. Quagga, Linux a multicast Pokud má linuxový router více než 6 sousedů, může se v logu quaggy objevit hláška o překročení počtu multicastových skupin a nelze navázat ospf sousedství s dalším routerem. Řešením je zvýšení hodnot např.: echo 200 > /proc/sys/net/ipv4/igmp_max_memberships echo 20 > /proc/sys/net/ipv4/igmp_max_msf Sumarizace rout Na hranicích oblastí je vhodné provádět sumarizaci rout. Namísto například čtyřech rout

10.10.0.0/24 10.10.1.0/24 10.10.2.0/24 10.10.3.0/24 je lepší posílat sousedním routerům jednu routu 10.10.0.0/22. Konfigurace by mohla vypadat následovně: router ospf ospf router-id 10.2.3.4 network 10.2.3.0/24 area 0 network 10.10.0.0/24 area 1 area 0.0.0.1 range 10.10.0.0/22 Zabezpečení OSPF Pokud by se útočník dostal do sítě a vhodným softwarem by dokázal generovat falešné OSPF pakety, mohl by způsobit změny v routovacích tabulkách, destabilizovat, či úplně přerušit traffic v síti, nebo dokonce nechat směrovat cizí traffic na sebe. Tomu je možno zabránit autentizací OSPF paketů. Autentizace může být provedena dvěma způsoby: buď heslem, které je třeba nastavit na všech routerech, nebo pomocí md5. Pomocí hesla je to méně bezpečné, protože heslo putuje po síti a lze jej odposlechnout. MD5 autentizace posílá po síti v OSPF paketu md5 hash, který je vypočten z obsahu OSPF paketu, klíče, router id a sekvenčního čísla. Po síti se tedy klíč neposílá. Tato metoda je díky sekvenčním číslům odolná proti pozdějšímu přehrávání odchycených paketů (replay attack). Použitím md5 autentikace pochopitelně vrůstá zátěž procesoru. Příklad konfigurace s heslem:... interface eth1 ip ospf authentication-key nejakeheslo router ospf ospf router-id 192.168.27.1 network 192.168.254.9/32 area 0.0.0.0 network 192.168.254.128/30 area 0.0.0.0 area 0.0.0.0 authentication line vty... Příklad konfigurace s md5:... interface eth0 ip ospf authentication message-digest ip ospf message-digest-key 1 md5 NEJAKEHESLO...

Srovnání interních routovacích protokolů protokol RIP RIP v2 OSPF IGRP EIGRP typ distance vector distance vector linkstate distance vector hybrid konvergence pomalá pomalá rychlá pomalá rychlá zatížení routeru malé malé velké malé malé zatížení sítě velké velké malé velké malé metrika počet hopů počet hopů cena složená složená sumarizace automatická, podle třídy IP adresy automatická, je možné vypnout ruční automatická, podle třídy IP adresy automatická, je možné vypnout autentizace ne ano ano ne ano proprietární ne ne ne ano ano