OSPFv2 ( Open Shortest Path First )

OSPF (Open Shortest Path First), dinamik yönlendirme protokollerinden biridir ve “Link-State” algoritmasını kullanır. OSPF, “Open Standard” bir protokoldür, bu sayede “Multi-Vendor” desteği sunar. Günümüzde, yönlendirme için en yaygın kullanılan protokollerden biridir. OSPF protokolünde, “Administrative Distance” değeri 110’dur. Metrik olarak ise “Cost” adı verilen değer baz alınır.

Çeşitli dinamik yönlendirme protokolleri bulunmaktadır ve bunlar farklı zamanlarda geliştirilmiştir. Protokollerin ortaya çıkış tarihlerini gösteren bir zaman çizelgesini aşağıdaki görseli inceleyerek görebilirsiniz.

1991 yılında duyurulan OSPFv2, RIP (Routing Information Protocol) protokolünün eksikliklerini gidermek amacıyla geliştirilmiştir. OSPFv2 sadece IPv4 adreslerini destekler. Günümüzde IPv4 adreslerinin tükenme noktasına yaklaşmasıyla birlikte, “OSPFv3” IPv6 desteği ile geliştirilmiştir. OSPFv3, hem IPv4 hem de IPv6 desteği sunar. Topolojilerimizi IPv4 olarak ayarlasak bile OSPFv3 kullanıyorsak, cihazların üzerinde IPv6 konfigürasyonunu gerçekleştirmemiz gerekir çünkü OSPF haberleşmesi IPv6 adresleri kullanılarak gerçekleştirilir.

“Interior Gateway Protocol” (IGP) tarafında birçok dinamik yönlendirme protokolü bulunmaktadır ve bunlar kendi içinde kullandıkları algoritmalara göre ikiye ayrılırlar: “Distance-Vector” ve “Link-State”.

“Distance-Vector” algoritmasını kullanan iki protokol vardır: RIP (Routing Information Protocol) ve EIGRP (Enhanced Interior Gateway Routing Protocol).

RIP protokolü, “Open-Standard” bir protokoldür ve bu nedenle “Multi-Vendor” destekler. Ancak birçok handikapı bulunmaktadır. Bunların başında uçtan uca 15 tane router öğrenebilmesi gelir. Ayrıca kullandığı metrik değeri sadece atladığı hop sayısını temel alır. Ne kadar az cihaz atlanırsa, hat o kadar iyi olduğu varsayılır.

EIGRP protokolü ise aslında çok güzel bir protokoldür. Metrik olarak bant genişliği, gecikme, güvenilirlik ve yük gibi değerleri kontrol eder. Ancak bu protokol sadece “Cisco” tarafından geliştirildiği için sadece “Cisco” cihazlarda kullanılabilir.

Link-State algoritmasını kullanan iki protokol bulunmaktadır: IS-IS ve OSPF.

IS-IS protokolünü destekleyen cihaz sayısı azdır. Genelde ISP ( Internet Service Provider ) tarafından kullanılır. İlk geliştirildiği yıllarda “IP” protokolü için tasarlanmamıştır. CLNS denilen farklı bir protokolü taşıyabiliyordu. Daha sonradan IP taşıyabilir hale getirildi. ISO tarafından standartlaştırılmıştır. IS-IS protokolü “OSPF” protokolünden daha güçlü bir protokoldür. Ancak destekleyen cihaz sayısı az olduğu için kullanım alanı da kısıtlıdır.

IS-IS protokolünü destekleyen cihaz sayısı azdır, genellikle ISP (Internet Service Provider) tarafından kullanılır. İlk geliştirildiği yıllarda “IP” protokolü için tasarlanmamıştır; CLNS adı verilen farklı bir protokolü taşıyabiliyordu. Daha sonra IP taşıyabilir hale getirildi. ISO tarafından standartlaştırılmıştır. IS-IS protokolü, OSPF protokolünden daha güçlü olmasına rağmen, destekleyen cihaz sayısının az olması nedeniyle kullanım alanı kısıtlıdır.

