İçerikleri sosyal medya üzerinden paylaşarak daha fazla kişiye ulaşmasına yardımcı olabilirsiniz.



Kategori: Routing-Switching
Fırat Boyan 28.10.2018 4

OSPF (Open Shortest Path First- İlk Açık Yöne Öncelik) Protokolü ile Dinamik Yönlendirme

Daha önceki makalemde Distance Vector Protocol'lerden olan RIPv2 ve IGRP Dynamic Routing (dinamik yönlendirme) protokollerinden bahsetmiştim. Bu malemde de, Link State Dynamic Routing protokolü olan OSPF (Open Shortest Path First- İlk Açık Yöne Öncelik) protokolünden bahsedeceğim.
OSPF (Open Shortest Path First), RIP (Routing Information Protocol) protokolünde bulunan bazı eksik yanları geliştirmek ve düzeltmek için IETF (Internet Engineering Task Force) tarafından geliştirilmiş bir protokoldür. RIP'in aksine OSPF, Link-state (Hat Durumu) protokolü olarak tasarlanmıştır. Link-state yönlendirme protokolleri, topolojinin tamamını görebildiği gibi, Network değişikliklerinde Triggered Update (Tetiklenmiş Güncelleme) gönderir. Buna göre Router'lar, Network'te iki nokta arasında bulunan tüm yolların bilgisine ulaştıktan sonra SPF (Shortest Path First) algoritmalarını kullanarak hangi yolun en iyisi olduğuna karar verirler. Ayrıca Link-state Refresh (Hat Durumu Güncellemesi) olarak bilinen, 30 dakikada bir periyodik güncellemeler gönderir.

OSPF’nin Özellikleri

Max. Hop değeri: OSPF'te Hop sınırlaması yoktur. Router'lar birlerine Point-to-Point bağlıdırlar.
Area: OSPF, Area(Alan) mantığı üzerinde çalışır. Area0, Backbone Area olarak kabul edilir.
Administrative Distance-Metric: 110'dur.
Metrik: Metrik hesaplaması olarak Cost Calculation kullanılır. Buna göre en düşük maliyetli yol, en iyi yoldur. Cost Calculation bilgisi, Router Routing table'a yazılır. Oluşturulan veri tabanı sayesinde Network (ağ) içerisinde yol bilgisi ve mesafe hesaplaması otomatik yapılır. SPF (Shortest Path First) algoritması ile Network (ağ) toplojisi çıkar ve her 10 sn'de bir değişiklik var mı, yok mu diye Hello paketleriyle yoklama çeker.
Trigger Update mantığıyla çalışır.
Subnet Mask üzerinde Netmask yerine Wildcard Mask kullanılır. Wilcard Mask, Netmask'ın eksi değerli karşılığıdır.

Ör. 1
Netmask: 255.255.224.0
Wildcard Mask: 0.0.31.255
255-224=31

Ör. 2
Netmask: 255.240.0.0
Wildcard Mask:0.15.255.255
255-240=15

Ör. 3
Netmask: 252.0.0.0
Wildcard Mask:003.255.255.255
255-252=3

NOT 1: Wildcard Mask, sadece Router'ların kendilerine bağlı Interface'lerinde Network tanımlaması yaparken kullanılacaktır.
Netmask, Router'ların port'larına IP adresi tanımlama yaparken kullanılacaktır.

OSPF Çalışma Mantığı

OSPF’nin Özellikleri bölümünde belirtilen bilgileri biraz daha açalım.

1- Bir Link State Protokolü olan OSPF, Distance Vector Protocol'ler de olduğu gibi update table mantığında değil, komşu Router'larının UP olup olmadıklarını anlamak için hedefe gidilecek en kısa yolu (Shortest Path) seçer ve her 10 saniyede bir değişiklik var mı, yok mu diye küçük Hello paketleri gönderirler.

OSFP Yapılandırması

Hello paketi içerisinde yer alan bilgiler:

Hello and Dead Interval: 10 saniye de bir gönderilen hello paketlerinin süresidir.
Neighbors: İletişimde bulunan komşuların sayısıdır.
Area ID: OSPF prokolü Area mantığı ile çalışır ve iletişim kuran Router'ların Area ID'leridir.

