Nisan 1999, İlker TEMİR
IP Yönlendirme
Önceki dokümanda TCP/IP'nin
ne olduğunu ve adreslemenin nasıl yapıldığı anlatılmıştı, paketlerin internet
üzerinde yollarını nasıl bulduklarını ise bu dokümanda anlatacağız.
Öncelikle bir TCP/IP networküne
bağlanmak isteyen bir bilgisayarda yapılması gereken ayarları ele alalım.
TCP/IP protokolü tanıtılırken bir takım bilgilere ihtiyaç duyulmaktadır,
bunlar
1. IP numarası *
2. Subnet maskesi *
3. Ağ geçidi (Gateway)
4. DNS Sunucularıdır
Yanlarında * bulunan bilgiler mutlaka
girilmesi gerken bilgilerdir, diğerleri duruma göre boş bırakılabilir.
Buradaki IP numarası ve subnet
maskesi hakkında detaylı bilgi önceki dokümanlarda verilmiştir, DNS sunucuları
ise daha sonra açıklanacaktır. Bu kısımda özellikle üzerinde durulacak
olan 'ağ geçidi' kavramı ve internet üzerinde yönlendirmedir. Buradan hareketle
yukarıdaki bilgilere sahip bir bilgisayarın yapacaklarını özetleyelim,
ilk olarak daha önce anlatıldığı şekilde IP adresini ve subnet maskesini
kullanarak ait olduğu networkü bulacaktır. Daha sonra kendisi için bir
IP yönlendirme tablosu oluşturacaktır.
Yönlendirme tablosu oluştururken
izleyeceği yol şudur. Kendi IP numarasına giden tüm paketleri kendisine
yönlendirecektir. Aynı şekilde kendisi ile aynı networkte olan adreslere
bu IP numarasının ait olduğu arayüz üzerinden ulaşmaya çalışacaktır. Bu
network dışında kalan adreslere yönelen tüm paketleri ise ağ geçidi olarak
tanımlanan cihaza yönlendirecektir (Buradan da anlaşılacağı gibi, ağ geçidi
olarak tanımlanan IP numarası mutlaka kendi IP numarası ile aynı subnet
içinde olmalıdır, aksi taktirde bilgisayar ağ geçidine ulaşamayacaktır).
IP yönlendirme tablosunun
oluşturulabilmesi için gerekenlere bir bakalım. Öncelikle ulaşılmak istenen
network ve bu networkün maskesi bilinmelidir ve bu networke ulaşmak için
kullanılacak arayüz de gerekmektedir.
Bir örnekle konuyu daha açık hale getiremek için, 212.45.64.226 IP
numarasına ve 255.255.255.224 subnet maskına sahip bir bilgisayar için
ağ geçidinin 212.45.64.225 olarak tanımlandığını düşünelim.
Bu durumda bilgisayar ait olduğu networkü 212.45.64.224 olarak hesaplayacaktır,
oluşturduğu yönlendirme tablosu ise şu şekilde ifade edilebilir. Öncelikle
kendi IP numarasına giden paketleri kendi kendine gönder. 212.45.64.224
networkünde olan tüm paketleri 212.45.64.226 IP numarasını kullanarak gönder,
bu networkün dışındaki adreslere gidecek paketleri ise 212.45.64.225 IP
numarası üzerinden yönlendir. Tablo olarak ifade edecek olursak,
Hedef Network |
Maske |
Ağ geçidi |
Arayüz |
212.45.64.226 |
255.255.255.255 |
127.0.0.1* |
Loopback |
212.45.64.224 |
255.255.255.224 |
212.45.64.226 |
Ethernet0 |
0.0.0.0 |
0.0.0.0 |
212.45.64.225 |
Ethernet0 |
* 127.0.0.1 (Loopback) bilgisayarın kendisini ifade eder,
255.255.255.255 ise tek bilgisayarı tanımlayan subnet maskesidir.
sonucunu elde edebiriz. Burada belirtilen arayüz bilgisayarın bu IP
numarasına ulaşmak için kullandığı arayüzdür, bu arayüzün tanımı ve gösterimi
çeşitli işletim sistemleri arasında farklı olabilmektedir, unix türevi
sistemlerde ethernet için eth0, le0, hme0 gibi isimler kullanılırken (burada
0 kaçıncı arayüz olduğunu gösterir, örneğin bir bilgisayarda iki ethernet
kartı varsa bunlar eth0 ve eth1 ya da hme0 ve hme1 olarak tanımlanırlar),
windows tabanlı sistemlerde ise bundan farklı olarak arayüzler sahip oldukları
birincil IP ile tanımlanırlar, örneğin örneğimizdeki arayüz, arayüzün birincil
IP numarası olan 212.45.64.226 ile tanımlanacaktır.
Bu tanımlamaların yapılmış olduğu bir bilgisayarın IP yönlendirme
tablosu incelenecek olursa (IP numarasının tanımlandığı bilgisayar WinNT
Server 4.0'dır)
C:\>route print
Active Routes:
Network Address |
Netmask |
Gateway Address |
Interface |
Metric |
0.0.0.0 |
0.0.0.0 |
212.45.64.225 |
212.45.64.226 |
1 |
127.0.0.0 |
255.0.0.0 |
127.0.0.1 |
127.0.0.1 |
1 |
212.45.64.224 |
255.255.255.224 |
212.45.64.226 |
212.45.64.226 |
1 |
212.45.64.226 |
255.255.255.255 |
127.0.0.1 |
127.0.0.1 |
1 |
212.45.64.255 |
255.255.255.255 |
212.45.64.226 |
212.45.64.226 |
1 |
224.0.0.0 |
224.0.0.0 |
212.45.64.226 |
212.45.64.226 |
1 |
255.255.255.255 |
255.255.255.255 |
212.45.64.226 |
212.45.64.226 |
1 |
NOT: 0.0.0.0/0.0.0.0 tanımlanabilecek en genel networktür.
Bütün IP numaralarını kapsar.
Yukarıdaki tabloda birinci,
üçüncü ve dördüncü satırların bizim oluşturduğumuz tabloda yer aldığı diğerlerinin
ise yer almadığı hemen dikkati çekecektir. Burada ikinci satır 127 ile
başlayan tüm adreslerin loopback arayüzüne yönlendirilmesi gerektiğini
belirtmektedir. Bu da 127 ile başlayan tüm adreslerin aslında kendi kullandığımız
bilgisayarı tanımladığı anlamına gelir. Beşinci, altıncı ve yedinci satırlar
ise broadcast ve multicast tanımlamalarıdır, broadcast yönlendirmeler belli
bir IP numarasına değil tüm networke ulaşılmaya çalışıldığında kullanılırlar.
Ancak yönlendirme tablosunun bu tanımları sistem tarafından otomatik olarak
yapılmaktadır, kullanıcının bunları ileride değinileceği şekilde değiştirmesine,
silmesine ya da eklemesine gerek duyulmamaktadır.
Bizim oluÅŸturduÄŸumuz
tabloda bulunmayan 'metric' hanesi ise eşdeğer yönlendirmeler arasında
hangisinin önce kullanılacağını belirtir.
Bir IP yönlendirme
tablosu incelenirken ya da oluşturulurken dikkat edilmesi gereken en önemli
noktalardan biri yönlendirme tablosunun en özelden en genele doğru taranacağıdır,
örneğin 212.45.64.226 numaralı IP'ye ulaşmaya çalışırken bu IP numarasının
hem 212.45.64.226/255.255.255.255 hem 212.45.64.224/255.255.255.224 hem
de 0.0.0.0/0.0.0.0 networklerinin içinde kaldığı görülür ama bunların arasında
en özel olan kullanılacaktır, bu da 212.45.64.226/255.255.255.255'tir.
Örneklerle devam ederek
konumuzu genişletelim. 212.45.64.226/27 IP numaralı bilgisayarımızın 212.45.64.231
IP numaralı bilgisayara ulaşmak istediğini düşünelim. Öncelikle kendi yönlendirme
tablosunda bulunan network adresleri ile subnet maskelerini kullanarak
bu IP'nin yönlendirme tablosundaki networklerden herhangi birinin dahilinde
olup olmadığını hesaplayacaktır. Hem birinci (0.0.0.0/0) hem de üçüncü
satırların (212.45.64.224/27) bu IP'yi kapsadığı bu hesaplama sonucu ortaya
çıkacaktır, 212.45.64.224/27 diğerinden daha özel bir tanımlama olduğu
için bunu kullanacak ve paketi kendi IP numarası üzerinden LAN'e gönderecektir.
Bunu komut satırında inceleyecek olursak.
C:\>tracert 212.45.64.231
Tracing route to aboneservisi.marketweb.net.tr [212.45.64.231]
over a maximum of 30 hops:
1 <10 ms <10 ms
<10 ms aboneservisi.marketweb.net.tr [212.45.64.231]
Trace complete.
Buradan da görüldüğü gibi
212.45.64.226 ve 212.45.64.226 bilgisayarları aynı networkte bulundukları
için hiçbir ağ geçididen geçmeksizin haberleşebilmektedirler.
Bu kez aynı bilgisayarı kullanarak
212.45.64.20 IP numarasına sahip bilgisayara ulaşmaya çalıştığımızı düşünelim.
Bilgisayarımız yine yönlendirme tablosunu kullanarak bu IP'nin hangi networkler
tarafından kapsandığını bulmaya çalışacaktır. Bulacağı networkün ise yalnızca
0.0.0.0/0 olduğu görülecektir. (Daha önce de söylendiği gibi 0.0.0.0/0
tüm networkleri kapsamaktadır, bu yüzden default route adı verilmiştir).
Bu durumda paketler, ağ geçidi olarak tanımlanan 212.45.64.225 IP numaralı
cihaza yönlendirilecektir yani bir anlamda 'top 212.45.64.225'e atılmıştır'.
Kritik soru da burada gelmektedir, 212.45.64.225 IP numaralı cihaz 212.45.64.20
IP numarasına nasıl ulaşacaktır. Ağ geçidinin özelliğini de tam burada
tanımlamak faydalı olacaktır. Bir cihazın ağ geçidi görevini görebilmesi
için en az iki farklı network'te arayüzünün bulunması gerekmektedir. Örneğin
bir ağ geçidi x.y.z.0/24 networkündeki bilgisayarların a.b.c.0/24 networkündeki
bilgisayarlara ulaşması için kurulmuşsa, bir arayüzünün (örneğin ethernet)
x.y.z.0/24 networküne bağlı, başka bir arayüzünün (ethernet, seri/dialup
arabirim vs) a.b.c.0/24 networküne bağlı olması gerekmektedir.
Örneğimizden kopmadan devam
edersek, 212.45.64.20 IP numaralı bilgisayar ağ yönlendiricisine
1 numaralı ethernet arayüzünden, 212.45.64.226 IP numaralı bilgisayar ise
ağ yönlendiricisine 2 numaralı ethernet arayüzünden bağlı olduğunu düşünebiliriz.
Traceroute sonucunu
incelersek
C:\>tracert 212.45.64.20
Tracing route to kheops.marketweb.net.tr [212.45.64.20]
over a maximum of 30 hops:
1 10 ms <10 ms
10 ms grf.marketweb.net.tr [212.45.64.225]
2 <10 ms 10 ms
10 ms kheops.marketweb.net.tr [212.45.64.20]
Trace complete.
Görüldüğü gibi 212.45.64.20
IP numaralı bilgisayara 212.45.64.225 numaralı cihaz üzerinden ulaşılmıştır.
Buradan çıkan sonuç 212.45.64.225 IP numaralı cihazın en az iki arayüzü/IP
adresinin olduğu ve bu arayüzlerden biri 212.45.64.224 networkünde iken
diğerinin 212.45.64.0 networkünde olduğudur. 212.45.64.225 IP numaralı
cihazın yönlendirme tablosu hakkında basit bir yorum yaparsak şöyle bir
sonuç elde edebiliriz.
Network Address |
Netmask |
Gateway Address |
Interface |
212.45.64.0 |
255.255.255.128* |
212.45.64.1** |
Ethernet0 |
212.45.64.224 |
255.255.255.224 |
212.45.64.225 |
Ethernet1 |
* Buradaki traceroute sonucu ile netmaskı öğrenmek
mümkün değildir, burada verileni bir önbilgi kabul edebilirsiniz.
** Burada belirtilen 212.45.64.0/25 segmentinde herhangi
bir IP olabilir. Bu yönlendiricinin 212.45.64.0/25 segmentindeki IP numarasıdır.
Aynı şekilde arayüzler de (ethernet 0, ethernet 1) önbilgi olarak yazılmıştır,
arayüzlerin ne olduğu eldeki verilerle tesbit edilemez.
Görüldüğü gibi 212.45.64.225
adresine yönlendirilen paketler bu cihazın yönlendirme tablosunda taranarak
ilgili arayüzlerden hedeflerine ulaştırılmışlardır. Aynı şekilde 212.45.64.20/25
IP numaralı bilgisayardan 212.45.64.226 adresine çekilen traceroute sonucu
da
kheops/export/staff/ilker>traceroute 212.45.64.226
traceroute to 212.45.64.226 (212.45.64.226), 30 hops max, 40 byte
packets
1 212.45.64.1 (212.45.64.1) 3 ms 3 ms 1 ms
2 taurus.marketweb.net.tr (212.45.64.226) 5 ms 5 ms
6 ms
şeklindedir. Bu da ağ geçidimizin hem 212.45.64.1 hem de 212.45.64.225
IP numaralarına sahip olduğunu göstermektedir.
Şematik olarak gösterirsek

Görüldüğü gibi ağ geçidinin
iki ayrı networke de bağlantısı bulunmaktadır. Kafalarda kalmış olabilecek
soruları gidermek için son bir örnek vererek konumuzun tanım kısmını bitirelim.
Networkleri caddelere, istemcileri de caddelere çıkışları olan evlere benzetirsek,
ağ geçitleri, ön kapısı bir caddeye, arka kapısı ise başka bir caddeye
açılan, böylece caddeler arasında -belli kurallar dahilinde- geçiş sağlayan
iÅŸ merkezleridir.
Yukarıdaki açıklamalardan
da anlaşılabileceği gibi internete bağlı tüm bilgisayarlar bir anlamda
yönlendirme yapmakta ve yönlendirme tabloları kullanmaktadırlar. Ancak
asıl işi yürütenler, yönlendirici (router) dediğimiz bu işi yapmak için
özel olarak tasarlanmış sistemlerdir ('sıradan' bilgisayarlar da uygun
şekilde konfigüre edilerek router haline getirilebilirler ancak bu dokümanda
buna değinilmeyecektir). O halde genel anlamda bir routerı tanımlarsak,
çok sayıda farklı arayüze (ethernet, atm, fddi, serial, e1, e3, t1, t3…..)
sahip olup, çeÅŸitli protokolleri yönlendirmesi (IP,IPX …) için özel olarak
tasarlanmış cihazlardır. Bir çoğunda desteklenen arayüzler modüler olup
ihtiyaca göre eklenip çıkarılabilmektedir. Aynı şekilde yönlendirme protokolleri
de cihazların yazılımları ile belirlenebilmektedir. Bu cihazlara örnek
olarak çeşitli Cisco ve Ascend cihazları gösterilebilir (Piyasada onlarda
farklı üretici tarafından üretilmiş yüzlerce hatta binlerce router bulunmaktadır,
burada belirtilenler yalnızca örnek olarak verilmiştir). Dokümanın bundan
sonraki kısmında işletim sistemi detaylarına mümkün olduğu kadar az girilerek
router'lardan bahsedilecektir.
Az önce teorik olarak çıkarılan
sonuçları omurga router'I üzerinde inceleyecek olursak (Burada incelenen
router bir Ascend GRF 400'dür)
Routing tables
Internet:
Destination |
Gateway |
Flags |
Refs |
Use |
Interface |
212.45.64/25 |
212.45.64.1 |
UHI |
2 |
6 |
ge031 |
212.45.64.224/27 |
212.45.64.225 |
U |
1 |
403 |
ge032 |
NOT:
1. Buradaki iki satır router yönlendirme tablosundan
seçilerek gösterilmiştir. Aksi taktirde yüzlerce network tanımı arasında
görülmeleri mümkün değildir.
2. Arayüzler ise burada görüldüğü gibi belirtilenlerden
farklı tanımlanmışlardır, ge031 cihazın birinci şase, üçüncü slotunun,
birinci portunu belirtmektedir, aynı şekilde ge032 de birinci şase, üçüncü
slotunun, ikinci portunu belirtir (buradaki e ise arayüzün ethernet olduğunu
göstermektedir).
Şimdi örneği biraz daha karmaşıklaştıralım
ve sisteme yeni bir cihaz daha ilave edelim. Ethernet portunun IP'si 212.45.65.8/24
olan bu cihaz GRF'e 3. ethernet portu aracılığıyla bağlantılı olsun (GRF'in
aynı segmentteki IP numarasının ise 212.45.65.9/24 olduğunu kabul edelim).
Aynı zamanda bu cihaz üzerinde bulunan 240 modemin IP numaralarının 212.45.68.1,
212.45.68.2 .... 212.45.68.254 havuzunda bulunsun.
Şematik olarak bunu gösterirsek

