Cisco Router Configurasyonu

Router’ı konfigüre edip basitçe yönlendirme yapabilecek duruma getirmeye. Bunun için ilk önce Router’a login oluyoruz. Ardından privileged exec mode geçmeniz gerekiyor. “enable” yazıp bu mode giriyoruz. Ardından router’a onu konfigüre edeceğimizi belirten “configure terminal” komutunu veriyoruz. (Bu komutun kısa yazılışı ise “config t”dir.) Şimdi gönül rahatlığı içinde Router’ı konfigüre etmeye başlayabiliriz. İlk önce Router’ımıza bir isim vererek başlayalım. Bunun için “hostname” komutunu aşağı şekilde giriyoruz. (Router’ın komut satırının nasıl değiştiğine dikkat edin!) 

Router(config)#hostname RouterA

Bu komutu girdikten sonra komut satırı aşağıdaki gibi olacaktır.

         RouterA(config)#

Router’ımıza bağlanan kullanıcılara bir banner mesajı göstermek isteyebiliriz. Bunu gerçekleştirmek için “banner motd” komutunu aşağıdaki şekilde kullanmalıyız. 

         RouterA(config)#banner motd#turkmcse.com Router’ına hoşgeldiniz# 

Burada komuttan sonra kullandığımız # karakterlerinin arasına mesajımızı yazıyoruz. Bunun haricinde tanımlanabilecek bannerlar ise şunlardır; Exec banner, Incoming banner ve Login banner.

Sıra geldi Router’ımıza bağlantı sırasında kullanıcılara sorulacak şifreleri belirlemeye. Cisco Router’larda beş farklı şifre bulunur. Bunlardan ikisi privileged mod’a erişim için tanımlanırken, bir tanesi konsol portu, bir tanesi AUX portu ve diğeride Telnet bağlantıları için tanımlanır. Bu şifrelerden “enable secret” ve “enable password”, privileged mod’a geçmek için kullanılırlar ve aralarındaki fark “enable secret”’in şifrelenmiş bir şekilde saklanmasıdır. Yani konfigürasyon dosyasına baktığınızda “enable secret” şifresinin yerinde şifrelenmiş halini görürsünüz. Ama aynı dosyada “enable password”’u ise açık bir şekilde şifreleme yapılmadan saklandığını görürsünüz. Bu da sizin konfigürasyon dosyanızı ele geçiren birisinin “enable password” şifresini kolayca okuyabileceğini ama “enable secret” şifresinden bir şey anlamayacağı anlamına gelir. “Enable password” şifresi ise “enable secret” şifresi tanımlanmamışsa veya kullanılan IOS eski ise kullanılır. “Enable secret” şifresinin konfigürasyon dosyasına yazılırken kullanılan şifrelemenin derecesini ise “service password-encryption” komutu ile belirleyebilirsiniz. Şimdi sırasıyla bu beş şifrenin nasıl tanımlandığını anlatalım; “Enable secret” ve “enable password” şifreleri aşağıdaki şekilde tanımlanır.

         RouterA(config)#enable password cisco

         RouterA(config)#enable secret istanbul 

Burada turkmcse ve istanbul bizim koyduğumuz şifrelerdir. 

Eğer Router’ın konsol portuna şifre koymak istiyorsanız 

         RouterA(config)#line console 0

         RouterA(config-line)#login

         RouterA(config-line)#password cisco

Router’ın AUX portuna şifre koymak için:

         RouterA(config)#line aux 0

         RouterA(config-line)#login

         RouterA(config-line)#password istanbul

Router’ın Telnet bağlantılarında soracağı şifreyi ise şöyle belirleyebilirsiniz: 

         RouterA(config)#line vty 0 4

         RouterA(config-line)#login

         RouterA(config-line)#password turkiye

Burada telnet portlarının tamamına aynı şifre verilmiştir. Bu portların herbirisine farklı şifreler atanabilir. Fakat router’a yapılan her telnet isteğine router, o zaman kullanımda olmayan bir port’u atadığı için bağlantıyı kuran kişinin tüm bu telnet portlarına atanmış şifreleri bilmesi gerekir. Bu yüzden telnet portlarına ayrı ayrı şifre atamak iyi bir yaklaşım değildir.

Bunun haricinde Router’a yapılan konsol bağlantılarının, kullanıcı herhangi bir işlem yapmadan ne kadar süre aktif kalacağını da “exec-timecut” komutuyla belirleyebiliriz