Protokollerin bu gibi eksilerinden dolayı, kurumsal yönlendirme için “OSPF” protokolü oldukça yaygın bir şekilde kullanılır.

OSPF, “Faster Convergence” özelliğine sahip bir protokoldür, yani yeni bir ağı diğer cihazlara hızlı bir şekilde öğretebilir.

RIP ve EIGRP gibi protokoller ağ ve metrik bilgilerini paylaşırlar.

* Metrik bir yolun kalitesini belirten değerdir.

OSPF sadece ağ bilgilerini öğretmekle kalmaz, aynı zamanda link bilgilerini de öğretir. Yönlendirici cihaz üzerindeki bağlantılara “Link” denir. OSPF, ağ bilgisi, metrik değeri, linkin ucundaki cihaz, linkte kullanılan teknoloji gibi bilgileri de paylaşır.

OSPF haberleşmesinde kullanılan 5 farklı mesaj vardır. Bunlar;

  • Hello Packet –> “Hello” paketinin iki farklı görevi vardır. Birincisi, “OSPF” başlatmaktır ve içerisinde herhangi bir link veya ağ bilgisi barındırmaz. Hello mesajları 10 saniyede bir gönderilir. İkinci görevi ise komşuluk kurulduktan sonra, komşu cihazın hayatta olup olmadığını kontrol etmek için kullanılır. Komşu cihazdan normal şartlarda 10 saniyede bir hello mesajı gelmesi gerekmektedir. Eğer komşu cihaz 40 saniye boyunca herhangi bir hello mesajı göndermezse, komşu cihazın öldüğü varsayılır. Bu 40 saniyelik süreye de “Dead Interval” denir.
  • Database Description Packet –> Bu mesaj, tüm veritabanının bir özetini paylaşır. OSPF operasyonu sürecinde bu paketin görevini daha iyi anlayacağız.
  • Link-State Request Packet –> Eksik olan link bilgilerini talep etmek için kullandığımız mesajdır. Sadece bağlantıda olduğumuz cihazla yaptığımız bir haberleşmedir.
  • Link-State Update Packet –> Cihaz üzerinde olan ağ bilgilerini diğer cihazlarla paylaşmak için kullandığımız mesajdır. Bu mesaj diğer cihazlara “Flood” edilir. Yani herkesle paylaşılır.
  • Link-State Acknowledgment Packet –>OSPF mesajları, onay mekanizmasına sahiptir. Link-State Request veya Update mesajlarının ulaşıp ulaşmadığını onaylamak için gönderilen mesajdır.

OSPF protokolünün tuttuğu iki farklı tablo bulunmaktadır: Adjacency Table ve Link-State Database (LSDB).

Bu tabloların farklı görevleri bulunmaktadır.

“Adjacency Table” veya “Neighbor Table”, komşu OSPF cihazlarının yer aldığı tablodur. Bu tabloda komşularımız bulunmaktadır. Komşu cihazlar OSPF için çok önemlidir çünkü farklı ağlara komşu cihazlarımız üzerinden gideriz. Eğer komşu cihaz ölürse, o cihaz üzerinden gittiğimiz ağlarda da bağlantı kesilir. Bu sebeple komşumuzun hayatta olduğunu sürekli test etmemiz gerekir ve bunun için “Hello Paketlerini” kullanırız. Bu tabloyu cihaz üzerinde görüntülemek için aşağıdaki komutu kullanabiliriz:

Router# show ip ospf neighbor

