This is an old revision of the document!
OSPF - Open Shortest Path First
Úvod do OSPF
Link state:
 neighbor discovery
 
 topology database exchange - naplnění LSDB
 
 route computation - SPF Algorithm
 
LSDB obsahuje:
 info o existenci a indentifikátoru všech routerů (router ID)
 
 interface, IP adress, mask, subnet
 
 list dostupných routerů přes každý router na každém interfejsu
 
Hiearchický model OSPF:
 rozdělení na různé area
 
 1 area (0) je backbone a jsou do ní připojeny všechny ostatní
 
 paket, který má má projít z jedné non-backbone area do jiné, musí vždy projít Area0
 
 ABR - Area Border Router
 
 ABR tvoří hranici mezi areami
 
 ABR udržuje LSDB všech area do kterých je připojen
 
 ABR mezi areami nepřenáší podrobné informace o tolpologii
 
 ABR přenáší jen info o subnetech a délce prefixu, subnety se tak z perspektivy vnitřních routerů tváří jako přímo připojené k ABR
 
 díky rozdělení sítě lze snížit nároky na výpočet topologie (CPU,Mem,přenos topolog. informací)
 
Přehled Pojmů:
 LSDB Link State Database - informace o topologii udržované routerem
 
 SPF Shortest Path First - algoritmus analyzující data v LSDB
 
 LSU Link State Update - název OSPF paketu obsahujícího detailní topolog.informace, konkrétně LSA
 
 LSA Link State Advertisement - OSPF struktura dat obsahující topolog.informace, je v paměti LSDB a vyměňují si ji routery v síti pomocí LSU zpráv
 
 Area - skupina routerů a interfaců, která si vyměňuje podrobné topologické informace. Neučí se nic o topologii z jiných Areas .
 
 ABR Area Border Router - router, který má interfacy v různých areách.
 
 Backbone router - router, který má alespoň jeden interface v Area 0
 
 Internal routers - router, který má všechny interfacy jen v jedné area
 
 DR Designated Router - Zvolený router v multiaccess síti, který má zvláštní funkci při zpracování LSA
 
 BDR Backup Designated Router - monitoruje DR a je připraven převzít jeho úlohu v případě poruchy
 
Konfigurace:
 router ospf process-id - číslo procesu nemá vliv na sestavení sousedství
 
 network net-id wildcard-mask area area-id - subnet se zařadí do connected sítí a router rozešle OSPF Hello zprávy z interfaců v daném subnetu
 
 volba aktivních interfaců probíhá porovnáváním IP a wildcard masky s IP adresou interfacu
 
 nezávisle na pořadí při konfiguraci, router ukládá network záznamy dle nejspecifičtější (nejvíce nul) wildcard masky - ta je první.
 
 pořadí network příkazů v show running-config se porovnávají IP interfejsů a první souhlas určuje Area id interfacu
 
Příklad - Network matching:
RID Router ID:
 Použije se RID definované příkazem router-id x.x.x.x
 
 Nejvyšší IP adresa up/up Loopbacku
 
 Nejvyšší IP adresa up/up non-Loopback interfejsu
 
Verifikace OSPF
 Zjistit na kterých int. je zapnuto OSPF
 
 Ověřit zda o sobě vědí sousední routery (neighborship)
 
 Ověřit obsah topology table non-ABR routerů, zda obsahují data jen ze své Area
 
 Ověřit zda jsou dostupné všechny routy
 
Router# show ip ospf interface brief
Router# show ip protocols
Router# show ip ospf neighbors
Router# show ip ospf database
Router# show ip route
OSPF Shrnutí:
 Transport - IP, protocol type 89 (nepoužívá UDP ani TCP)
 
 Metric - kumulovaná cena(odv.od šířky pásma) všech výstupních interfaců v cestě (routě), lze explicitně stanovit
 
 Hello interval - interval vysílání Hello zpráv na interfacu
 
 Dead interfval - slouží k odhalení závady souseda když od něj určitou dobu nepříjmáme žádné zprávy
 
 Update destination address - 224.0.0.5 (všechny SPF routery), 224.0.0.6 (všechny Designated routery)
 
 Full or partial updates - full updaty jen při zjištění nového souseda, jinak partial updaty
 
 Authentication - MD5 nebo clear-text
 
 VLSM/classless - každá routa obshuje masku, podpora nespojitých sítí a VLSM
 
 Route tags - umožňují OSPF označkovat routy dle způsobu jakým byly redistribuovány do OSPF
 
 Next-hop field - podpora distribuce rout s rozdílnou next-hop adresou
 
 Manual route sumarization - podpora sumarizace pouze na ABR routerech
 
 