NOT 2: Area yapısında Backbone Area (omurga alan) Area 0'dır ve her OSPF topolojisi

Router ID: Router'ı tanımlayan 32-Bit'lik ve tek olan numaradır. Router ID, Router'ın aktif olan Interface'ndeki en yüksek IP adresidir. Yani aktif olan Interface'lerdeki en büyük IP adresi, o Router'ın ID'sidir. Router'da Loopback IP adresi tanımlanmışsa ki genelde tanımlanır; o Router'ın ID'si, Loopback IP adresidir. IP adresinin küçük veya büyük olması durumu değiştirmez, burada Loopback adresinin böyle bir ayrıcalığı vardır. Ancak birden fazla Loopback IP adresi tanımlanmışsa, burada da yine en büyük Loopback IP adresi, o Router'ın ID'si olur.

Ör1.
Router1 ip1 1.1.1.1
Router1 ip2 2.2.2.2
Burada en büyük IP adresi 2.2.2.2 olduğu için, Router ID'si de budur.


DR & BDR IP Adresses: Network'ün DR (Designated Router) ve BDR (Backup Designated Router) adresidir.
- DR (Designated Router): Network'teki yönlendirme bilgilerini kendine toplayıp diğer Router'lara dağıtır.
- BDR (Bacup Designated Router): DR'ın yedeği olarak çalışır ve DR aktif olmadığı durumda BDR devreye girer.
- DR ve BDR seçimi, Router ID'lerine göre yapılır. Network'teki en yüksek Router ID'ye sahip Router, DR olarak seçilir ve ikinci en büyük Router ID'ye sahip Router ise BDR olarak seçilir.

Ör.-1
Router1 ip 1.1.1.1
Router2 ip 2.2.2.2
Burada;
Router2 DR olur.
Router1, BDR olarak seçilir.


Router Priority: İletişimde kullanılan 8-bit'lik sayıdır.
-En yüksek priority değerine sahip olan Router, DR olarak seçilir. Eğer Router'ların priority değeri aynı ise, ki varsayılan olarak priority değer 0'dır, bu sefer de Router ID değeri en yüksek olan Router DR olarak seçilir. Bu da yukarıda anlattığım gibi Router ID, Router'ın aktif olan Interface'ndeki en yüksek IP adresidir.

NOT 5: Priority değeri 0 olan Router, asla DR/BDR seçim işleminde yer almaz.

Ör.-2
Router1 priority 1 ip 1.1.1.1
Router2 priority 1 ip 2.2.2.2
Burada;
Router2, DR olur.
Router1 ise BDR olarak seçilir.

Ör.-3
Router1 priority 1 ip1 1.1.1.1
Router1 priority 1 ip2 2.2.2.2
Router2 priority 1 ip1 3.3.3.3
Router2 priority 1 ip2 4.4.4.4
Burada;
Router2 için DR 4.4.4.4'lü Interface'dir.
Router1 için BDR 1.1.1.1'li Interface'dir.


Authentication Password: Router Session (oturum) şifreleridir.
Stub Area Flag: Özel bir Area olup her iki Router'da da aynı olmalıdır.

2- Değişiklik varsa, yani ortama yeni bir Router eklendiğinde veya bir Router down olduğunda, Trigger Update ile LSA paketlerini neighbour (komşu) Router'lara gönderir ki Neighbour (komşu) tablosunda, bir Router'ın iletişim kurduğu tüm Router'ların listesi bulunur. LSA paketini alan Router, kendi LSA tablosunu günceller.

NOT 3: Aynı alandaki (Area) tüm Router'lar ortak veri tabanı olan LSDB’ye sahiptir.

3- Metrik hesaplaması, Cost Calculation'ı yeniden düzenler yani yol bilgisi ve mesafe tekrar hesaplanır.

4- Değişen Cost Calculation ile oluşturulmuş olan SPF (Shortest Path First) algoritması ile Network (ağ) toplojisini günceller.

5- Network (ağ) üzerinde herhangi bir değişiklik yoksa, güncelleme yapılmaz ve Network'te (ağda) dolalan tek trafik, Hello paketidir.

OSFP Yapılandırması

OSPF Konfigürasyonu Yazım Kuralı

Router>enable Router#configure terminal
Router(config)#Router ospf 1
Router(config-Router)#Network NetworkID WilcardMask AreaNo

