Friday 22 November 2013

OSPF belajar

*ini catatan OSPF gw yang tertinggal…lupa gw upload
LSA = Link State Advertisement, LSA ini berguna untuk build topology OSPF dalam satu router
Atau yang lebih dikenal dengan “show ip ospf database
===================
How OSPF build his topology/database then “transform” that information into routing table


Konfigurasi R1 (ga pake loopback dulu)
Konfigurasi R2
Klo uda nanti ada tulisan kek gini di R2 dan R1
Untuk konfigurasi OSPF kita bisa pake cara baru (masuk ke interface trus ketik ip ospf [process-id] area [nomor area] atau pake cara “old school” (router ospf [process-id] trus ketik network)
Note: klo pake cara baru, OSPF baru akan jalan (gara2 ga ada router-id yang bisa dipake) klo interface yang dipasang OSPF itu dalam keadaan nyala/no shut
OSPF tiap update kirim LSU (Link State Update), nah…didalam LSU ini ada informasi2 network mana yang akan di advertise
Namanya LSA (Link State Advertisement)…LSA inilah yang digunakan untuk build up topology/database OSPF
LSA sendiri terbagi menjadi beberapa tipe (yang terkenal):
LSA Type 1: isi-nya router-id dari router2 yang jalanin OSPF
LSA Type 2: isi-nya network2 yang dibawa oleh router2 OSPF itu
LSA Type 3: isi-nya sumarisasi rute2 network (biasanya ini adanya di ABR – Area Boundary Router, Router yang menghubungkan 2 area atau lebih)
LSA Type 4: isi-nya sumarisasi rute2 external diluar OSPF
LSA Type 5: isi-nya rute2 external (LSA tipe 5 dan 4 biasanya ada di ASBR, Router OSPF yang menghubungkan OSPF dengan Routing Protocol Lain)
LSA Type 7: isi-nya…ngakalin STUB hahaha (nanti dibawah dibaca sendiri)
==============================================
LSA Type 1
NAAAAH….mari kita liat show ip ospf database di R1 dan R2
Router Link States (Area 0) = LSA type 1
Ini isinya router-id dari semua router2 yang jalanin OSPF (di area yang sama)
Analoginya:
Lo merencanakan dateng ke sebuah acara disebuah gedung, begitu sampai di gedung tersebut…masuklah dikau ke sebuah ruangan acara yang dimaksud (area 0, anggep lah), disini lo kenalan dengan orang2 yang ada diruangan tersebut…biasanya saling tukeran kartu nama (router-id)
Kartu Nama alias router-id inilah yang disebut LSA Type 1, klo lo notice…masing2 router baik R1 dan R2 punya LSA yang sama persis (baik Link ID dan ADV Router)
Biar lebih nampol…kita tambahin R3
Yu, kita cek lagi database R1, R2, dan R3
Tuh liat…R1, R2, dan R3…databasenya untuk LSA type 1 dan LSA type 2-nya SAMA PERSIS…
R1: “hei…nama gw R1
R2: “hei R1, nama gw R2” (tukeran kartu nama/router-id – LSA Type 1)
R3: “hei…nama gw R3
R2: “hei juga, nama ku R2…btw, gw kenal sama R1 loh” (kartu nama alias LSA Type 1 dari R1 di forward oleh R2 ke R3)
Yang akhirnya…R1 punya kartu nama dia sendiri, kartu nama R2, dan kartu nama R3…begitu pula R2 dan R3
this is why they said that all OSPF Routers know the EXACT TOPOLOGY of their area
untuk LSA Type 1, informasi Link ID dan ADV Router biasanya sama (router-id masing2 router)
dan informasi Link Count pada LSA Type 1 itu isinya adalah…”itu tetangga/router sebelah punya berapa link??”
kita tes, sebelum ditambahin dengan R3….link count pada R2 itu cuma 1
setelah ada R3…link count pada R2 jadi ada 2
Age = ini router-id uda di database tuh berapa lama (max. 3600 detik, 1 jam…abis itu refresh)
Seq# = Sequence number, klo 0×80000003 artinya ini uda update yang ke 3x-nya (max 0x8FFFFFFF, abis itu reset lagi)
Checksum = biar kaga error, value checksum nya di compare ama source router/yang ngirim LSA
==============================
Net Link States (Area 0) = LSA type 2
LSA Type 2 ini isinya adalah link2/rute2 yang dibawa oleh masing2 router
gw punya kenalan siapa aja dan lo punya link/kenalan kemana aja….kita compare yuu
sosialis banget ini OSPF, sering membangun koneksi dan network….lumayan, buat nambah2 relasi bisnis *mulai ngaco*
kita liat deh (sebelum ada R3) untuk inisialisasi LSA Type 2-nya:
Si R2 dan R1 punya temen yang sumbernya (ADV Router alias Advertising router) dari 12.12.12.1
Loh?? Harusnya R1 punya temen sumbernya dari R2 dan R2 punya temen dari R1 dong??ya engga??
Well…biar ngerti…gini percakapannya:
R1: “hei…nama gw R1
R2: “hei juga R1, nama gw R2
Nah, yang mulai duluan negor/kenalan adalah R1 (kirim OSPF hello packet duluan), maka si R2 akan anggep LSA Type 2-nya berasal dari R1
Dan R1 pun, akan nganggep LSA Type 2-nya dari diri dia sendiri (cek lagi deh di gambar LSA Type 1 baik di R1 dan R2, sama persis…dari R1 itu ADV Router-nya)
Nah…..coba kita ganti, yang negor duluan R2 (kita shut
no-shut interface di R1 yang kearah R2)
Begitu di show ip ospf database
Tada…jadi untuk inisialisasi build OSPF database LSA Type 2, tergantung siapa duluan yang negor
SEKARANG KITA TAMBAHIN LOOPBACK INTERFACE MASING2 ROUTER UNTUK MENGETAHUI LEBIH JELAS TENTANG LSA Type 2
(dan ganti router-id masing2 router dengan ip loopback, biar enak baca Link ID dan ADV Router-nya)
Gw pake screenshot dari R1 aja (R2 dan R3 sama persis kok)
Disini kita bisa liat, R2 (2.2.2.2) link count-nya ada 3 (ke R1, ke R3, dan ke IP Loopback)
Pada LSA Type-1 kita bisa liat ada 23.23.23.3 disitu, kenapa nih??
R2: “oi R1…gw punya link ke 12.12.12.2 nih” (liat LSA Type 2-nya…12.12.12.2 dari R2, dia yang kirim hello duluan)
R1: “hmm…gw juga ada link ke 12.12.12.2 (emang lu ama gw konek pake network 12.12.12.0 kan, gw taro di LSA Type 2 deh)”
R2: “oi R1…gw ada link ke R3 nih, gw forward LSA dari R3 ke elu ya?? (3.3.3.3 dan 23.23.23.3)”
R1: “hmm… oke deh…”
Alhasil R1 belajar bahwa untuk ke R3 (3.3.3.3) harus lewat 23.23.23.3
DAN KARENA TOPOLOGI DATABASE OSPF HARUS DAN MEMANG SAMA SETIAP ROUTER DI AREA YANG SAMA, maka R2 dan R3 pun pake LSA yang sama (yang dikirim oleh R1)…yang lebih komplit
Berdasarkan LSA Type 2 (Net Link States):
R1 tau jalan ke 12.12.12.2 via R2 (2.2.2.2) dan tau jalan ke 23.23.23.3 via R3 (3.3.3.3), padahal R3 ga terkoneksi langsung ke R1…ini dikarenakan LSA type 1 nya di forward ke router2 OSPF lain di area yang sama
Pokoke ini router2 OSPF uda pada pinter deh *makanya CPU Process-nya paling tinggi diantara routing protocol yang lain*
==============================
LSA Type 3
Kapan ini LSA tipe 3 muncul?? Klo ada sebuah router yang terhubung ke OSPF Area lain
LSA Type 3 ini lebih dikenal dengan Summary Net Link States
Yuk…gw tambahin router R4
R1 OSPF database (R2 juga sama)
R4 OSPF database (router di area 1)
Waaaaw…look at that *_*
Sekarang kita liat di R3 (ABR-nya)

Beuhhh…panjang braaayyy…
Makanya untuk sebuah router jadi ABR, biasanya yang dipake itu router yang bagusan, karena untuk maintain ini database segini banyak…diperlukan CPU yang bagus
Analogi LSA Type 3 kira2 kek gini:
R4 ketemu sama R3, R4 ada diruangan sebelah (area 1)….kebetulan R3 itu lagi berada di perbatasan ruangan yang satu dengan yang lain (ABR) makanya si R4 bisa negor si R3
R4: “hei…nama gw R4” (ngomong ke R3)
R3: “hei R4, nama gw R3” (tuker2an kartu nama de)
R3: “(hmm…gimana caranya gw kasi kartu nama/router-id R4 ke R1 dan R2 yah, tanpa harus mereka menganggap R4 bagian dari mereka/di ruangan itu)”
R3: “*aha!!*…gw tandain aja de ini kartu nama (LSA Type 3)”
And because of that LSA Type 3…the result in R1 and R2 routing table is…

LSA Type 3 inilah yang bikin Routing Table dalam OSPF jadi O IA
Jadi R1 dan R2 tau bahwa itu R4 ada di ruangan lain, via R3…take a look again on Summary Net Link States, the ADV Router for routers in area 0 and area 1 is 3.3.3.3 which is R3
Itu kan di R1 dan R2…klo di R3 gimana?? Ya ga ada O IA, orang “satu kaki”nya ada diruangan A, “satu kaki”nya lagi diruangan B…itu router ya area 0…ya area 1 juga
============================================
LSA Type 4 & 5
Bagi gw ini LSA tipe 4 dan tipe 5 itu kek kakak beradik…dimana ada 4…pasti ada 5, hahaha
LSA Type 4 & 5 akan muncul klo ada external route, contoh gw tambahin R5:
Di R4:
Analoginya:
EIGRP = Inggris/Bule, OSPF = Indonesia
R5: “hei…whats your name, my name is R5” (bedeeuh…bahasa inggris cui)
R4: “hello R5, my name is R4…nice to meet you” (beeuh, keren dah R4…bisa 2 bahasa, hahaha)
R4: (hmm…gimana caranya ya gw ngasi tau ruangan sebelah, R3 dan kawan2, kalo gw punya kenalan orang bule)
R4: “naaah, gw convert aja kartu nama ini orang bule ke bahasa Indonesia (redistribution)biar pada ngerti baca ni kartu namatrus gw tandain (LSA Type 5)”
Lets check in R3 Routing Table
LSA Type 5 inilah yang bikin routing table dalam OSPF jadi O E2 (atau O E1)
Lalu kisah percintaan ini berlanjut…*wkwkwk*
R4: “woi R3, gw punya kenalan orang bule nih…
R3: “ooo…woke
R3: (naaah, bingung lagi dah gw…klo ini gw tandain sama kek yang udah2…nanti dianggepnya beda ruangan TAPI satu bahasa lagi)
R3: “aah, berhubung cuma gw yang terhubung ke 2 ruangan sekaligus (ABR), gw akan kasi tau router2 diruangan ini (area 0) bahwa di ruangan sebelah (area 1), ada orang yang bisa bahasa inggris (ASBR)…”
Lets see in R3 OSPF database
Inti dari LSA Type 4 adalah supaya ABR bisa ngasi tau ke router2 lain yang ada di area 0 bahwa di area 1 terdapat router yang jadi ASBR
Just look…R3 tells anyone in Area 0 that ASBR (4.4.4.4) and ANY EXTERNAL ROUTE can be reached by going through me (R3 – 3.3.3.3) !!
=========================================
LSA Type 7
Sebelumnya, kita cerita lagi…wkwkw
R5: “eyyyo mameen, I brought some of ma friend here…just introduce them to your friend right there, alrite?!?” (ini bule apa negro si?!?)
R4: “no problem” (sambil ngasih itu kartu2 nama ke R3)
R3: “bused…makin banyak aja nih kartu nama gw, nyimpen dimana lagi ini…mesti gw sortir dulu kek nya” (ABR soalnya @_@ )
R3: “woi R4…klo mau ke ruangan orang2 bule itu cuma lewat lo kan?!?”
R4: “ho oh, mang kenapa??”
R3: “ya wes, gw mau buang2in kartu nama itu orang2 bule (Stub)…pokoknya klo mau kesana…gw lewat elu (default route)”
R4: “wadduuh, padahal di ruangan elu bukannya ada yang pengen kenalan ama bule ya…jgn pake referensi gw lah, emang gw mak comblang…langsung aja” (this is the where the NSSA – Not So Stubby Area begins)
R3: “nope nope nope *sambil geleng2 kepala* (mendadak jago inggris)…pokoke harus lewat elu
R4: (bisa berabe nih klo begini ceritanya…)
R4: (ambil topeng2 opera) “hey guys…use this mask (LSA Type 7) to go to that room, that son of a b**** (R3) wont recognize you
R5: “alrite
Masuk ke ruangan R1 dan R2
R5: (remove the mask) “yo whats up preeeeteeh ladiiiess
R1 dan R2: “waaaah, ada buleee” (mereka ngeliat LSA Type 5)
Sekarang kita bikin NSSA…
Lets check R4 or R3 database
(Note: harusnya 5.5.5.5, Cuma tadi gw pake external summarization…jadinya 5.0.0.0, gpp…ga penting kok)
Nah sekarang kita cek di R1 atau R2
Moral dari cerita diatas adalah (wedew moral…kek pelajaran SD aja):
OSPF area STUB itu nge blok LSA type 4 dan type 5 (itu tuh si kakak beradik hahaha)
Nah, cara untuk ngakalin supaya external route bisa di deliver melalui stub ini berarti kita harus “masking” LSA Type 5 ini dengan LSA type 7
Jadi aturan STUB tetap terpenuhi (ngeblok 4 dan 5 di suatu area), tapi begitu lolos dari area stub…LSA Type 7 akan “dibuang”…yang kelihatan hanya LSA Type 5
Liat deh di R4…pake LSA Type 7, tapi begitu nyampe di R1 atau R2…pake LSA Type 5
Coba kita cek show ip route di R3
LSA Type 7 inilah yang responsible untuk ngerubah rute OSPF jadi O N2 (atau O N1)
Show ip route di R1
See…di R1 itu rute jadi O E2 lagi (because of LSA Type 5)
===========================================
Eh…itu kan LSA tipe 1,2,3,4,5…trus loncat ke 7, tipe 6 nya mana?!?
Wokeh….
LSA Type 6, 8, 9, 10, and 11
LSA Type 6 = M-OSPF (Multicast OSPF), hanya router2 yang dapet multicast OSPF yang dapet LSA Type 6, tapi LSA tipe 6 ini semenjak muncul OSPFv3 (IPv6 OSPF) uda ga digunain lagi
LSA Type 8 =klo di IPv4 OSPF, ini buat carry route BGP Attribute, tapi nasibnya sama kek tipe 6, banyak yang ga support…klo di IPv6,ini dipake untuk nandain link-local address
Contoh IPv6 OSPF (untuk nge-liat LSA Type 8)
LSA Type 9, 10, dan 11 berguna di MPLS (terutama di MPLS TE untuk IPv6)
*gambar nyusul*
=========================================
Wokeh…segitu dulu…

OSPF “too many retransmissions”

1 Comment
Ada kasus menarik ketika gw mencoba implementasi OSPF routing di Multilayer Switch (SW3560 & SW3550)
Awalnya memang ada tulisan OSPF “LOADING to FULL
Tapi setelah beberapa detik jadi kek gini:
Ada kata2 “EXSTART to DOWN, Neighbor Down: Too many retransmissions
Jadi itu 2 multilayer switch gak mau saling adjacency/ga mau jadi neighbor (statusnya ketika show ip ospf neighbor selalu exstart…trus down)
Setelah tak ubek2 ternyata:
Ketika 2 buah neighbor yang memakai OSPF saling tuker (exchange) OSPF DBD (database description), mereka juga ngirim MTU (maximum transmission unit) masing2 (informasi MTU nya ada di DBD packet)…
Nah…value dari MTU ini HARUS MATCH ketika OSPF exchange states, klo tidak sama…akibatnya ya kayak diatas itu
=======================
Kenapa bisa begitu (harus match…)??
Kalau sebuah device ngirim JUMBO FRAME (yang MTU nya bisa lebih dari 1500, biasanya GigabitEthernet interface) sedangkan device penerima tidak support itu JUMBO FRAME (MTU max. 1500), maka itu frame akan di drop
Secara teori…MTU ga match ga masalah…yang jadi masalah klo kebesaran…
The outgoing packets, including OSPF packets cannot have a bigger size than the interface MTU” RFC 2328
kenapa MTU ini harus match?? karena untuk optimasi OSPF itu sendiri…
karena default behavior OSPF itu kira2 seperti ini:
ketika sebuah router “kenalan” dengan tetangganya…dia akan ngasih tau tetangganya tentang informasi teman2/tetangga2 yang dipunyain router itu…celakanya, biasanya SEMUANYA dikasih tau (ibarat kata…OSPF itu kek ibu2…klo dikasi kesempatan ngomong…nyerocos terus ga udah2, gossip sana-gosip ini tentang tetangga2nya)…inilah yang bisa menyebabkan “excessive flooding”
=======================
Solusinya…
Pertama…”ip ospf mtu-ignore” di interface yang bersangkutan
Ini artinya kita ignore MTU exchange…untuk LAB sih ok2 aja, soalnya ignore/cuekin MTU…bukan NYELESEIN MASALAH (tetep aja kirim MTU jumbo-jumbo ga jelas)
Kedua…”system mtu routing [value MTU]” di global config
Samain MTU…tapi sebelumnya cek dulu pake “show system mtu” di kedua belah pihak, yang mana yang ngaco
Ini nih biang recok…ada switch yang MTU nya 1512 (yang normalnya 1500, ternyata setelah gw selidiki SW3550 memang Cuma bisa nerima 1500 MTU, switch lama sih emang)

REFERENCE:

0 comments:

Post a Comment