İkinci tablomuz “Link-State Database (LSDB)” veya “Topology Table” olarak adlandırılır. Bir ağı birden fazla farklı rotadan öğrenmemiz mümkündür. Ancak öğrendiğimiz ağa giderken bu yollardan hangisini kullanacağımız belli değildir. İşte bu yüzden, bir ağa giderken kullanabileceğimiz farklı yolları tek bir tabloda toplamamız gerekmektedir. Daha sonra en iyi yolu belirlemek için bir algoritma kullanırız ve bu yolu yönlendirme tablomuza yazarız. Eğer seçtiğimiz yolda bir problem olursa, tablomuzda bulunan alternatif yolları kullanarak hedefle iletişime devam edebiliriz. OSPF, en iyi yolu hesaplamak için “Dijkstra algoritması” olarak da bilinen “SPF” algoritmasını kullanır. Ayrıca, IS-IS protokolü de bu algoritmayı kullanır. Bu tabloyu cihaz üzerinde görüntülemek için aşağıdaki komutu kullanabiliriz.

Router# show ip ospf database

OSPF protokolünde “Area” adı verilen bir kavram bulunmaktadır. Bu kavram, OSPF ağlarında hiyerarşik yapı oluşturmayı sağlar. İki farklı türde “Area” bulunmaktadır: Bu makalede, yalnızca “Single Area” OSPF’e odaklanacağız. Single Area OSPF, yaklaşık 50 routerlık ağları çözmek için kullanılabilir. Kısaca, eğer bütün cihazlar aynı “Area” içerisinde bulunuyorsa, o ağda “Single Area OSPF” yapılmış demektir. Ancak, cihazlar farklı “Area”larda bulunuyorsa, o ağda “Multi Area OSPF” yapılmış demektir. Daha sonraki makalelerde Multi-Area OSPF konusuna değineceğim.

Single-Area OSPF’de, tüm cihazlar aynı “Link-State Database”e sahiptir ve haritaları aynıdır. Çünkü hepsi aynı “Area” içerisinde bulunmaktadır. AREA numarası olarak 0, 5, 10 gibi değerler atanabilir, ancak önemli olan bütün cihazların aynı AREA’da bulunmasına dikkat etmektir.

Multi-Area OSPF’te dikkat edilmesi gereken şey, farklı AREA’ların mutlaka AREA 0’a bağlı olmasıdır. Area 0’da bulunan yönlendiricilere “AREA BORDER GATEWAY” denir. Örneğin, R1 cihazı hem Area 1’in haritasını hem de Area 0’ın haritasını bilmektedir, ancak Area 51’in haritasını bilmemektedir. R2 cihazı, AREA 51’in özetini R1 ile paylaşır. Bu özet içerisinde Network ve Cost bilgileri yer alır, bu sayede cihazlar birbirleriyle haberleşebilir. Multi-Area OSPF’in avantajı, haritayı küçültmesidir, çünkü harita ne kadar büyürse SPF hesabı da o kadar artacaktır. Ayrıca, “Flapping-Link” adı verilen bir sorun vardır. Bu sorun, bir linkin sürekli kapanıp açılması durumudur. Bu durumda her açılıp kapanmada SPF hesabının yeniden yapılmasına neden olur. Multi-Area OSPF sayesinde, bu hesabın sadece Area içerisinde kalmasını sağlıyoruz. “Flapping-Link” sorunu, IS-IS protokolünde de mevcuttur.