OSPF Neighbors on LAN
Hello zprávy:
Obsah Hello zpráv:
Podmínky navázání sousedství:
 primární IP interfaců musí být ve stejném subnetu
 
 connected interface nesmí být pasivní
 
 musí být ve stejné Area
 
 Hello a Dead timer musí být stejný
 
 unikátní RID
 
 IP MTU musí souhlasit
 
 musí projít authentikace (je-li nastaveno)
 
 (OSPF process-ID nemá vliv)
 
show ip ospf neighbor States:
 FULL/.. - znamená plnohodnotný sousedský ztah, kompletní výměna topo informací napřímo
 
 2WAY/.. - funkční sousedský vztah, topo se vyměnuje prostřednictvím DR
 
 FULL/DR
 
 FULL/BDR
 
 2WAY/DROTHER
 
 
Hello and Dead Timers
 Hello interval - (def. 10 s) definuje jak často jsou vysílány Hello zprávy
 
 Dead timer - (def. 40 s) definuje jak dlouho router čeká než vyřadí souseda, pokud od něj nechodí hello zprávy
 
 Selhání interfacu - všechny OSPF sousedy dostupné přes int. router považuje za failed bez čekání na vypršení Dead timeru
 
 nastvím-li jen hello interval, změní se automaticky i dead interval na 4x hello
 
Router(config-if)# ip ospf hello-interval sekundy
Router(config-if)# ip ospf dead-interval sekundy
show ip ospf interface fa0/0 
show ip ospf neighbors
Nastavi dead-interval na 1s, hello na 1/4s
Router(config-if)# ip ospf dead-interval minimal hello-multiplier 4
 
Router-ID
Určuje se v tomto pořadí:
 hodnota nastavená příkazem router-id
 
 nejvyšší IP up/up Loopbacku
 
 nejvyšší IP up/up non-Loopback interface
 
 musí být unikátní
 
 dle RID se identifikují routery v topo databázi
 
 OSPF proces nemůže nastartovat bez RID
 
 mají-li dva routery stejné RID, nenavážou spolu sousedství
 
 ostatní routery s oběma routery se shodným RID naváží sousedství, avšak routy si natáhnou od toho se kterým sousedili jako s prvním
 
 
Shodné IP MTU
 shodné MTU je podmínkou pro funkční sousedství !
 
 defaultně 1500 byte, z důvodu limitu ethernetu na 1526 byte
 
 je-li potřeba přenést větší paket, router jej buď zahodí nebo fragmentuje
 
 je-li v IP hlavičce nastaven bit DF (don't fragment), router paket zahodí
 
 není-li DF nastaven, router paket fragmentuje na dva či více menších
 
Mají-li routery rozdílné MTU:
 ve výpisu sousedů sh ip ospf neighbors je vidět soused s měnícím se statusem (EXSTART,INIT,DOWN)
 
 soused tedy je vidět v tabulce sousedů
 
 k výměně topo informací však nedochází !!!
 
 
OSPF Authentikace
 authentikují se všechny OSPF zprávy
 
 routery používají pre-shared-key
 
 MD5 otisk klíče+zprávy je v každé zprávě
 
 nesouhlasí-li otisk přijaté zprávy s otiskem vytvořeným z lokálního klíče příjemce, je zpráva zahozena
 
 selže-li autentikace, nelze ani navázat sousedství, protože neautentifikované Hello zrávy jsou zahazovány
 
 neumožňuje jako EIGRP time-based klíče
 
 pro změnu klíče je dobré na všech routerech přidat nový klíč s jiným id než měl starý a poté starý klíč smazat
 
 pokud je na interfejsu nastaveno více klíčů jsou OSPF zprávy vysílány pro každý klíč zvlášť
 
 např. jsou-li na int. dva klíče, odesílají se všechny OSPF zprávy dvakrát
 
Tři typy auth.:
Konfigurace:
Type 0 - none
Router(config-if)# ip ospf authentication null
Type 1 - per-interface
Router(config-if)# ip ospf authentication
Router(config-if)# ip ospf authentication-key key-value
Type 1 - Globálně
Router(config-router)# area area-id authentication
Type 2 - per-interface
Router(config-if)# ip ospf authentication message-gigest
Router(config-if)# ip ospf message-digest-key key-number md5 key-value
Type 2 - Globálně
Router(config-router)# area area-id authentication message-digest
key-value - maximálně 16 znaků
show ip ospf interface
show ip ospf neighbor
debug ip ospf adjacency