(Router'ın diğer Router'lara bildireceği Network. Bu kısıma, Router'a bağlı olan tüm bacakların, yani Network'lerin, IP Adres bilgileri tek tek girilmelidir.)

OSPF Konfigürasyonu

Area'lardaki Router sayısı arttıkça LSA paketi sayısı da aynı oranda artmaktadır. Dolayısıyla da oluşan LSDB boyutu büyür ve CPU yükü artar. Area'lar oluşturmak suretiyle bir değişikliğin sadece o Area'daki Router'alara bildirilerek gereksiz Network trafiğinin önününe geçilmiş olur. Birden fazla Area'dan oluşturulan sisteme Automous System (otonom sistem) denir. Bir otonom sistemde tüm Area'lar Backbone Area (omurga alan) olan Area0'a bağlı olmak zorundadır. Area'lar arasındaki bağlantıyı ABR (Area Border Router-Alan Sınır Yönlendirici) Router'lar sağlar. Aşağıdaki görselde R2 ve R3 Router'ları ABR (Area Border Router) Router'lardır.

OSFP Yapılandırması
OSFP Yapılandırması

Area-0 Yapılandırması

Area0-Router1 konfigürasyonu

Router>enable
Router#configure terminal
Router(config)#Hostname Area0-Router1
Area0-Router1(config)#Interface gigabitEthernet 0/0
Area0-Router1(config-if)#ip address 10.10.10.1 255.255.255.0
Area0-Router1(config-if)#no shutdown
Area0-Router1(config-if)#exit
Area0-Router1(config)#Interface serial 0/0/0
Area0-Router1(config-if)#ip address 87.87.87.2 255.255.255.0
Area0-Router1(config-if)#ip ospf priority 1
Area0-Router1(config-if)#clock rate 128000
Area0-Router1(config-if)#no shutdown
Area0-Router1(config-if)#exit
Area0-Router1(config)#Interface serial 0/0/1
Area0-Router1(config-if)#ip address 88.88.88.1 255.255.255.0
Area0-Router1(config-if)#ip ospf priority 1
Area0-Router1(config-if)#clock rate 128000
Area0-Router1(config-if)#no shutdown
Area0-Router1(config-if)#exit
Area0-Router1(config)#do write
Building configuration...
[OK]
Area0-Router1(config)#end

OSFP Yapılandırması

Area0-Router1 Hostname'li Router'ın kendisine bağlı Network'lerin ve Area bilgisinin tanımlanması.

Area0-Router1#configure terminal
Area0-Router1(config)#Router ospf 1
Area0-Router1(config-Router)#Network 87.87.87.0 0.0.0.255 Area 0
Area0-Router1(config-Router)#Network 88.88.88.0 0.0.0.255 Area 0
Area0-Router1(config-Router)#Network 10.10.10.0 0.0.0.255 Area 0
Area0-Router1(config-Router)#do wr
Building configuration...
[OK]

OSFP Yapılandırması

Area-1 Yapılandırması

ABR-Router1 konfigürasyonu

Router>enable
Router#configure terminal
Router(config)#Hostname ABR-Router1
ABR-Router1(config)#Interface serial 0/0/0
ABR-Router1(config-if)#ip address 87.87.87.1 255.255.255.0
ABR-Router1(config-if)#ip ospf priority 1
ABR-Router1(config-if)#no shutdown
ABR-Router1(config-if)#exit
ABR-Router1(config)#Interface serial 0/0/1
ABR-Router1(config-if)#ip address 86.86.86.1 255.255.255.0
ABR-Router1(config-if)#ip ospf priority 1
ABR-Router1(config-if)#clock rate 128000
ABR-Router1(config-if)#no shutdown
ABR-Router1(config-if)#exit
ABR-Router1(config)#do write
Building configuration...
[OK]
ABR-Router1(config)#end

OSFP Yapılandırması

ABR-Router1 Hostname'li Router'ın kendisine bağlı Network'lerin ve Area bilgisinin tanımlanması.

ABR-Router1#configure terminal
ABR-Router1(config)#Router ospf 1
ABR-Router1(config-Router)#Network 87.87.87.0 0.0.0.255 Area 0
ABR-Router1(config-Router)#Network 86.86.86.0 0.0.0.255 Area 1
ABR-Router1(config-Router)#do wr
Building configuration...
[OK]