OSPF Çalışma durumları 7 adımda incelenebilir. Bu adımlar sırasıyla aşağıdaki gibidir.

  • Down-State –> OSPF protokolünün başlamadığı adımdır.
  • Init-State –> OSPF, cihaz üzerinde başlatıldığı anda, “passive-interface” belirtilmediği sürece tüm linklerinden her 10 saniyede bir “Hello-Paketi” yollamaya başlar.
  • Two-Way-State –> Bu adımda cihazlar birbirine karşılıklı olarak “Hello Paketleri” göndermeye başlar. Ayrıca, eğer topoloji “Broadcast Multiaccess” bir ağsa, örneğin Ethernet, “DR (Designated Router)” ve “BDR (Backup Designated Router)” seçimi yapılır. DR ve BDR seçimi yapılırken “Router-ID” değerine bakılır. “Router-ID” değeri OSPF çalışan tüm routerlara verilen bir isimdir ve 32 bitlik bir adrestir. IPv4 adreslerine benzer görünseler de, aslında IP adresleriyle doğrudan bir ilişkisi bulunmamaktadır. Ayrıca “Router-ID” değeri belirlenmeden OSPF başlatılamaz. “Router-ID” değeri genellikle aşağıdaki adımlarla belirlenir:
    • İlk belirleme yönteminde kullanıcı, isteğe bağlı olarak “Router-ID” değerini statik olarak belirleyebilir.
    • İkinci adımda, eğer kullanıcı “Router-ID” değerini statik olarak belirlemezse, yönlendiricideki “Loopback” adreslere bakılır. Eğer bir veya daha fazla “Loopback” adresi bulunuyorsa, “Router-ID” olarak en yüksek olan “Loopback” adresi seçilir.
    • Son adımda, eğer cihaz üzerinde herhangi bir “Loopback” adresi yoksa, bu durumda en yüksek “AKTİF” IP adresi “Router-ID” olarak seçilir.
  • ExStart-State –> Bu adımda, ilk hangi cihazın “Database özetini” paylaşacağı veya ilk hangi cihazın “Database Description” mesajı göndereceği belirlenirken yine “Router-ID” değerine bakılır. “Router-ID” değeri büyük olan kazanır.
  • Exchange-State –> Bu adımda, “Router-ID” değeri büyük olan cihaz, özet bilgisini paylaşır. Daha sonra diğer cihazlar da kendi özet bilgilerini paylaşırlar. Gelen veritabanı bilgisi ile kendi veritabanlarını karşılaştıran cihazlar, eksik olan bilgileri belirlerler.
  • Loading-State –> Eksik olan link bilgilerini talep etmek için “Link-State Request” mesajı gönderilir. Bu mesaj sadece ilgili cihaza gönderilir. Ardından, cihaz kendinde bulunan ağı diğer cihazlarla paylaşmak için “Link-State Update” mesajı gönderir. Bu mesaj herkese “Flood” edilir.
  • Full-State –> Komşuluğun tamamlandığı adımdır.

OSPF protokolünde cihazlar haberleşmek için “224.0.0.5” Multicast adresini kullanırlar. Bu adres tüm “OSPF” yönlendiricileri için ayrılmıştır.

RIP ( Routing Information Protocol ) gibi eski protokoller ağ bilgilerini her 30 saniyede bir öğretiyor. OSPF ve EIGRP gibi modern protokoller, ağ bilgilerini başlangıçta öğrettikten sonra sadece değişiklikleri öğretirler. Ancak, OSPF protokolünde “Paranoid Update” olarak adlandırılan bir mekanizma bulunmaktadır. Bu mekanizma nedeniyle OSPF, her 30 dakikada bir ağ bilgilerini yeniden öğretir. Bunun nedeni, ortamda senkronize olmayan ve veritabanı aynı olmayan bir cihazın varlığı durumunda olası uyumsuzlukları çözmektir. Bu ihtimal düşük olsa da, böyle bir durumda sorunlar yaşanabilir. Benzer bir mekanizma, IS-IS protokolünde de bulunmaktadır.

DR (Designated Router) ve BDR (Backup Designated Router), Broadcast Multiaccess ağlarında kaosu önlemek için tasarlanmıştır. Bu ağlarda, birden fazla cihazın aynı ağ segmentine bağlı olduğu durumlarda, trafik yönetimini kolaylaştırmak için kullanılırlar. DR ve BDR seçimi, her bir cihazın sahip olduğu benzersiz bir kimlik olan “Router-ID” değerine dayanır. BDR ise DR’nin başarısız olması durumunda hızlı bir geçiş sağlamak amacıyla yedek olarak atanır. DR ve BDR, ağ üzerindeki tüm cihazlar arasında bir hiyerarşi oluşturur. DR, ağdaki tek bir noktadan iletişimi yöneterek trafik yoğunluğunu azaltır ve ağdaki diğer cihazların iş yükünü azaltır. BDR ise, DR’nin hizmet dışı kalması durumunda hızlı bir şekilde devralarak ağın sürekliliğini sağlar. Bu yöntem, ağdaki veri iletimini düzenleyerek iletişimdeki verimliliği artırır ve ağdaki kaosu önler. DR ve BDR 224.0.0.6 adresini dinler. DR ve BDR seçimi “Two Way State” adımında gerçekleşir. DR ve BDR seçilen ağda, DR veya BDR olmayan cihazlara “DROTHER” denir.

