Bölüm 41: Cihaz Yapılandırma
Ağlar'a “Sen”i Katmak kitabının bir bölümü: adres çubuğuna yazdığın tek bir isteğin peşinden bakırla fiberin fiziğine inip karşı taraftan geri dönen uzun bir teknik yolculuk.
Kısım 6: Router'dan Router'a (Bölüm 37-44)
Tüm bölümler
- Giriş
- Adres Çubuğundan İsteğe
- Paket Anahtarlamalı Yol
- İsimden Adrese
- DNS Kayıtları
- Önbellek, Tazelik ve Güven
- Port Numarası ve Soket
- Bağlantısız Taşıma: UDP
- Üç Adımlı El Sıkışma
- Simetrik Şifreleme
- Açık Anahtarlı Kriptografi
- TLS El Sıkışması
- Sertifika Zinciri
- HTTP Mesajının Anatomisi
- Durum, Çerez ve Oturum
- HTTP/2'den HTTP/3'e
- İçerik Dağıtım Ağları
- Diğer Uygulama Protokolleri
- Katmanlı Mimari
- Hizmet ve Protokol
- Encapsulation ve Başlıklar
- Paket Yakalama ve Çözümleme
- Ağ Interface Kartı
- Fiziksel Adresleme
- Hata Sezme ve CRC
- Adres Çözümleme: ARP
- Ortam Erişimi: CSMA/CD
- Switch'ler
- Ağ Topolojileri
- Sanal Yerel Ağlar
- Kablosuz Erişim: 802.11
- Radyo Kanalı ve Kapasite
- Kablosuz Ağ Güvenliği
- Hücresel Ağlar
- Spektrum ve Kuşaklar
- Hareketlilik ve Aktarma
- Adres Kiralama: DHCP
- Adresin Anatomisi
- Adres Tükenmesi ve IPv6
- Router Mimarisi
- Kuyruk Yönetimi
- Cihaz Yapılandırma
- Routing Protokolleri
- Kontrol Düzlemi ve SDN
- Ağ İzleme ve Yönetimi
- Alanlar Arası Routing
- Adres Çevirisi
- Ara Kutular
- Tünelleme ve IPsec
- Firewall'lar
- Ağ Saldırıları
- Operatör ve Metro Ağları
- Bitten Sinyale
- Sembol Hızı ve Kanal Kapasitesi
- Multiplexing Teknikleri
- İletim Ortamları
- Bakır Kablo Sonlandırma
- Fiber Sonlandırma
- Fiber Optik İletim
- Bakır Erişim Ağı: DSL
- DSL'de Hız ve Mesafe
- Pasif Optik Ağlar
- Kablo Erişim Ağları
- Kablo Modem ve CMTS
- Denizaltı Kabloları
- Veri Merkezi Ağları
- Encapsulation Çözme
- Güvenilir Aktarım
- Tıkanıklık Denetimi
- Trafik Çözümleme
- Gecikme Bütçesi
- Soket Programlama
- Eşten Eşe ve Protokol Tasarımı
- Uyarlanır Video Akışı
- Gerçek Zamanlı Ses ve Görüntü
- Kablosuz Sensör Ağlarının Mimarisi
- Sensör Ağlarında Ortam Erişimi
- Sensör Ağlarında Yönlendirme ve IP
- Zaman Eşitleme ve Konum Bulma
- Sensör Ağı Uygulamaları
- Mobil Kablosuz Sensör Ağları
- Son Söz
Masanın üstünde iki router duruyor ve aralarındaki hat çalışıyor. Yine de bir taraftan öbürüne tek paket geçmiyor. İkisinin de tablosunda karşı ağın satırı yok.
O satırı bu kez elle sen yazacaksın. Peki kutudan yeni çıkmış bir cihaza nereden konuşulur?
Kutunun kapısı nerede?
Bir router’a klasik olarak üç yoldan bağlanılır: konsol portu, ağ üzerinden uzak oturum (eskiden telnet, bugün SSH) ve yardımcı port. Üçü de aynı komut satırını açar. Farkları nereden ve hangi güvenle geldiğindir.
Konsol portu ağ portu değildir, ama RJ-45 yuvası biçiminde ve cihazın arka yüzünde durur. Bilgisayara rollover kabloyla ve RJ-45’i DB-9’a çeviren bir adaptörle bağlanır; yönetim interface’leri EIA-232 seri standardını kullanır. Bugünkü dizüstülerde seri port kalmadığı için araya bir USB-seri dönüştürücü giriyor; yeni cihazların çoğunda da doğrudan USB konsol portu var. EIA-232’nin neden hâlâ ayakta olduğunu ve bitleri tek telden nasıl dizdiğini 52. bölümde açacağım. Konsol cihazı yerinde yönetmek içindir. Yardımcı port ise modem üzerinden uzaktan ulaşmak ya da WAN bağlantısına yedek olmak için durur. Ağ çöktüğünde ayakta kalan yol konsoldur.