OSFP Yapılandırması

Area1-Router1 OSPF Yapılandırması

Router>enable
Router#configure terminal
Router(config)#Hostname Area1-Router1
Area1-Router1(config)#Interface gigabitEthernet 0/0
Area1-Router1(config-if)#ip address 10.10.20.1 255.255.255.0
Area1-Router1(config-if)#ip ospf priority 1
Area1-Router1(config-if)#no shutdown
Area1-Router1(config-if)#exit
Area1-Router1(config)#Interface serial 0/0/0
Area1-Router1(config-if)#ip address 86.86.86.2 255.255.255.0
Area1-Router1(config-if)#no shutdown
Area1-Router1(config-if)#do write
Building configuration...
[OK]
Area1-Router1(config-if)#end

OSFP Yapılandırması

Area1-Router1 Hostname'li Router'ın kendisine bağlı Network'lerin ve Area bilgisinin tanımlanması.

Area1-Router1#configure terminal
Area1-Router1(config)#Router ospf 1
Area1-Router1(config-Router)#Network 86.86.86.0 0.0.0.255 Area 1
Area1-Router1(config-Router)#Network 10.10.20.0 0.0.0.255 Area 1
Area1-Router1(config-Router)#do wr
Building configuration...
[OK]

OSFP Yapılandırması

Area-2 Yapılandırması

ABR-Router2 OSFP Yapılandırması

Router>enable
Router#configure terminal
Router(config)#Hostname ABR-Router2
ABR-Router2(config)#Interface serial 0/0/0
ABR-Router2(config-if)#ip address 88.88.88.2 255.255.255.0
ABR-Router2(config-if)#ip ospf priority 1
ABR-Router2(config-if)#no shutdown
ABR-Router2(config-if)#exit
ABR-Router2(config)#Interface serial 0/0/1
ABR-Router2(config-if)#ip address 89.89.89.1 255.255.255.0
ABR-Router2(config-if)#ip ospf priority 1
ABR-Router2(config-if)#clock rate 128000
ABR-Router2(config-if)#exit
ABR-Router2(config)#do write
Building configuration...
[OK]
ABR-Router2(config)#end

OSFP Yapılandırması

ABR-Router2 Hostname'li Router'ın kendisine bağlı Network'lerin ve Area bilgisinin tanımlanması.

ABR-Router2#configure terminal
ABR-Router2(config)#Router ospf 1
ABR-Router2(config-Router)#Network 88.88.88.0 0.0.0.255 Area 0
ABR-Router2(config-Router)#Network 89.89.89.0 0.0.0.255 Area 2
ABR-Router2(config-Router)#do wr
Building configuration...
[OK]

OSFP Yapılandırması

Area2-Router1 OSFP Yapılandırması

Router>enable
Router#configure terminal
Router(config)#Hostname Area2-Router1
Area2-Router1(config)#Interface gigabitEthernet 0/0
Area2-Router1(config-if)#ip address 10.10.30.1 255.255.255.0
Area2-Router1(config-if)#no shutdown
Area2-Router1(config-if)#exit
Area2-Router1(config)#Interface serial 0/0/0
Area2-Router1(config-if)#ip address 89.89.89.2 255.255.255.0
Area2-Router1(config-if)#ip ospf priority 1
Area2-Router1(config-if)#no shutdown
Area2-Router1(config-if)#do write
Building configuration...
[OK]
Area2-Router1(config-if)#end

OSFP Yapılandırması

Area2-Router1 Hostname'li Router'ın kendisine bağlı Network'lerin ve Area bilgisinin tanımlanması.

Area2-Router1#configure terminal
Area2-Router1(config)#Router ospf 1
Area2-Router1(config-Router)#Network 89.89.89.0 0.0.0.255 Area 2
Area2-Router1(config-Router)#Network 10.10.30.0 0.0.0.255 Area 2
Area2-Router1(config-Router)#do wr
Building configuration...
[OK]

OSFP Yapılandırması

OSPF Konfigürasyon Sonrası Test Aşaması

OSPF yapılandırma işlemim tamamlandı. Sıra; yapılandırmamın başarılı bir şekilde oluşturulup, oluşturulmadığını test etmeye geldi.
 