OSPF protokolünü “Yönlendirici” üzerinde başlatmak için aşağıdaki komutu kullanabiliriz.

Router(config)# router ospf {Proccess ID}

“Process ID” değeri 1 ile 65535 arasında bir değer alır. “Area” kavramı ile doğrudan ilişkilendirilmez. “Process ID” numarası, OSPF (Open Shortest Path First) protokolünde kullanılır ve OSPF süreçlerini ayırt etmek için kullanılır. Her OSPF sürecinin benzersiz bir kimliğini temsil eder.

Router(config)# router ospf 1


“OSPF” protokolünü başlattıktan sonra eğer “OSPF Process 1 cannot start. There must be at least one ‘up’ IP interface.” hatası alırsak, cihazda “Router-ID” seçiminin yapılmadığı ve “Router-ID” seçmemiz gerektiği sonucunu çıkarabiliriz. Eğer bu hatayı almamışsak, “Router-ID” seçimi yapılmıştır. Eğer seçmediysek bile buraya girmemize izin veriyor, çünkü burada istediğimiz zaman “Router-ID” değerini kendimiz belirleyebiliyoruz. “Router-ID” değerini belirlemek için aşağıdaki komutu kullanabiliriz.

Router(config)# router ospf 1
Router(config-router)# router-id 1.1.1.1
Router(config-router)# exit
Router(config-router)#

Yukarıdaki örnekte “Router-ID” değerini cihaz için “1.1.1.1” olarak belirledik.

“Router-ID” değerini belirledikten sonra kontrol için aşağıdaki komutu kullanabiliriz.

Router# show ip protocols

“Router-ID” seçildikten sonra tekrar değiştirilmek istenmez. Bunun sebebi, komşuluklar kurulduktan sonra “Router-ID” değerini değiştirirsek, kurulan bütün komşuluklar silinecektir çünkü cihazlar komşularını “Router-ID” değerlerine göre tanırlar. Ancak yine de “Router-ID” değerini cihaz üzerinde değiştirmek istiyorsak, bunu yapabiliriz. Bunu yapmak için aşağıdaki komutu kullanabiliriz.

Router(config)# router ospf 1
Router(config-router)# router-id 2.2.2.2 ( Yeni Router-ID değeri )
Router(config-router)# end
Router#
Router# clear ip ospf process
Router#
Reset ALL OSPF processes? [no]: y ( Burada silmek isteyip istemediğimizi tekrar sorar önlem amaçlıdır. Çünkü bunu saha operasyonunda silmek haberleşmenin kısa süreliğine de olsa gitmesine neden olur. )

Komutu çalıştırdıktan sonra “Router-ID” kontrolü yaptığımızda değiştiğini görebiliriz.

OSPF protokolünde ağları diğer cihazlara öğretmek için üç farklı yöntem bulunmaktadır. Öğreteceğimiz ağ “192.168.1.0/24” olsun ve bu ağı kullanarak üç farklı örnek oluşturalım.

Yöntem-1
Router(config)# router ospf 1
Router(config-router)# network 192.168.1.0 0.0.0.255 area 1  ( AREA BURADA BELİRLENİR. ) 
Router(config-router)# end
Router#

