Yönlendirici anlamındaki router'ın ilk zamanlardaki ve bu alandaki cihazları işaret eden ortak adı (jenerik) gateway'dir.
Ağdaki cihazın dışarıya çıkmak için açtığı ilk kapı. Evden dışarı çıkacaksanız aklınıza ilk gelen dış kapıya yönelmektir. Ancak yangın durumunda aklınıza "yangın merdivenine açılan kapı" gelecektir. Yani özel bir durum için farklı bir geçit tanımlanması haricinden varsayılan geçidinize default gateway diyoruz.
route PRINT komutunu konsolda yazdığımızda aşağıdaki gibi liste yazdırılacaktır. Bazı satırlarını hemen altına ayrıntılandıralım.
Öncelikle bilgisayarım 192.168.1.34 IP adresine sahip ve ona bu adresi ADSL modemim (192.168.1.1) veriyor.
$ route PRINT
....
IPv4 Route Table
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.34 35
# 0.0.0.0 Netmask adresiyle hedeflenen IP adresine 0.0.0.0 yani CIDR gösterimiyle 0.0.0.0/0 adresine gitmek için
# 192.168.1.34 ağ arayüzünden erişilebilen 192.168.1.1 geçidine gideceğiz.
# Yani ADSL Modeme (192.168.1.1) ulaşmak için 192.168.1.34 IP'sinin tanımlı olduğu ağ cihazına uğrayacağım.
#
# Başka bir okumayla; herhangi bir adrese (0.0.0.0/0) gitmek için ADSL modemimin MAC adresini kullanacağım.
# Yani X.X.X.X IP adresi için Data katmanında MAC adresi olarak 192.168.1.1 ağ geçidinin MAC adresini yazacağım.
#
# Örnek AKIŞ'ım ICMP paketiyle olsun: ping 85.86.87.88
# Hedef IP adresi için rota tablomdaki ilk satırı (0.0.0.0/0) kullanabiliyorum.
# ARP tablomda 192.168.1.1 makinasının MAC adresi yoksa önce bir ARP mesajı oluşturup ADSL Modeme doğru 192.168.1.34 ağ
# arayüzünden göndereceğim:
#
# Network Katmanı PAKETİ:
# Source IP Destination IP TTL Other Protocol
# 192.168.1.34 85.86.87.88 128 Diğer bilgiler ICMP
#
# Ama Data Katmanı PAKETİ'nde hedef IP'nin MAC adresi ADSL MODEM olmalı, ancak ARP Tablosunda bu bilgi YOK!
# Destination MAC Source MAC Layer3 Protocol Payload
# ??????????????? D0-C6-37-C4-90-BE IPv4 [192.168.1.34 85.86.87.88 128 Diğer bilgiler ICMP]
#
# O zaman önce ARP paketi göndereceğiz:
# Destination MAC Source MAC Layer3 Protocol Payload
# FF:FF:FF:FF:FF D0-C6-37-C4-90-BE ARP Who has 192.168.1.1?
#
# Gelen ARP REPLY mesajı aşağıdaki gibi olup bu kez ICMP paketi gönderilecek:
# Destination MAC Source MAC Layer3 Protocol Payload
# D0-C6-37-C4-90-BE CC:DE:12:F3:A1 ARP CC:DE:12:F3:A1
#
# Gelen mesajın içinden 192.168.1.1 IP'li ADSL modemin MAC adresi alınıp ICMP paketinde DESTINATION MAC kısmına yazılır.
# Destination MAC Source MAC Layer3 Protocol Payload
# CC:DE:12:F3:A1 D0-C6-37-C4-90-BE IPv4 [192.168.1.34 85.86.87.88 128 Diğer bilgiler ICMP]
#
# Paketi gönderdiğimiz ADSL modem, FRAME başlığını atarak IP paketinde yazılı hedef IP'ye (85.86.87.88) bakar.
# Hedef adresin (85.86.87.88) kendi rota tablosunda hangi ağ arayüzü üstünden gönderilmesi gerektiğini çözümler.
# Yeniden hedef makinanın MAC adresini çözümlemek için ARP paketi hazırlar:
# - Frame header'ın Source MAC kısmına kendi MAC adresini yazar,
# - DESTINATION MAC için BROADCAST MAC adresini (FF:FF:FF:FF:FF) yazar,
# - Layer3 Protokol olarak ARP yazar,
# - ARP mesajının içeriğine "Who has 85.86.87.88?" yazar ve gönderir.
#
# Destination MAC Source MAC Layer3 Protocol Payload
# FF:FF:FF:FF:FF CC:DE:12:F3:A1 ARP Who has 85.86.87.88?
#
# Gelen ARP REPLY içinden
# Destination MAC Source MAC Layer3 Protocol Payload
# CC:DE:12:F3:A1 FA:EA:DA:CA ARP FA:EA:DA:CA
#
# - ARP cevabındaki MAC adresini payload içinden çekerek (örneğin FA:EA:DA:CA olsun) ICMP mesajının Frame header'ına yazar,
# - IP paketinde TTL'yi 1 azaltarak 127 yapar,
# - ICMP mesajını içeren IP paketini hedefe gönderir,
# - Gateway Network katmanındaki IP paketinin Header bilgisindeki kaynak ve hedef IP adreslerini bilinçli istemedikçe DEĞİŞMEZ!
# - Böylece cevap mesajına yazılacak hedef IP adresi en baştaki 192.168.1.34 olarak tekrar yola çıkar
#
# Destination MAC Source MAC Layer3 Protocol Payload
# FA:EA:DA:CA CC:DE:12:F3:A1 IPv4 [192.168.1.34 85.86.87.88 127 Diğer bilgiler ICMP]
#
# Gelen PING REPLY mesajları aynı yolla en baştaki bilgisayara ulaştırır.
23.23.23.0 255.255.255.0 On-link 23.23.23.23 281
# Bilgisayarımda bir loopback kartı tanımlı ve adresini 23.23.23.23 vermişim. Ve bu kartın dahil olduğu ağdaki bilgisayarlara
# erişmek için bu 23.23.23.23 IP adresli ağ kartına gitmeliyim.
# İlk kez gördüğümüz On-Link ifadesi
# - arada kimse yok,
# - doğrudan kartın bağlı olduğu ağ benim bilgisayarım,
# - benim bilgisayar 23.23.23.0-255 bloğuna doğrudan ARP mesajları gönderebilir
# anlamlarıdadır.
#
# Yine 0.0.0.0/0 adresi nasıl uçsuz bucaksız bir ağ tanımı yapıyorsa bu satırdaki 255.255.255.0 maskesi ise o kadar kısıtlayarak
# sadece 23.23.23.0 ile 23.23.23.255 arasındaki bilisayarları işaret ediyor.
23.23.23.23 255.255.255.255 On-link 23.23.23.23 281
# Bu kez tek bir IP adresini işaretlediğimiz 255.255.255.255 maskesini görüyoruz. Sadece 23.23.23.23 IP'li bilgisayara erişmek
# için maskemizi 255.255.255.255 diye belirtiyoruz. CIDR olarak yazarsak 23.23.23.23/32 olacak adrese 23.23.23.23 IP'li
# ağ kartımız üstünden erişebiliyoruz ve yine arada bir başka bir geçit olmadığını On-Link ile ifade ediyor.
23.23.23.255 255.255.255.255 On-link 23.23.23.23 281
127.0.0.0 255.0.0.0 On-link 127.0.0.1 331
127.0.0.1 255.255.255.255 On-link 127.0.0.1 331
127.255.255.255 255.255.255.255 On-link 127.0.0.1 331
169.254.0.0 255.255.0.0 On-link 169.254.204.176 281
169.254.0.0 255.255.0.0 On-link 169.254.171.238 291
169.254.0.0 255.255.0.0 On-link 169.254.49.201 281
169.254.49.201 255.255.255.255 On-link 169.254.49.201 281
169.254.171.238 255.255.255.255 On-link 169.254.171.238 291
169.254.204.176 255.255.255.255 On-link 169.254.204.176 281
169.254.255.255 255.255.255.255 On-link 169.254.204.176 281
169.254.255.255 255.255.255.255 On-link 169.254.171.238 291
169.254.255.255 255.255.255.255 On-link 169.254.49.201 281
# Alt satırda bir ağ arayüzümüz var ve IP adresi 172.17.192.1'dir. Bu adres DOCKER veya K8s sayesinde oluşturturulmuş.
# Yukarıdakilerden farkı CIDR bilgisi 172.17.192.0/20 olacak (https://www.ripe.net/about-us/press-centre/IPv4CIDRChart_2015.pdf).
172.17.192.0 255.255.240.0 On-link 172.17.192.1 271
172.17.192.1 255.255.255.255 On-link 172.17.192.1 271
172.17.207.255 255.255.255.255 On-link 172.17.192.1 271
172.21.112.0 255.255.240.0 On-link 172.21.112.1 271
172.21.112.1 255.255.255.255 On-link 172.21.112.1 271
172.21.127.255 255.255.255.255 On-link 172.21.112.1 271
# Bu kez internet üstündeki bir bilgisayara erişmek için statik bir rota tanımlanmış. Burada diyor ki; "176.236.170.162/32
# makinasına gitmek istersen, 192.168.1.34 arayüzünün üstünden 192.168.1.1 ağ geçidine yönlenmelisin".
176.236.170.162 255.255.255.255 192.168.1.1 192.168.1.34 35
192.168.1.0 255.255.255.0 On-link 192.168.1.34 291
192.168.1.1 255.255.255.255 On-link 192.168.1.34 35
192.168.1.34 255.255.255.255 On-link 192.168.1.34 291
192.168.1.255 255.255.255.255 On-link 192.168.1.34 291
192.168.33.0 255.255.255.0 On-link 192.168.33.1 281
192.168.33.1 255.255.255.255 On-link 192.168.33.1 281
192.168.33.255 255.255.255.255 On-link 192.168.33.1 281
192.168.68.0 255.255.255.0 On-link 192.168.68.1 291
192.168.68.1 255.255.255.255 On-link 192.168.68.1 291
192.168.68.255 255.255.255.255 On-link 192.168.68.1 291
192.168.99.0 255.255.255.0 On-link 192.168.99.1 281
192.168.99.1 255.255.255.255 On-link 192.168.99.1 281
192.168.99.255 255.255.255.255 On-link 192.168.99.1 281
224.0.0.0 240.0.0.0 On-link 127.0.0.1 331
224.0.0.0 240.0.0.0 On-link 192.168.33.1 281
224.0.0.0 240.0.0.0 On-link 192.168.99.1 281
224.0.0.0 240.0.0.0 On-link 192.168.1.34 291
224.0.0.0 240.0.0.0 On-link 169.254.204.176 281
224.0.0.0 240.0.0.0 On-link 192.168.68.1 291
224.0.0.0 240.0.0.0 On-link 23.23.23.23 281
224.0.0.0 240.0.0.0 On-link 169.254.171.238 291
224.0.0.0 240.0.0.0 On-link 169.254.49.201 281
224.0.0.0 240.0.0.0 On-link 172.17.192.1 271
224.0.0.0 240.0.0.0 On-link 172.21.112.1 271
255.255.255.255 255.255.255.255 On-link 127.0.0.1 331
255.255.255.255 255.255.255.255 On-link 192.168.33.1 281
255.255.255.255 255.255.255.255 On-link 192.168.99.1 281
255.255.255.255 255.255.255.255 On-link 192.168.1.34 291
255.255.255.255 255.255.255.255 On-link 169.254.204.176 281
255.255.255.255 255.255.255.255 On-link 192.168.68.1 291
255.255.255.255 255.255.255.255 On-link 23.23.23.23 281
255.255.255.255 255.255.255.255 On-link 169.254.171.238 291
255.255.255.255 255.255.255.255 On-link 169.254.49.201 281
255.255.255.255 255.255.255.255 On-link 172.17.192.1 271
255.255.255.255 255.255.255.255 On-link 172.21.112.1 27110.0.0.10'dan 192.168.10.8'e ICMP paketi gidecek. Paket hazırlanır ve 0.10 makinasının varsayılan ağ geçidine gönderilir.
ROUTER A'ya gelen paketin hedef IP adresi 192.168.10.8, yönlendirme tablosunda aranır ve bulunamaz. Paket düşürülerek senaryo sonlanır!
Burada bir açıklama daha yapalım. Eğer 10.0.0.10 makinamızın konsolundan ping mesajını 192.168.10.8'e atarsak ve ROUTER A'da tanımlı bir yönlendirme yoksa alacağımız cevap Destination host unreachable olacaktır
C:\Windows\System32>ping 192.168.10.8
Pinging 192.168.10.8 with 32 bytes of data:
Reply from 10.0.0.1: Destination host unreachable.
Reply from 10.0.0.1: Destination host unreachable.
Reply from 10.0.0.1: Destination host unreachable.
Reply from 10.0.0.1: Destination host unreachable.
Ping statistics for 192.168.10.8:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),Ancak aşağıdaki adımda 192.168.10.x bloğuna gitmek istenirse ROUTER B'ye gidilsin diye bir rotayı ROUTER A'ya tanımladığımızda alacağımız mesaj Request timed out. olacaktır. Çünkü bu kez ROUTER A'dan ROUTER B'ye bir hedef mevcut ancak ROUTER B'ye gelen cevabın hedefi 10.0.0.10 adresine yani bize olacağı için ve bu yönde (192.160.10.x -> 10.0.0.x ) bir rota tanımlı olmadığı için mesajlar ROUTER B tarafından düşürülür. ROUTER A'nın isteklerine karşılık gelecek cevap mesajları dönemediği için İSTEK ZAMAN AŞIMINA uğruyor.
C:\Windows\System32>ping 192.168.10.8
Pinging 192.168.10.8 with 32 bytes of data:
Request timed out.
Request timed out.
Request timed out.
Request timed out.
Ping statistics for 192.168.10.8:
Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),
C:\Windows\System32>A yönlendiricisi için diyoruz ki;
Sana 192.168.10.x IP'sine gitmek isteyen bir paket gelirse, B yönlendiricisinin MAC adresini frame başlığına yaz ve gönder, B yönlendiricisi nereye göndermesi gerekiyorsa o bilir.
Bu şekilde bir rota girdiğimizde tablomuza SSSStatik rota eklemiş oluyoruz:
Rota bilgisi girerken kodlar ile rotanın türünü belirtiyoruz:
| Kod | Anlamı |
|---|---|
| C | connected |
| S | static |
| R | RIP |
| M | mobile |
| B | BGP |
| D | EIGRP |
| EX | EIGRP external |
| O | OSPF |
| IA | OSPF inter area |
| N1 | OSPF NSSA external type 1 |
| N2 | OSPF NSSA external type 2 |
| E1 | OSPF external type 1 |
| E2 | OSPF external type 2 |
| i | IS-IS |
| su | IS-IS summary |
| L1 | IS-IS level-1 |
| L2 | IS-IS level-2 |
| ia | IS-IS inter area |
| * | candidate default |
| U | per-user static route |
| o | ODR |
| P | periodic downloaded static route |
Şimdi tekrar akışı görelim:
İstemciden giden paketin IP başlığına kaynak ve hedef bilgilerini yazıp doğrudan varsayılan ağ geçidine göndereceğiz:
A Yönlendiricisine gelen paketin hedef IP adresine (192.168.10.8) uygun bir yönlendirme var mı diye bakılacak ve bulunacak (S 192.168.10.0/24 via 172.16.0.2). Artık gideceği hedef Router B olacağından onun MAC adresini öğrenmek için ARP paketi gönderilecek
| DESTINATION MAC | SOURCE MAC | LAYER3 PROTOCOL | PAYLOAD |
|---|---|---|---|
| FF:FF:FF:FF:FF | 0C:29:FC:70:A5 | ARP | Who has 172.16.0.2? |
ARP REPLY gelince içinden ROUTER B'nin MAC adresi (diyelimki BB:BB:BB:BB:BB:00 geldi) FRAME içinde DESTINATION MAC kısmına yazılacak ve gönderilecek:
| DESTINATION MAC | SOURCE MAC | LAYER3 PROTOCOL | PAYLOAD |
|---|---|---|---|
| BB:BB:BB:BB:00 | 0C:29:FC:70:A5 | IPv4 | [ IPv4 paketi: SRC IP:10.0.0.10, DST IP:192.168.10.8, TTL:127, OTHER, PROTOCOL: ICMP ] |
ROUTER B gelen paketin hedef IP adresini yönlendirme tablosunda 192.168.10.x bloğuna gönderilebilir olarak bulur. FRAME Header'a yazacağı DESTINATION MAC bilgisine ne yazacağını bilemediği için ARP mesajına Who has 192.168.10.8? yazarak DESTINATION MAC: FF:FF:FF:FF:FF ile BROADCAST yapar.
Gelen cevaptan hedef makinanın MAC adresini alarak IPv4 Layer3 protokolüyle gidecek olan gerçek mesajın DESTINATION MAC bilgisini doldurarak hedefe ulaştırır.
Sunucu gelen mesaja cevap olarak sıfırdan ICMP REPLY mesajı oluşturur ve TTL değerini 128 olarak yeniler. Gelen mesajın FRAME HEADER'ında yer alan SOURCE MAC ADDRESS değerini bu kez giden mesajın DESTINATION MAC ADDRESS kısmına yazar ve gönderir.
Gelen mesajın hedef adresi 10.0.0.10 ve yönlendirme tablosunda olmadığı için paket düşürülür ve senaryo biter.
ROUTER B'nin F0/0 bacağından ROUTER A'nın F0/1 bacağına hedef IP bloğu 10.0.0.x için S 10.0.0.0/24 via 172.16.0.1 rotasını ROUTER B'nin tablosuna ekliyoruz.
Artık paketler düşmeyecek !
Sunucunun mesajı tekrar ROUTER B'ye gönderdiğini düşünelim ve akışa bir kez daha bakalım. Mesajı alan ROUTER B yönlendirme tablosunda 10.0.0.x bloğuna gidecek kurala bakarak 172.16.0.1 IP adresine göndermesi gerektiğini görecek. O halde 172.16.0.1'in MAC adresini öğrenmek için önce ARP mesajı gönderecek, gelen ARP REPLY içinden MAC adreini ICMP REPLY mesajının FRAME HEADER'ına yazarak gönderecek.
Artık mesaj ROUTER A'da. Tablosunda 10.0.0.x bloğunun doğrudan (On-link) F0/0 bacağına bağlı olduğunu görüp 10.0.0.10 makinasının MAC adresini öğrenmek için ARP mesajını tüm ağa yayacak ve gelen mesaj bizim zavallı istemcimizden olacağı için onun MAC adresiyle paketin FRAME HEADER'ını süsleyerek gönderecek.
Artık ICMP REPLY mesajı istemcide:

Sonuç olarak iki yönlendiricinin tablosuna birbirlerinin rota bilgilerini eklemiş olarak akışı sağlayabildik:
10.0.0.x bloğu için Router B'ye statik route eklerken hem 172.16.0.2 adresinin olduğu interface üstünden diyebildiğimiz gibi hem de F0/0'a (aygıta) yönlendir diyebiliriz:
$ ip route 10.0.0.0 255.255.255.0 f0/0
$ ip route 10.0.0.0 172.16.0.2