Şifreler ayrı ayrı tanımlanır ve fabrika çıkışında hiçbiri yoktur. Cihazda beş tane durur: ikisi ayrıcalıklı kip, biri konsol portu, biri yardımcı port, biri uzak oturumlar için. Ayrıcalıklı kipin iki şifresinden enable secret olanı geri çevrilemeyen bir özet (hash) olarak saklanır; ikisi birden tanımlıysa geçerli olan odur. Öteki, enable password, yapılandırmada düz metin durur. Onu gizleyen service password-encryption komutu yalnızca zayıf bir karıştırma uygular; bu “type 7” değeri saniyeler içinde geri çevrilebilir.
Konsol şifresi line console 0 kipine geçilip password ve login komutlarıyla konur. login önce yazılırsa cihaz, şifre konana kadar girişin kapalı olduğunu söyleyen bir uyarı verir. Uzak oturum ve yardımcı port şifresini koyabilmenin yolu ise önce konsoldan girmektir; küçük ağlarda ilk temas fiziksel olmak zorunda. Büyük ağlarda kutudan yeni çıkan cihaz yapılandırmasını bir sunucudan kendisi çekebiliyor (zero-touch provisioning); orada ilk temas bile fiziksel değil.
Uzak oturum tarafında akılda kalan bir sayı var: sahadaki alışkanlık beş sanal terminal. Şifre satırı bu yüzden çoğu örnekte line vty 0 4 diye yazılır ve sıfırdan dörde kadar beş terminali birden kapsar. Birçok cihazda ise 16 terminal vardır; yalnızca ilk beşini kilitleyip line vty 5 15 aralığını unutmak klasik bir güvenlik hatası. Oturum ayrıcalıklı kipte telnet ya da connect ile açılır, disconnect ile kapanır. Komut bir IP adresi ya da makine adı alır; ad verilecekse cihazda ad çözümlemesi ayarlı olmalıdır. Telnet’in kendisi düz metin taşır. Kullanıcı adı, parola, yazdığın her komut ve dönen her çıktı hattı olduğu gibi geçer; aradaki herhangi bir noktada dinleyen biri oturumun tamamını okur. Bu yüzden telnet bugün yalnızca yönetim ağı fiziksel olarak ayrılmış eski cihazlarda kalmıştır ve yerini SSH almıştır.
SSH telnet’ten nerede ayrılıyor?
SSH aynı işi yapar, uzaktaki makinede bir kabuk açar; ama işi üç ayrı katta kurar ve üçünün de telnet’te karşılığı yoktur.
Birincisi, sunucunun kimliği. Bir sunucuya ilk kez bağlandığında SSH sana bir parmak izi gösterir ve onaylamanı ister. Onayladığında sunucunun açık anahtarı makinene kaydedilir. Sonraki her bağlantıda sunucu, o anahtarın gizli eşini elinde tuttuğunu kanıtlamak zorunda kalır. Web sertifikalarından farkı burada: SSH’ta varsayılan olarak imzalayan bir üçüncü taraf yoktur, güven ilk karşılaşmada kurulur (trust on first use). Bunun bedeli de bellidir: ilk bağlantı, zincirin doğrulanmayan tek halkasıdır. Kayıtlı parmak izi bir gün değişirse SSH gürültülü bir uyarı verir; sunucu gerçekten yeniden kurulmuş olabilir ya da araya biri girmiştir.
İkincisi, senin kimliğin. Parolayla giriş mümkündür ama zayıf halkadır: parola karşı tarafa gider ve tahmin edilebilir. Açık anahtarla girişte ise gizli anahtar makinenden hiç çıkmaz. Sunucu bir soru gönderir, sen onu gizli anahtarınla imzalarsın, sunucu elindeki açık anahtarla imzayı doğrular. Karşı taraf ele geçse bile eline yalnızca açık yarısı geçer ve onunla hiçbir yere giremez.
Üçüncüsü, kanallar. SSH tek bir şifreli bağlantının içinde birden çok mantıksal kanal açabilir. Kabuk oturumu bir kanaldır, dosya kopyalama başka bir kanal, bir port’un karşı tarafa taşınması bir başkası. Tünelleme yeteneği buradan geliyor: yerel bir porta gelen bağlantı şifreli oturumun içinden geçirilip karşı taraftaki bir adrese açılabiliyor. Yalnızca dışarı açık tek kapısı SSH olan bir sunucunun arkasındaki veritabanına bu şekilde ulaşılabiliyor.
Üç maddenin toplamı, SSH’ın tek hamlede üç ayrı aracı birden emekliye ayırmasını açıklıyor: uzak oturum, uzak komut çalıştırma ve dosya kopyalama. Üçü de aynı doğrulanmış kanalın içine girdi. Protokolü 1995’te, üniversitesinin ağında parolaları dinleyerek toplayan bir saldırıdan sonra Tatu Ylönen yazdı.
SSH kuantum sonrası döneme de erken hazırlandı. OpenSSH 2022’den beri klasik ile kuantuma dayanıklı bir yöntemi birleştiren hibrit anahtar değişimini varsayılan yapıyor; Nisan 2025’teki 10.0 sürümünde 10. bölümdeki TLS grubunun akrabası olan ML-KEM tabanlı yönteme geçti.
DerinleşmeŞifreyi unutan neden cihazın sahibi olmaya devam eder?
Şimdi o beş şifrenin hepsinin unutulduğunu varsay. Kurtarma yolu yazılımsal değil, fiziksel. Cihaz kapatılıp açılır, ilk 60 saniye içinde Break tuşuyla ROM Monitör kipine düşülür ve 16 bitlik yapılandırma kaydı 0x2102 değerinden 0x2142 değerine çevrilir. Açılış zaten üç adımdır: POST ile donanım sınanır, sonra işletim sistemi imajı aranır, en sonunda yapılandırma aranır. Kaydın son dört biti hangi imajın nereden yükleneceğini belirleyen boot alanıdır. 0x2142 değeriyle cihaz NVRAM’i hiç okumadan açılır; şifreler o dosyanın içindedir, dosya da okunmamıştır. Açılan boş cihazda NVRAM’deki dosya elle RAM’e kopyalanır ve şifreler yeniden yazılır. Kopyalamanın yönü de işe yarıyor: NVRAM’den RAM’e gelen dosya oradakiyle birleştirilir, ters yön ise hedefteki dosyayı silip yenisini yazar. Eski yapılandırma böylece kaybolmaz. İş bitince değer 0x2102’ye döndürülür.
Buradan çıkan güvenlik dersi açık: cihaza fiziksel olarak dokunabilen, ona sahip olur. Router’ların kilitli dolaplarda durmasının sebebi bu. Bazı modellerde bu kurtarma yolu no service password-recovery ile kapatılabiliyor; o zaman şifreyi unutanın elinde yalnızca yapılandırmayı tümden silmek kalıyor.
Yapılandırma dosyası hiç yoksa cihaz seni kendiliğinden setup kipine sokar ve soru-cevapla temel ayarları kurmayı önerir. Köşeli parantezdeki değerler varsayılan cevaplardır, Ctrl-C diyalogu iptal eder.
Prompt’un son karakteri ne söylüyor?
Router’ın üstünde bir işletim sistemi çalışır ve bu sistem yalnızca paket iletmez; cihazdaki hafızayı, işlemciyi ve interface’leri (arayüzleri) de o yönetir. Buradaki kip adları ve komut sözcükleri tek bir satıcının kabuğuna ait. Cisco’nun ürününde sistemin adı IOS. Mekanizma satıcıdan bağımsızdır, sözcükler değildir. Arista gibi üreticiler bu sözdizimine çok yakın bir kabuk sunuyor; Juniper’ın Junos’u ise bambaşka, hiyerarşik bir dil konuşuyor.
Komut satırının iki giriş kipi var. Kullanıcı kipinde hiçbir yapılandırma yapamazsın. Değiştirmek için ayrıcalıklı kipe geçmen gerekir. enable yukarı çıkarır, disable geri indirir, logout cihazdan tümüyle çıkarır. Hangi kipte olduğunu prompt’un son karakterinden okursun.
| prompt | kip | oradan ne yapılır |
|---|---|---|
Kenar> | kullanıcı | yalnızca bakılır |
Kenar# | ayrıcalıklı | show çalıştırılır, yapılandırmaya geçilir |
Kenar(config)# | genel yapılandırma | cihazın tamamını ilgilendiren ayar yazılır |
Kenar(config-if)# | interface yapılandırma | tek bir interface’in ayarı yazılır |
Kutudan çıkan her router’ın adı Router’dır. configure terminal genel yapılandırma kipine geçirir, hostname de oradaki adı değiştirir. Değişiklik anında prompt’a düşer.
Ezber de gerekmez. Tek başına ? bulunduğun kipteki bütün komutları listeler, com? o harflerle başlayanları, komut ? o komutun parametrelerini. Sekme tuşu tek adaya inmiş parametreyi tamamlar ve yardımın kapsamı bulunduğun kiple sınırlıdır. Komutlar benzersiz kaldığı sürece kısaltılabilir: show yerine sh, configure terminal yerine conf t aynı işi görür.
Hata mesajı üç tane. % Ambiguous command cihazın komutu ayırt etmesine yetecek karakteri yazmadığını, % Incomplete command gereken parametreyi girmediğini söyler. % Invalid input detected at ^ marker ise hatanın tam yerini şapka işaretiyle gösterir.
Interface neden kapalı geliyor?
Genel yapılandırma kipinden interface komutuyla tek bir interface’in kipine inilir; interface adı tip ve numaradan, bazı cihazlarda tip ve yuva/numaradan oluşur. exit bir basamak yukarı çıkarır. Adres veren komut ip address ve adresin yanına alt ağ maskesi de yazılır. Aynı interface’e ikinci bir adres verilecekse maskeden sonra secondary eklenir. Maske, adresin hangi bitlerinin ağ parçasına ait olduğunu söylüyordu; komut o maskeyi önek olarak değil ondalık olarak ister.
Sonra en sık unutulan satır geliyor. Router’da bütün interface’ler varsayılan hâliyle kapalı gelir ve açan komut no shutdown’dır. Switch’te tersi geçerli: portlar açık gelir, çünkü switch’in işi kutudan çıkar çıkmaz çalışmak. Bu tek satır unutulduğunda yapılandırma kâğıt üstünde doğru görünür ama hiçbir paket geçmez.
Interface durumu da tek değil çift sayıdır.
| durum | ne demek |
|---|---|
up/up | çalışıyor |
up/down | kablo takılı ama data link layer anlaşamıyor: kapsülleme ya da saat uyuşmuyor |
down/down | physical layer’da sorun var: kablo ya da karşı uç yok |
administratively down | sen kapatmışsın |
Bir interface açıldığında ekrana iki olay satırı düşer. Biri bağlantının, öbürü hat protokolünün durum değiştirdiğini bildirir. Bunlar komutun çıktısı değil, cihazın olay günlüğüdür. Yazmakta olduğun komutun ortasına da düşebilirler. Cihaz bu satırları konsola bağlı bilgisayara gönderir; telnet ile bağlıysan görmezsin ve terminal monitor demen gerekir.
Seri bir WAN interface’inde bir yük daha var. Saat işaretini taşıyan uç DCE’dir (data communications equipment) ve hız orada clock rate ile verilir; ders örneğinde bu değer 128000 bit/s. Karşı uç, yani DTE, saati dinler ve orada böyle bir komut yoktur. LAN interface’inde bu iş hiç çıkmaz. Seri hatlar bugün sahada azaldı; laboratuvar ve eski WAN bağlantıları dışında yerlerini Ethernet aldı.
Tabloya elle bir satır yazmak
Interface’e adres verdiğin anda o ağın doğrudan bağlı yolu tabloya kendiliğinden düşer. Bedavaya gelen kısım orada biter.
Gerisi elle yazılır. Switch’in MAC öğrenme tablosunu kimse yapılandırmıyordu; tablo duyulan kaynak adreslerden kendiliğinden doluyordu. Burada öyle bir kendiliğindenlik yok. Statik routing budur: satırı tabloya bir algoritma değil bir insan koyar ve o satır silinene kadar orada durur.
Komut üç alan ister: gidilecek ağın adresi, o ağın maskesi ve bir sonraki router’ın adresi. Üçüncünün yerine paketin çıkacağı interface’in adı da yazılabilir.
Vakayı kuralım. Kenar cihazın LAN’ı 192.0.2.0/24, merkez cihazın LAN’ı 198.51.100.0/24, aradaki noktadan noktaya bağ 203.0.113.0/30. Kenar uç .1, merkez uç .2 adresini alıyor. /30 öneki dört adres taşır; ağ ve broadcast adresi düşülünce iki uca iki kullanılabilir adres kalır ve ondalık maskesi 255.255.255.252 olur. İki cihaz da ikişer doğrudan bağlı satıra bedavaya sahip. Karşı LAN için toplam iki satır yazılır.
Kenar(config)# ip route 198.51.100.0 255.255.255.0 203.0.113.2
Merkez(config)# ip route 192.0.2.0 255.255.255.0 203.0.113.1Dışarısı için üçüncü bir satır gerekir. Biçimi aynıdır, yalnızca hedef ağ da maske de sıfırlarla yazılır.
Kenar(config)# ip route 0.0.0.0 0.0.0.0 203.0.113.2Routing tablosu en uzun önek eşleşmesiyle okunuyor ve varsayılan yol sıfır uzunluğuyla her yarışı kaybediyordu. Bu satır o yolun elle yazılmış hâlidir. Kenar cihaz artık tanımadığı her adresi merkeze yollar.
Aynı ağa iki ayrı kaynaktan yol gelirse kimin kazanacağına 39. bölümde gördüğümüz administrative distance karar verir ve küçük olan kazanır. Doğrudan bağlı interface 0, statik yol 1, routing protokollerinden öğrenilmiş yollar 20 (dış BGP) ile 120 (RIP) arasında, bilinmeyen ise 255 taşır. Son değerdeki bir yol tabloya hiç yazılmaz. Metriğe ancak uzaklıklar eşitse bakılır.
Elle yazmanın kazancı da var. Bu iki cihaz birbirine tek bir güncelleme mesajı göndermiyor: hat yalnızca veri taşıyor, işlemci yalnızca paket iletiyor ve tabloya yanlış bir satır sızdıracak öğrenme süreci yok. Bedeli de aynı yerden çıkıyor. Hat tamamen koparsa, yani interface düşerse, bir sonraki durak çözülemez hâle gelir ve satır tablodan kendiliğinden çekilir. Asıl tehlike sessiz arıza: interface ayakta ama ötesindeki yol ölü. Araya bir switch girmiş ve karşıdaki router çökmüşse tablo bunu fark etmez, paketleri boşluğa yollamayı sürdürür. Statik yolların bir izleyiciye bağlanabilmesinin sebebi bu; Cisco’da bu izleyicinin adı IP SLA.
Yazdığın çalışıyor mu, kapatınca kalıyor mu?
Yapılandırmak ve doğrulamak iki ayrı iş. show ip route tabloyu, show ip interface brief bütün interface’lerin adreslerini kısaca, show interfaces interface istatistiklerini listeler.
Kenar# show ip route
...
Gateway of last resort is not set
192.0.2.0/24 is variably subnetted, 2 subnets, 2 masks
C 192.0.2.0/24 is directly connected, GigabitEthernet0/0
L 192.0.2.1/32 is directly connected, GigabitEthernet0/0
S 198.51.100.0/24 [1/0] via 203.0.113.2
203.0.113.0/24 is variably subnetted, 2 subnets, 2 masks
C 203.0.113.0/30 is directly connected, Serial0/0/0
L 203.0.113.1/32 is directly connected, Serial0/0/0Satır başındaki C ile S kaynağı ayırır, L satırları interface’lerin kendi adresleridir; köşeli parantezdeki çift ise administrative distance ile metriktir. Doğrudan bağlı satırda sonraki atlama alanı hiç yoktur, çünkü gidilecek bir sonraki düğüm de yoktur. En üstteki satır ise varsayılan yolun tanımlanmadığını söylüyor.
show ip interface brief çıktısı interface’i, adresini, adresin geçerliliğini, atanma yöntemini ve iki durum sütununu tek satırda verir. Method sütunundaki manual, adresin elle yazıldığını gösterir.
Yolun çalışıp çalışmadığını ping söyler. Varsayılan ayarlarla beş adet 100 baytlık ICMP yankı isteği gönderir ve zaman aşımı 2 saniyedir. Çıktıda ünlem yanıt geldi, nokta hiçbir şey gelmedi, U hedef makineye, N hedef ağa ulaşılamıyor demektir. Sonunda başarı yüzdesi ile en küçük, ortalama ve en büyük RTT yazılır.
Bir iş daha kaldı. Cihazda dört ayrı hafıza var: RAM çalışan yapılandırmayı, ROM açılış için gereken küçük imajı, FLASH işletim sisteminin tam sürümünü, NVRAM ise başlangıç yapılandırmasını tutar. Cihaz açılırken NVRAM’deki dosyayı RAM’e kopyalar; komut satırında ne yaparsan yap, sonucu yalnızca o kopyaya işlenir. show running-config o an geçerli olanı, show startup-config açılışta okunacak olanı gösterir; ikisinin farkı kaydedilmemiş işin listesidir. copy running-config startup-config yazılmadan hiçbir düzenleme yeniden başlatmadan sağ çıkmaz. Aynı işin eski kısaltması write memory hâlâ çalışıyor ve sahada daha çok o yazılıyor.
Özet
- Konsol portu son çaredir: ağ portu değildir, rollover kabloyla bağlanır ve ağ tümüyle çökse bile ayakta kalan tek yönetim yolu odur.
- Kip prompt’ta yazar:
>bakmaya,#değiştirmeye,(config)#ve(config-if)#ise yazmakta olduğun ayarın kapsamına karşılık gelir.- Interface kapalı doğar: adresi verilmiş bir interface
no shutdownyazılmadan up/up olmaz ve doğru görünen yapılandırma tek paket geçirmez.- Statik yol üç alandan ibarettir: ağ, maske ve bir sonraki atlama; satır silinene kadar tabloda durur, çünkü onu tazeleyecek bir protokol yoktur.
- RAM’deki iş kalıcı değildir: çalışan yapılandırma ile başlangıç yapılandırması ayrı dosyalardır ve aradaki fark kaydedilmemiş işin listesidir.
Bu ağda iki satır yazdın ve tablo doldu. Aynı işi tam bir örgüde yapmak n×(n−1) satır demek: 3 cihazda 6, 10 cihazda 90, 1.000 cihazda 999.000. Peki binlerce router’da bu satırları kim elle yazacak?
42. bölüme devam et: Routing Protokolleri