OSFP Yapılandırması

Area1 Network'ündeki A1PC1 Hostname'li PC'den, Area2 Network'ündeki A2PC3 Hostname'li PC'ye ICMP Request (Ping) paketi yolluyorum.

OSFP Yapılandırması

OSFP Yapılandırması

OSFP Yapılandırması

OSFP Yapılandırması

OSFP Yapılandırması

OSFP Yapılandırması

OSFP Yapılandırması

OSFP Yapılandırması

OSFP Yapılandırması

ICMP Request (Ping) paketini alan Area2 Network'ündeki A2PC3 Hostname'li PC, aynı yolu izleyerek ICMP Reply (Ping) paketi yolluyor ve yapılandırmamızın başarılı bir şekilde tamamladığını görebiliyorum.

OSFP Yapılandırması


Faydalı olması dileğiyle...

Etiketler: CiscoOSFP, open shortest path first, ilk açık yöne öncelik, dynamic Routing, dinamik yönlendirme.


Her türlü görüş ve önerilerinizi aşağıdaki yorum panelinden bırakabilir, kafanıza takılanları veya merak ettiklerinizi sorabilirsiniz.



Yazar Hakkında

firatboyan.com


1985 yılında Alanya'da doğdum. İlk, orta ve lise öğrenimimi Alanya'da tamamladım. Liseden mezun olduktan sonra Akdeniz Üniversitesi Bilgisayar Teknolojisi Ön Lisans programına yerleştim ve bu programdan mezun oldum. Ön Lisans programından mezun olduktan bir süre sonra Dikey Geçiş Sınavı (DGS) ile İstanbul Teknik Üniversitesi (İTÜ) Bilgisayar Mühendisliği Lisans programına yerleştim. 2003 yılından beri Bilgi Teknolojileri sektöründe Sistem ve Network alanlarında çalışıyorum. Bir çok firma bünyesinde farklı projelerde yer alarak bu alanda yıllar içinde ciddi bir bilgi birikimi ve deneyimler kazandım. Bilgi Teknolojileri sektöründeki profesyonel çalışma hayatımın uzunca bir dönemini entegratör firma bazında, ağılıklı olarak Microsoft ürünleri üzerine danışman olarak sürdürüyor ve yüksek seviyeli projeler geliştiriyorum. Uzunca bir süredir de Türkiye'nin en önde gelen entegratör firması olan Data Market bünyesinde Senior Cloud Engineer olarak çalışıyorum. Ek olarak, 2015 yılında Network Akademi bünyesinde Sistem ve Network Uzmanlık eğitimleri vermeye başladım ve 2017 yılında da eğitmenlik tecrübemi, Microsft Certified Trainer (MCT) ünvanı ile taçlandırdım. Eğitmenlik serüvenime 2021 yılından beri Bilge Adam bünyesinde MCT ünvanı ile devam etmekteyim.

YORUMLAR
Bu makaleye 4 yorum yapıldı.
Her türlü görüş ve önerilerinizi aşağıdaki yorum panelinden bırakabilir, kafanıza takılanları veya merak ettiklerinizi sorabilirsiniz.


750 karakter yazabilirsiniz.
Captcha
Güvenlik kodunu BÜYÜK harflerle giriniz.
* Yorumlar, onaylandıktan sonra yayınlanmaktadır.
* E-posta, yorum onay bildirimi için gereklidir. Yayınlanmaz.


04.06.2023 Erhan
cok guzel bir calisma olmus tesekkurler default priority degeri 0 demissiniz. 1 olmasi gerekmiyor mu?

05.07.2023 Fırat Boyan
Merhaba Erhan, Evet, 1 olması gerekiyor. Yanlış yazmışım. Uyarı için teşekkür ederim.


02.04.2020 Ali
RIP yazınızı da okumuştum, bu da onun kadar güzel olmuş tekrar teşekkürler... Bu arada tüm yönlendirme protokollerinin (anlatımızda olduğu gibi topolojileriyle örnekli bir şekilde) anlatıldığı güzel bir kaynak varsa özelden paylaşabilir misiniz? İyi çalışmalar dilerim..

02.04.2020 Fırat Boyan
Teşekkürler. Tüm hepsinin bir arada olduğu tek bir çalışma yok maalesef.