Router Arayüzleri

Router’ların interface’lerini konfigüre etmek için her bir interface’e ait interface konfigürasyon moduna girilmelidir. Bu modda o interface’in aktif (up)’mi yoksa pasif mi (down) olacağını, IP adreslerini vb. konfigürasyon ayarları yapılır. Örneğin Router’ımızın 1 Ethernet ,2 tane de seri interface’inin olduğunu düşünelim. Ethernet interface’ini konfigüre etmek için aşağıdaki komutu global konfigürasyon modundayken girmeliyiz. 

         RouterA(config)#int e0

Bu komutu yazıp Enter’a basarsanız interface konfigürasyon moduna geçersiniz. Şimdi bu interface’in IP adresini belirleyelim. Bunun için aşağıdaki komut kullanılır;

         RouterA(config-if)#ip address 10.3.9.1 255.255.255.0

Eğer bu interface için bir açıklama eklemek istiyorsanız bunu aşağıdaki gibi “description” komutunu kullanarak yapabilirsiniz. 

         RouterA(config-if)#description Pazarlama Grubunun LAN bağlantısı

Konfigüre ettiğiniz interface’in işlevselliğini yerine getirebilmesi için aktif (up) olması gerekiyor. Varsayılan olarak bütün interface’ler pasif (administratively disabled)’dir. Bunun için ise aşağıdaki komutu kullanmalısınız.

         RouterA(config-if)#no shutdown

Ayrıca Cisco’nun 7000 veya 7500 serisi router’larında VIP(Versatile Interface Processor) kartları varsa bunun için aşağıdaki formatta bir komut kullanarak interface tanımlamalısınız;

            Interface tip slot/port adaptör/port numarası

            RouterA(config)#interface ethernet 2/0/0

Debug İşlemi

Router üzerinde hata ayıklamak için kullanılabilecek komutlar mevcuttur. Bu komutların başında “debug” komutu gelir.

         RouterA#debug all

Unutulmaması gereken bir nokta da debug işleminin Router’ın kaynaklarını bir hayli fazla kullandığıdır. Bu yüzden debug işlemi bitirildikten sonra “undebug all” veya no debug all” komutlarından bir tanesi kullanılarak Router’a debug yapmaması gerektiği bildirilmelidir.

CDP (Cisco Discovery Protocol)

Data Link katmanında çalışan bu protokol Cisco tarafından geliştirilmiştir ve fiziksel olarak birbirine bağlı tüm Cisco cihazlarının birbirleri hakkında bilgi sahibi olmalarını sağlar. IOS 10.3 veya daha yukarı versiyon çalıştıran Router’larda CDP default olarak aktifdir ve otomatik olarak komşu Router ve switch’ler hakkında bilgi toplar. Bu bilgiler arasında cihaz ID’si ve cihaz tipi gibi bilgilerde bulunur. CDP kullanılarak öğrenilen bilgileri privileged mod’da “show cdp neighbors” komutunu kullanarak görebilirsiniz. Bu komutu kullandığınızda fiziksel olarak bağlı olduğunuz cihazların isimlerini, portlarını, cihaz tiplerini (router, switch vs.) ,sizin router’ınıza hangi interface’inin bağlı olduğunu, bu cihazların hangi platforma ait olduğunu, holdtime değerini interface isimlerini görebilirsiniz. CDP ile toplanmış bilgileri daha ayrıntılı bir şekilde görmek istiyorsanız “show cvp neighbor detail” komutunu kullanmalısınız. Bu komutun çıktısında ise show cdp neighbors komutunun çıktısında bulunan bilgilere ek olarak cihazda kullanılan IOS versiyonu, IP adresleri gibi bilgileri bulabilirsiniz.

Eğer CDP protokolünün Router üzerinde çalışmasını istiyorsanız o zaman global konfigürasyon modunda iken “no CDP run” komutunu girmelisiniz. Ayrıca CDP’yi interface bazında da pasif yapabilirsiniz. Bunun için interface konfigürasyon modunda iken “no CDP enable” komutunu girmelisiniz.

Telnet Kullanarak Router’ı Yönetmek 