İlk yöntemde, “Wildcard Maskesi” kullanarak tanıtım yaptık. “Wildcard Maskesini” hesaplamak için “255.255.255.255” den “Subnet Maskesini” çıkarmamız gerekiyor. “/24” için “Subnet Maskesinin” tersi oluyor. Ayrıca aynı satırda “Area” numarasını da belirledik.

Yöntem-2
Router(config)# router ospf 1
Router(config-router)# network 192.168.1.1 0.0.0.0 area 1
Router(config-router)# end
Router#

Bu yöntem, ilk yönteme göre daha az hata yapabileceğimiz bir yöntemdir çünkü gereksiz “Wildcard Maskesi” hesabı yapmıyoruz. Burada cihazdaki ilgili arayüze tanımladığımız “IP” adresini yazıyoruz. Yönlendirici cihaz ilgili arayüze gidip “Subnet Maskesini” öğreniyor.

Yöntem-3 ( IPv6 için Uygun )
Router(config)# interface GigabitEthernet 0/0/0
Router(config-if)# ip ospf 1 area 1
Router(config-if)# exit
Router(config)# interface GigabitEthernet 0/0/1
Router(config-if)# ip ospf 1 area 1
Router(config-if)# end
Router#

Bu yöntemde, ilgili arayüzlere girip konfigürasyonu yapıyoruz. Bu yöntem genellikle IPv6’da kullanılır. Avantajı, hata yapması zor olmasıdır çünkü uygulaması çok basittir. Dezavantajı ise istenirse bir arayüze birden fazla IP adresi verilebilir. Bu durumda öğretmek istemediğimiz bir IP adresini de OSPF protokolünü arayüzden başlattığımız için öğretmiş oluruz.

OSPF protokolü başlatıldığı anda, “Yönlendirici” cihaz üzerindeki tüm linklerden “Hello Paketleri” gönderilmeye başlanır. Ancak ucunda “Yönlendirici” cihaz olmadığını bildiğimiz linklerde bu “Hello Paketlerine” gerek yoktur. Çünkü ne kadar gönderirsek gönderelim, herhangi bir yanıt almayacağız. Bu durumda gereksiz trafik oluşturmuş oluruz ve güvenlik sorunlarıyla karşılaşabiliriz. Güvenlik sorunlarının sebebi, ağda bulunan bir tehdit aktörünün içeride bir OSPF yazılımı kurup “Yönlendirici” cihaz ile etkileşime geçme riskidir. Tehdit aktörü, Windows Server veya bir Linux sisteme “OSPF” yazılımı kurabilir. Bu tip sorunların önüne geçmek için, linkte “yönlendirici” olmadığını bildiğimiz ağları “passive” hale getirmektir. Bunun için “passive-interface” komutu kullanılabilir.

Router(config)# router ospf 1
Router(config-router)# passive-interface gigabitEthernet 0/1
Router(config-router)# passive-interface loopback 1
Router(config-router)# end
Router#

Artık “GigabitEthernet 0/1” ve “Loopback 1” arayüzlerine “Hello Paketleri” gitmeyecektir.

Kullanıcı istediği takdirde DR ve BDR seçimini kendisi belirleyebilir. Bunun için “Priority” değeri kullanılır. Priority değeri normalde tüm cihazlar için varsayılan olarak “1” olarak ayarlanmıştır. Ancak bu değer 0 ile 255 arasında değiştirilebilir. “Priority” değeri yüksek olan cihaz, DR olarak seçilir. Eğer “Priority” değerleri eşitse, “Router-ID” değerine bakılır. Priority değerini değiştirmek için aşağıdaki komutları kullanabiliriz.

Router(config)# interface gigabitEthernet 0/0
Router(config-if)# ip ospf priority 100
Router(config-if)# end
Router#


Eğer ağda DR veya BDR seçimine katılmasını istemediğimiz bir cihaz varsa, “Priority” değerini “0” yapabiliriz. Bu durumda cihaz, bu seçime katılmayacaktır. Ancak bir ağda bütün cihazların “Priority” değerini “0” yapamayız. Bu durumda OSPF başlamayacaktır.