Bu durumda 212.45.68.0/24
segmentine ulaşmak için mutlaka 212.45.65.8 IP numaralı cihaza (TNT) ulaşmak
gerekmektedir, buradan çıkan sonuç ise TNT'nin de yönlendirme yaptığı ve
bir anlamda router olduğudur. Ancak tüm trafiğin geçtiği omurga yönlendiricisinin
212.45.68.0/24 segmentine 212.45.65.8 IP numarası ile ulaşacağını bilmesi
gerekir aksi taktirde 212.45.68.0/24 segmentine ulaşmak için kendisine
gelen paketleri hangi adrese yönlendireceğini bilemez. Bu durumda omurga
yönlendiricisi üzerinde 212.45.68.0/24'ün 212.45.65.8'e yönlendirilmesi
gerekir (bu işlem dinamik routing (rip, ospf), arp proxy ve benzeri yöntemlerle
yapılabilir, ancak burada konuyu karıştırmamak için statik yönlendirme
anlatılacaktır). Bunun için router üzerinde 'route add -net 212.45.68.0
212.45.65.8' şeklinde bir komut çalıştırmak yeterli olacaktır (yazılan
komut işletim sistemine bağlı olup burada belirtilen SysV türü unix sistemlerinde
kullanılan notasyondur, aynı işlem bir cisco yönlendirici üzerinde konfigürasyon
moduna geçtikten sonra 'ip route 212.45.68.0 255.255.255.0 212.45.65.8'
şeklindeki bir komutla yapılabilir). Bunu da yaptıktan sonra omurga routerının
yönlendirici tablosuna tekrar bakarsak :
Routing tables
Internet:
Destination |
Gateway |
Flags |
Refs |
Use |
Interface |
212.45.65 |
212.45.65.9 |
U |
1 |
12316 |
ge030 |
212.45.68 |
212.45.65.8 |
UGS |
0 |
399 |
ge030 |
212.45.64/25 |
212.45.64.1 |
UHI |
2 |
6 |
ge031 |
212.45.64.224/27 |
212.45.64.225 |
U |
1 |
403 |
ge032 |
Şimdi bilgisayarımızdan 212.45.68.2 IP numarasına ulaşmak için traceroute
sonucu alırsak :
C:\>tracert 212.45.68.2
Tracing route to tnt-port002.marketweb.net.tr [212.45.68.2]
over a maximum of 30 hops:
1 <10 ms <10 ms
<10 ms grf.marketweb.net.tr [212.45.64.225]
2 <10 ms <10 ms
<10 ms tnt.marketweb.net.tr [212.45.65.8]
3 120 ms 120 ms 121 ms
tnt-port002.marketweb.net.tr [212.45.68.2]
Trace complete.
Görüldüğü gibi bilgisayarımızın
nasıl ulaşacağını bilmediği paketi ağ geçidine göndermiş, ağ geçidi de
212.45.68 bloğunun 212.45.65.8 adresinden erişildiğini bildiği için paketi
bu adrese göndermiştir. Akla şöyle bir soru gelebilir : Omurga yönlendiricisi
hangi adrese gideceğini bilmediği bir paket alırsa ne olur ? Şu anda tanımlı
olmayan bir bloğa çekilen traceroute sonucunu inceleyelim.
C:\>tracert 212.45.80.1
Tracing route to 212.45.80.1 over a maximum of 30 hops
1 <10 ms <10 ms
<10 ms grf.marketweb.net.tr [212.45.64.225]
2 grf.marketweb.net.tr [212.45.64.225] reports:
Destination host unreachable.
Trace complete.
Görüldüğü gibi, paket omurga
router'ına kadar ulaşmış ancak router bunu nereye yönlendireceğini bilmediği
için 'destination host unreachable' (belirtilen adres ulaşılamaz) mesajı
vermiştir (Konu hakkında bilgi düzeyi daha yüksek kullanıcılar için not:
Lokal olarak kullanılan blok 212.45.64/19'dır, bu yüzden bu blok içinde
kalan adresler internet'e yönlendirilmeyecek şekilde düzenlenmiştir.)
Burada dikkat edilmesi gereken
nokta iletişimin çift yönlü olduğudur, yani omurga routerı sizin gönderdiğiniz
paketleri hedefine ulaştırırken karşıdan gelen paketleri de size ulaştırmalıdır,
aksi taktirde bağlantı kurulamaz. Buradan hareketle kabaca bir tahmin yapılırsa
212.45.65.8 IP'li cihazın da ağ geçidinin omurga routerı olduğu düşünülebilir.
LAN düzeyinde IP yönlendirmesini son bir örnekle noktalayalım.
C:\>tracert 212.45.76.193
Tracing route to anadolunet-idsl.anadolunet.com.tr [212.45.76.193]
over a maximum of 30 hops:
1 <10 ms <10 ms
<10 ms grf.marketweb.net.tr [212.45.64.225]
2 <10 ms 10 ms
10 ms m4030-01-eth0.marketweb.net.tr [212.45.65.7]
3 30 ms 25 ms
50 ms cankaya-kizilay.marketweb.net.tr [212.45.76.1]
4 30 ms 60 ms
50 ms kizilay-anadolunet128k.anadolunet.com.tr [212.45.76.4]
5 80 ms 72 ms
70 ms anadolunet-idsl.anadolunet.com.tr [212.45.76.193]
Trace complete.
Bu tabloya bakarak, aradaki
tüm yönlendiricilerin yönlendirme tablolarını inceleyelim. Öncelikle grf.marketweb.net.tr'da
212.45.76 ile ilgili bir yönlendirme bulunması gerekir, ilgili yönlendirme
aşağıda gösterilmiştir.
Routing tables
Internet:
Destination |
Gateway |
Flags |
Refs |
Use |
Interface |
212.45.66/22 |
212.45.65.7 |
UGS |
0 |
0 |
ge030 |
Traceroute sonucuna paralel
olarak 212.45.76/22 bloğu 212.45.65.7 IP numarasına yönlendirilimiştir.
Aynı yönlendirmeyi 212.45.65.7'de ararsak:
ascend% sh ip route 212.45.76.193
Destination |
Gateway |
IF |
Flg |
Pref |
Met |
Use |
Age |
212.45.76.0/22 |
212.45.76.1 |
wan36 |
rGT |
60 |
1 |
54107 |
18169 |
Yine traceroute sonucuna
paralel olrak 212.45.76/22 bloğu 212.45.76.1 IP numarasına yönlendirilmiştir
(arayüzden de anlaşılacağı gibi bu bağlantı bir WAN bağlantısıdır). Sonuç
olarak 212.45.76.1 IPsine kadar ulaşmış durumdayız. Bu IP'ye sahip cihazda
bir sorgulama yaparsak:
kizilay-cisco#sh ip route 212.45.76.193
Routing entry for 212.45.76.192/26
Known via "static", distance 1, metric
0
Routing Descriptor Blocks:
* 212.45.76.4
Route metric is
0, traffic share count is 1
Görüldüğü gibi yeni ağ geçidimiz
212.45.76.4'tür. Burada dikkat edilmesi gereken şey, bloğumuzun küçülmüş
olduğudur, az önce /22 olarak yönlendirilen blok şu an /26 olarak yönlendirilmektedir.
Bu da kanın atar damarlardan kılcal damarlara dağılması gibi düşünülebilir,
en genelden en özele doğru yönlendirme devam etmektedir. 212.45.76.4'teki
yönlendirme tablosu aşağıdadır.
IDSL> ip route stat
Dest |
FF |
Len |
Interface |
Gateway |
Metrıc |
stat |
Tımer |
Use |
212.45.76.193 |
00 |
32 |
wan0ppp |
212.45.76.193 |
2 |
002f |
0 |
1676 |
212.45.76.192 |
00 |
26 |
wan0ppp |
212.45.76.193 |
1 |
002f |
0 |
1832303 |
Görüldüğü gibi 212.45.76.193
IP'sine wan bağlantısından ulaşılmaktadır ve trace bir sonraki noktada
tamamlanmaktadır.
Daha önce belirttiğim gibi burada gösterilen paketin 'gidiş yoludur',
aynı paketlerin aynı şekilde geri de gelebilmesi gerekir, ancak bunu da
ayrıca göstermeyi gereksiz görüyorum. Ancak geri dönüş için şöyle bir yol
düşünülebilir 'paketi yönlendireceğin adresi biliyorsan yönlendir yoksa
varsayılan (default) yönlendiriciye gönder'. Bu sistemle 212.45.64.226'ye
ulaşmak isteyen bir paket 212.45.76.193'ten çıkar ve varsayılan yönlendirmeleri
izleyerek omurga yönlendiricisine kadar ulaşır, omurga yönlendiricisi ise
zaten 212.45.64.226'ya nasıl ulaşacağını bilmektedir. Bu şekilde geliş/gidiş
yönlendirmeleri tamamlanmış olur.
Burada belirtilen yapının şeması ise şu şekildedir.

Sanırım bu şemayla traceroute sonucu beraber incelendiğinde, IP yönlendirme
konusunda net bir fikir elde edilebilir.
NOT: Yukarıda verilen tüm şekil ve yönlendirme tablolarında yalnızca
ilgili kısımlar gösterilmiş diğer kısımlar karışıklığa yol açmaması için
çıkartılmıştır.
TEK NOLTADAN INTERNETE BAĞLANTI ÜZERİNDE YÖNLENDİRME ÖRNEĞİ
Yönlendirmenin temel prensipleri
dokümanın ilk kısmında anlatılmıştır, ancak internet üzerinde yönlendirme
ağın büyüklüğü ve araya giren daha gelişmiş yönlendirme protokolleri nedeniyle
çok daha karmaşık bir hal alır. Bu yüzden burada internet yönlendirmesi
anlatılırken, yalnızca tek noktadan servis alan bir kurumun yönlendirmesi
anlatılacaktır. Bir önceki anlatımdan farklı olarak olayın sistematiği
de anlatılmaya çalışılacak ve teknik yapının yanında bir takım prosedürel
olaylardan da bahsedilecektir.
30 bilgisayarar ve 1 routerdan
oluşan LAN'ını internete bağlamak isteyen bir kurum düşünelim. Öncelikle
servis alınacak kuruma (ISS-Internet Servis Sağlayıcı) bağlantıyı sağlayacak
bir ortam gerekmektedir, hemen hiç bir durumda bu yalnızca kısa mesafelerde
çalışan ethernet ile mümkün olmamaktadır. Değişik alternatifler mümkün
olmasına rağmen burada Telekom şirketinden kiralanan data iletişim hattının
kullanıldığını ve bu hattın her iki ucuna konulan birer özel modem ile
ISS ile kurum arasında iletişimin hazır olduğunu düşünelim. Modemin bağlantısı
seri arayüz vasıtasıyla routera yapılacaktır. Bu durumda router ethernet
üzerinden bilgisayarlarla, modem üzerinden de ISS tarafında bulunan router
ile haberleşebilecek ve bilgisayarlar için internete bir geçit görevi görecektir
(ağ geçidi-gateway). Fiziksel bağlantı hazır olduğunda internet üzerinde
kullanılması gereken IP numaralarına ihtiyaç duyulur. IP'ler kuruma yine
ISS tarafından sağlanacaktır, ve ISS'in kullandığı IP bloğunun bir bölümünü
oluşturacaktır. Bu durumda ISS'in bu kuruma 64 IP'lik bir blok verdiğini
düşünelim. Bu blok 212.45.72.0/26, routerın ethernet arayüzüne verilen
IP ise 212.45.72.1 olsun. Aynı zamanda routerın modeme bağlı seri aryüzüne
212.45.95.2/30, ISS tarafında bulunan routerın modeme bağlı seri arayüzüne
ise 212.45.95.1/30 IP'lerinin atandığını düşünelim (Burada verilen IP'lerin
belirlenmesi ISS'in sistem yöneticisi tarafından yapılacaktır).
Bu anlatılanları şematik
olarak gösterirsek :

Görüldüğü gibi sistemde routerlar
en az iki farklı networkte bulunmaktadırlar, kurum routerı hem kurum için
networküne hem de routerlar arası geçiş networküne, ISS routerı ise hem
routerlar arası geçiş networküne hem de ISS networküne bağlıdır ve her
iki networkte arayüzleri bulunmaktadır. Aynı zamanda kurum ağında bulunan
tüm bilgisayarlar ISS tarafından atanan bloktan özgün birer IP numarasına
sahiptirler ve ağ geçidi olarak routerı kullanmaktadırlar.
Burada görülen sistemlerin
yönlendirme tablolarını teorik olarak çıkaralım.
212.45.72.2 (diÄŸer bilgisayarlar ile benzer ÅŸekilde):
AÄŸ |
Maske |
Geçit |
Tür |
0.0.0.0 |
0.0.0.0 |
212.45.72.1 |
Statik |
212.45.72.0 |
255.255.255.192 |
212.45.72.2 |
Doğrudan Bağlı |
212.45.72.1/212.45.95.2:
AÄŸ |
Maske |
Geçit |
Tür |
0.0.0.0 |
0.0.0.0 |
212.45.95.1 |
Statik |
212.45.72.0 |
255.255.255.192 |
212.45.72.1 |
Doğrudan Bağlı |
212.45.95.0 |
255.255.255.252 |
212.45.95.2 |
Doğrudan Bağlı |
212.45.95.1 :
AÄŸ |
Maske |
Geçit |
Tür |
0.0.0.0 |
0.0.0.0 |
212.45.65.9* |
Statik |
212.45.72.0 |
255.255.255.192 |
212.45.95.2 |
Statik |
212.45.95.0 |
255.255.255.252 |
212.45.95.1 |
Doğrudan Bağlı |
212.45.65.0 |
255.255.255.0 |
212.45.65.7* |
Doğrudan Bağlı |
* Daha önceki örneklerden yola çıkılarak belirtilmiştir.
Görüldüğü gibi kurumda kullanılan
sistemin yapısı son derece yalındır, iç network dışında kalan tüm IP'ler
routera yönlendirilerek internete 'bırakılırlar', bundan sonrasını ISS
routerları halletmektedir.
İnternet trafiğinin ISS dışındaki
akışını detaylı olarak anlatmak ise bu dokümanın kapsamına sığmayacak kadar
geniÅŸ bir konudur, ancak kabaca ÅŸu ÅŸekilde ifade edilebilir. Her IP, ISS
dışında aynı bloktan diğer IP'ler ile aynı şekilde hareket eder. Örneğin
son örnekte kuruma verilen IP bloğu (212.45.72.0/26) aslında ISS'in kendi
bloğu olan 212.45.64.0/19'un bir alt bloğudur (subnet), ve internet üzerinde
212.45.64.0/19 bloğu olarak yönlendirilir. Ancak paketler ISS routerlarına
ulaştıktan sonra 212.45.72.0/26 yönlendirmesi yapılır.
Son olarak belirtilmesi gereken
birkaç şey var. Bu dokümanda ana amaç TCP/IP yönlendirmesine yabancı kullanıcılar
için bir temel oluşturmak idi, network mühendisi haline getirmek değil.
Bu yüzden örnek olarak verilen yönlendirmelerin tamamı mümkün olduğunca
basit seçilen statik yönlendirmelerdir, gerçek durumlarda ise -orta-büyük
ölçekli sistemlerde- durum genellikle böyle olmayıp daha karmaşık olan
dinamik yönlendirme protokolleri kullanılanır (rip, ospf, (e)igrp, bgp
gibi).
Yazarın İzni Olmaksızın ve Kaynak Gösterilmeksizin
Kullanılamaz
|