Tüm Cisco Router ve switch’ler Telnet isteklerine cevap verecek şekilde, üzerlerinde Telnet server servisi çalışır vaziyette gelirler. Bunun yanında tüm Cisco Router’ları ve bazı switch’ler Telnet istemci programı ile birlikte gelir ve ağ yöneticilerinin Router’ları uzaktan yönetmesini sağlar. Privileged modda iken herhangi bir Router’a bağlanmak için “telnet” veya “connect” komutlarını kullanabilirsiniz. Bu komutlar parametre olarak bağlantının kurulacağı Router’ın IP adresini veya host ismini alır. Eğer parametre olarak host ismi kullanılmışsa Router’da DNS ayarlarının yapılması gerekir. Ya da Router’daki host tablosuna “ip host” komutunu kullanarak bu host’a ait kayıt girilmelidir. Örneğin aşağıdaki komutla adı RouterB ve IP adresi 10.3.10.1 olan router’ın kaydı host tablosuna girilmektedir. 

         RouterA(config)#ip host RouterB 10.3.10.1

Eğer router’ın isim çözümleme işini host tablosuyla değilde DNS sunucu ile halletmek istiyorsanız o zaman Router’a DNS sunucunun adresini “ip name-server” komutunu kullanarak belirtmelisiniz. 

            RouterA(config)#ip name-server 10.3.9.2

Router’ın komut satırında herhangi bir şeyi örneğin bir komutu yanlış veya eksik yazarsanız router bunun bir isim olduğunu farzedip DNS sunucuyu arayacak ve bu ismi çözmeye çalışacaktır. Bu işlemde bir hayli zaman alacaktır. Böyle bir durumda beklememek için Ctrl+Shift+6 tuş kombinasyonuna bastıktan sonra X tuşuna basıp bu işlemi sonlandırabilirsiniz. Bunun haricinde bu tuş kombinasyonu uzak sistemlere yapılan telnet bağlantısını askıya alıp kendi router’ınıza geri dönmek içinde kullanılır.

Bir telnet otrumunu kapatmak için “disconnect”, “exit”, “quit” veya “logout” komutlarını kullanabilirsiniz. Eğer birden fazla Router’a Telnet ile bağlanmışsanız bu bağlantıları “show session” komutunu kullanarak görebilirsiniz.

Yönlendirme Temelleri

Router’ların temel işlevi yönlendirme yapmaktır. Peki kendilerine ulaşan bu paketleri hangi interface’lerinden çıkaracaklarını nasıl biliyorlar? Bunun için statik, dinamik veya default yönlendirmeyi kullanırlar. Statik yönlendirmeler sistem yöneticisi tarafından elle girilir ve hedef ağ ile bu paketi hedefine taşıyacak bir sonraki router’ın adresi bilinmelidir. Statik yönlendirme tanımlamak için router’da global konfigürasyon modunda iken “ip route” komutunu kullanmalıyız. Aşağıda bu komut parametreleriyle birlikte açıklanmıştır.

         Router(config)#ip route [hedef adres][subnet mask][Bir sonraki ağda bulunan Router’ın IP adresi veya yerel interface][distance]permanent

Yukarıdaki komutta “distance” parametresi seçimlik olup yönlendirmede kullanılan yönetimsel mesafeyi ifade eder ve 1 ile 255 arasında bir değer alabilir. Permanent ifadesi ise girilen kayıdın yönlendirme tablosunda, ilişkili olduğu interface pasif olduğu zamanda bile kalmasını sağlar. Aşağıdaki örnekte 10.3.11.0 network’üne gelen paketlerin router’ın s0 interface’inden çıkacağını söylüyoruz.

         RouterA(config)#ip route 10.3.11.0 255.255.255.0 s0

Statik yönlendirme küçük network’ler için ideal bir çözüm olabilir fakat büyükçe bir ağı yönetecekseniz statik yönlendirmede hata yapma olasılığınız çok olacaktır. Ayrıca router’lar üzerinde statik olarak tanımlanan default(varsayılan) yönlendirmeler ise hedef adresi bilinmeyen paketlerin hangi interface’den çıkarılacağını belirler. Default yönlendirmeyi aşağıdaki örnekte inceleyelim; 

         RouterA(config)#ip route 0.0.0.0 0.0.0.0 10.3.10.1

Burada router’a hedef adresi belli olmayan paketleri 10.3.10.1 adresine sahip interface’inden çıkarmasını söylüyoruz.