OSPF metrik değeri olarak “COST” değerini baz alır. “COST” değerinin hesabı aşağıdaki işlemle yapılır.

COST = REFERANS BANT GENISLIGI / ARAYUZ BANT GENISLIGI


Referans bant genişliği “Megabit” cinsinden belirtilir ve değiştirilebilir. Bunu yapmak için aşağıdaki komutları kullanabiliriz.

Router(config)# router ospf 1
Router(config-router)# auto-cost reference bandwidth 40000
Router(config-router)# end
Router#

Referans bant genişliği değerini tüm cihazlar için aynı yapmamız gerekiyor. “COST” değerini isteğe bağlı olarak manuel olarak belirleyebiliriz. Bunun için ilgili arayüzün altına girmemiz gerekecektir. Olabilecek en iyi “COST” değeri “1” dir.

Router(config)# interface gigabitEthernet 0/1
Router(config-if)# ip ospf cost 10
Router(config-if)# end
Router#


Hesaplama yapılırken “COST” değerleri toplanır ve en küçük “COST” değerine sahip olan yol tercih edilir. Eğer “COST” değerleri eşitse, “Load Balancing” yapılır.

“Hello” paketleri “10” saniyede bir gönderilir. Eğer 40 saniye boyunca “Hello” paketi gelmezse, komşu cihazın öldüğü varsayılır. Buna da “Dead Interval” denir. Komşuluk kurulabilmesi için bu sürelerin tüm komşu cihazlar için aynı olması gerekmektedir. Eğer farklı olursa, komşuluk ilişkisi kurulamaz. İstersek, bu süreleri değiştirebiliriz. Değiştirmek için aşağıdaki komutları kullanabiliriz.

Router(config)# interface gigabitEthernet 0/0
Router(config-if)# ip ospf hello-interval 5 ( HELLO INTERVAL == 5 ) 
Router(config-if)# ip ospf dead-interval 20 ( DEAD INTERVAL == 20 ) 
Router(config-if)# end
Router#

OSPF Uygulamasını aşağıdaki topoloji üzerinden gerçekleştireceğim.

Router-1(config)# interface gigabitEthernet 0/0
Router-1(config-if)# ip address 192.168.1.1 255.255.255.0
Router-1(config-if)# no shutdown
Router-1(config-if)# exit
Router-1(config)#
Router-1(config)# interface gigabitEthernet 0/1
Router-1(config-if)# ip address 10.0.0.1 255.255.255.0
Router-1(config-if)# no shutdown
Router-1(config-if)# exit
Router-1(config)#
Router-1(config)# router ospf 1
Router-1(config-router)# auto-cost reference-bandwidth 40000
Router-1(config-router)# network 192.168.1.0 0.0.0.255 area 1
Router-1(config-router)# network 10.0.0.1 0.0.0.0 area 1
Router-1(config-router)# passive-interface gigabitEthernet 0/0
Router-1(config-router)# end
Router-1# copy running-config startup-config
Router-1#
Router-2(config)# interface gigabitEthernet 0/0
Router-2(config-if)# ip address 10.0.0.2 255.255.255.0 
Router-2(config-if)# no shutdown
Router-2(config-if)# exit
Router-2(config)#
Router-2(config)# interface gigabitEthernet 0/1
Router-2(config-if)# ip address 10.0.1.2 255.255.255.0 
Router-2(config-if)# no shutdown
Router-2(config-if)# exit
Router-2(config)#
Router-2(config)# router ospf 1
Router-2(config-router)# auto-cost reference-bandwidth 40000
Router-2(config-router)# network 10.0.0.0 0.0.0.255 area 1
Router-2(config-router)# network 10.0.1.2 0.0.0.0 area 1
Router-2(config-router)# end
Router-2# copy running-config startup-config
Router-2#
Router-3(config)# interface gigabitEthernet 0/0
Router-3(config-if)# ip address 192.168.2.1 255.255.255.0
Router-3(config-if)# no shutdown
Router-3(config-if)# exit
Router-3(config)#
Router-3(config)# interface gigabitEthernet 0/1
Router-3(config-if)# ip address 10.0.1.1 255.255.255.0
Router-3(config-if)# exit
Router-3(config)#
Router-3(config)# router ospf 1
Router-3(config-router)# auto-cost reference-bandwidth 40000
Router-3(config-router)# network 192.168.2.1 0.0.0.0 area 1
Router-3(config-router)# network 10.0.1.0 0.0.0.255 area 1
Router-3(config-router)# passive-interface gigabitEthernet 0/0
Router-3(config-router)# end
Router-3# copy running-config startup-config
Router-3#