Router’da tanımlanmış statik kayıtları görmek için privileged modda iken “show IP route” komutunu kullanmalıyız. Karşımıza çıkan listedeki kayıtların başında bulunan C harfi fiziksel olarak birbirine bağlı ağlara olan yönlendirmeyi, S harfi yönlendirmenin statik olduğunu S* işareti ise kaydın default yönlendirme olduğunu gösterir. Default yönlendirmenin router’larda çalışabilmesi için “ip classless” komutunun girilmesi gerekir. Ayrıca statik bir kaydı yönlendirme tablosunda silmek için “no ip route” komutunu parametreleriyle birlikte kullanmanız gerekir.

Dinamik yönlendirmede ise router üzerindeki yönlendirme tablosu administrator tarafından elle girilmez. Bu işi router üzerinde koşan yönlendirme algaritmaları yapar. Dinamik yönlendirmenin iki temel fonksiyonu vardır. Birincisi yönlendirme tablosunu oluşturmak, ikincisi ise oluşturulan bu yönlendirme tablolarının router’lar arasında paylaşılması yani router’ların yönlendirme tablolarındaki güncellemeleri diğer router’lara haber etmesi. Dinamik yönlendirme protokolleri hedef ağa ulaşan en iyi yolu belirlemek için metric değerlerini kullanırlar. Bir kısım protokol metric değerini hesaplarken hedef ağa ulaşma sırasında atladığı router sayısını metric değerine eşit tutar. Bu tür protokoller Uzaklık Vektor protokoller olarak adlandırılır(Distance Vector).Bu protokollere örnek olarak RIP ve IGRP verilebilir. Diğer bir grup dinamik yönlendirme protkolleri ise Bağlantı Durumu (Link State) protokolleri olarak adlandırılırlar ve metric değerini hesaplarken sadece geçilen router sayısına değil yoldaki trafik durumunu, bağlantının hızı gibi daha karışık değerleri de hesaba katar. Bu protokollere ise OSPF örnek olarak gösterilebilir. Ayrıca bu iki grubun haricide Hybrid protokoller de vardır ve bu protokoller Distance Vector protokolleri ile Link State protokollerinin birleşiminden oluşmuştur. Örneğin EIGRP bu sınıf bir protokoldür.

Bunun haricinde network’teki topoloji değişikliklerine adaptasyon otomatik olarak gerçekleşir. Fakat bu dinamik yönlendirme protokollerinin ağ topolojilerini öğrenip yönlendirme tablolarını ona göre oluşturmaları ve bu tablolardaki güncellemeleri diğer router’lara bildirmeleri başta yönlendirme çevrimleri (routing loops) gibi problemlere yol açabilir. Bu gibi problemlerin önüne geçmek için bazı teknikler kullanılır. Bunların başlıcaları;

—Split Horizon: Split horizon, router’ın ağ üzerinde herhangi bir değişiklik olduğunu anladığında bu değişikliği, öğrendiği interface haricindeki interface’lerden yayınlamasını sağlar. Böylece router’lar değişikliği sadece bir yönde yayınlarlar.

—Maximum Hop Count: Yönlendirilen paketlerin en fazla kaç hop atlayabileceği belirlenerek belli bir değeri aşan paketlerin yok edilmesini sağlar. Örneğin RIP için bu değer 15 dir ve bir paket için 16. Hop erişilemez olarak değerlendirilir ve paket yönlendirilmeden yok edilir.

—Poison Reverse: Router’ların yönlendirme tablosuna hop count değer 16 olarak yazılan bir yönlendirmedir ve hedef adresin erişilemez olduğunun router’lar arasında bilinmesini sağlar.

—Hold-Down Timer: Bu teknikte hold-down sayıcılar router’ın komşusundan aldığı ulaşılamaz bir ağa ait güncelleme ile başlar. Eğer aynı komşudan aynı ağa ait daha iyi bir metric değerine sahip bir güncelleme bilgisi alırsa hold-down kaldırılır. Fakat hold-down değeri dolmadan aynı komşudan daha düşük bir metric değerine sahip bir güncelleme gelirse bu kabul edilmez.

Administrative distance

Administrative distance, router’lar tarafından mevcut yönlendirmeler arasındaki önceliği belirler. Aşağıdaki tabloda yönlendirme kaynakları ve bu kaynakların sahip olduğu AD listelenmiştir. Düşük AD’ye sahip yönlendirmenin önceliği en fazladır. 

Yönlendirme KaynağıVarsayılan AD Değeri
Direkt fiziksel bağlantı0
Statik yönlendirme1
RIP120
IGRP100
EIGRP yönlendirme özeti5
Internal EIGRP90
External EIGRP170
OSPF110
Bilinmeyen yönlendirme255