Konfigürasyonlardan sonra “Router-1” isimli cihazın “Yönlendirme Tablosunu” aşağıdan inceleyebiliriz.

Test işlemini gerçekleştirelim.

OSPF ile “Default Rota” öğretebiliriz. Statik rota ile ilgili makaleme aşağıdaki bağlantıdan ulaşabilirsiniz.

Router(config)# ip route 0.0.0.0 0.0.0.0 10.0.0.1
Router(config)# router ospf 10
Router(config-router)# default-information originate ( Tanımladığımız default rotayı diğer cihazlara OSPF ile öğretecek. )
Router(config-router)# end
Router#

Diğer cihazlar, varsayılan rotayı öğrendikten sonra, öğrenen cihazın yönlendirme tablosunda “OE2″ şeklinde görünecektir. “O”, “OSPF” ile öğretildiği anlamına gelir. “” ise statik rotayı belirtir. “E”, “External Route” anlamına gelir. OSPF protokolünde 2 tip External Route bulunmaktadır: E1 ve E2. Kısaca, başka bir teknoloji ile tanımlanan ve OSPF ile öğretilen rotayı ifade eder.

Şimdi de işimize yarayabilecek “Kontrol” komutlarını görüntüleyelim. OSPF protokolü ile birlikte kullanabileceğimiz birçok kontrol komutu bulunmaktadır.

Router# show ip protocols

Kullanılan routing protokollerinin detaylarını gösterir.

Router# show ip ospf neighbor

En önemli kontrol komutlarından biridir. OSPF komşuluk tablosunu ( Adjacency Table ) gösterir. OSPF protokolünde herhangi bir sorun varsa ilk olarak bu kontrol komutu kullanılmalıdır.

“STATE” görünümü farklı şekillerde olabilir. Örneğin, “FULL/DROTHER” yazıyorsa, bu cihazın DR veya BDR olduğunu anlayabiliriz, çünkü tüm cihazlar “DR ve BDR” ile komşuluk kurarlar. “FULL/DR” veya “FULL/BDR” ise, DR veya BDR olmayan DROTHER cihazların tablolarında görebiliriz. “2-WAY/DROTHER”, bir “DROTHER” cihazın diğer “DROTHER” cihazla kurduğu ilişkidir. Full-State durumunda değillerdir, “Two-Way-State” durumunda kalırlar, yani sadece birbirlerine “Hello Paketleri” gönderip hayatta olup olmadıklarını test ederler.

Router# show ip ospf

OSPF protokolü ile ilgili genel detayları gösterir. Router-ID değerini öğrenmek ve OSPF protokolünün çalışıp çalışmadığını test etmek için kullanılabilir.

Router# show ip ospf interface GigabitEthernet 0/0

OSPF çalışan arayüz ile ilgili bilgileri gösterir.

Router# show ip ospf interface brief

Hangi arayüzde OSPF protokolünün çalıştığı, IP adresleri, Cost değerleri gibi bilgileri getirir.

Daha fazla bilgisayar ağları içeriği için takipte kalın…

Hüseyin Pala hakkında 53 makale
System and Network Specialist Candidate

İlk yorum yapan olun

Bir yanıt bırakın

E-posta hesabınız yayımlanmayacak.


*