magnify
Home Network Alt Ağlara Bölme (Subnetting)
formats

Alt Ağlara Bölme (Subnetting)

Tarih 21 Şubat 2008 yazar içinde Network

Alt Ağlara Bölme (Subneting)

Internet Protokolü (IP) vasıtasıyla haberleşmek durumunda olan tüm cihazlar bu haberleşmeyi sağlayabilmek için dinamik ya da statik mutlaka bir ip adresine sahip olmalıdırlar. Cihazlar ip adresleri vasıtasıyla diğer cihazlarla iletişim kurabilirler, ancak akış şeması sanıldığı kadar kolay değildir. Bunu bir örnek ile izah etmeye çalışalım; Bir okul düşünelim, bir öğretmen bu okulun tüm öğrencilerini tek bir sınıfta toplayıp ders verebilir mi? Oldukça güç olur değil mi, herkes konuşacak ama çok fazla gürültü olmayacak…  Bu karmaşanın önüne geçebilmek için öğrenciler sınıflara dağıtılırlar ve her sınıfa bir öğretmen atanır.

Mevcut network yapısı genişleyince Broadcast etki alanı da büyüyecek ve tüm networkdeki bilgisayarlar yoğun bir Broadcast trafiğinin ortasında sıkışıp kalacaklardır. Bu da ağ performansını negatif yönde etkileyecektir.

IP adreslerini de yine aynı şekilde ortamda gürültü (Broadcast trafiği) olmaması ve iletişimin daha sağlıklı yapılabilmesi için ya da gereksinimlerden kaynaklanan çeşitli network senaryoları için alt ağlara ayırırız, bu işleme Alt Ağlara Bölme işlemi (Subneting) denilir.

Herhangi bir sınıf IP ağ adresinin uç bitlerinden bir kısmını alt ağ için ayırarak alt ağlar oluşturabiliriz.

Alt ağlara ayırma işlemi yaparken;

“-Gerek duyulan kullanıcı sayısı ve Gerek duyulan alt ağ sayısı” olmak üzere iki farklı kriter kullanalabiliriz. Genel olarak örneklerimizde gerek duyulan alt ağ sayısından yola çıkacağız.

Örneklere geçmeden önce bir kaç temel bilgiyi vermemiz gerekiyor;

       a)    Oktet

IP adresi, 32-Bit olarak toplam 4 bölümden (oktet=bölüm) oluşur ve her bir oktet 8 bitliktir. Her bir oktetin değeri onluk sistemde minimum 0, maksimum 255 olabilmektedir.

       b)    İkilik Sayı Sistemi

IP hesaplaması yapılırken onluk sayı sistemi ikilik sayı sistemine matematik kuralları çerçevesinde çevrilir, ancak bu konu burada bahsedilecek bir uzmanlık alanı değildir, lütfen detaylı bilgi için matematik konulu kaynakları inceleyiniz.

Ancak, size güzel bir tablo vereceğim:

7.bit 6.bit 5.bit 4.bit 3.bit 2.bit 1.bit 0.bit Toplam 8 bit
2^7 2^6 2^5 2^4 2^3 2^2 2^1 2^0 Onluk karşılığı böyle hesaplanır
128 64 32 16 8 4 2 1 Onluk sistemdeki karşılığı
0 0 0 0 0 0 0 0 Onluk değeri 0 olan bir oktet
1 1 1 1 1 1 1 1 Onluk değeri 255 olan bir oktet
1 1 1 0 0 0 0 0 Onluk değeri 224 olan bir oktet

Yukarıdaki tabloya dikkat edecek olursanız, son satırda “1” bit değerine sahip olan onluk değerlerin toplanarak 224 oktet değerinin olarak ortaya çıktığını görebilirsiniz.

      c)    IP Adres Sınıfları

A sınıfı: 1 – 126             Öngörülen Ağ Maskesi:255.0.0.0

B sınıfı: 128 – 191         Öngörülen Ağ Maskesi:255.255.0.0

C Sınıfı: 192 – 223        Öngörülen Ağ Maskesi:255.255.255.0

D sınıfı: 224 – 239         Çoklu yayın (Multicast)

E sınıfı: 240 – 254         Araştırma için ayrılmıştır.

127: Loopback olarak ayrılmıştır ve bu sınıfların hiçbirisine dahil edilmemektedir.

 

172.16.122.204 ip adresi için Oktet ayrımı;

1.Oktet: 172 (Onluk) = 10101100 (İkilik)

2.Oktet:  16  (Onluk) = 00010000 (İkilik)

3.Oktet: 122 (Onluk) = 01111010 (İkilik)

4.Oktet: 204 (Onluk) = 11001100 (İkilik)

 

             d) Network ID (Ağ Adresi)

172.16.122.0 yukarıdaki ip için ağ adresidir; “Aynı sınıf adresine sahip olan bilgisayarları temsil eden ve o grupta bulunan bütün bilgisayarlarda aynı olan bölümdür, IP olarak herhangi bir cihaza  atanamazlar.”

e) Broadcast Adresi

172.16.122.255 yukarıdaki ip için broadcast adresidir; “Herhangi bir ağda bütün adresleri temsil etmek için kullanılan adreslere Broadcast adres denir. Broadcast adresinin uç bölümünün bütün bitleri ağ adresinin tersine 1’dir.” Bu adresler de ağ adresi gibi ağdaki herhangi bir bilgisayara IP adresi olarak atanamazlar.

 

Network ID (Ağ Adresi) Nasıl bulunur?

Ağ adresi konusu biz sistemcilerin ve özellikle network işi ile içli dışlı olanların bilmesi gereken olmazsa olmaz bir konudur. Bir ip adresinin ağ adresini bulabilmek için; o ip adresi ile kendi Ağ Maskesinin (Subnet Mask) “And / Ve”  işlemine tabi tutulması gerekmektedir. IP adresi ve Subnet mask ikilik sayı sistemine çevrilerek alt alta yazılır, her iki taraftada ‘1’ bit değerine sahip bölümler aynen (yani 1 olarak) aktarılır, diğerleri ise 0(sıfır) olarak değerlendirilir. Bir örnek verecek olursak;

 

Ip Address:       132.15.78.202 10000100 00001111 01001110 11001010
Subnet Mask: 255.255.0.0 11111111 11111111 00000000 00000000
Network ID: 132.15.0.0 10000100 00001111 00000000 00000000
Broadcast Address:  132.15.255.255 10000100 00001111 11111111 11111111

 

Network ID Karşımıza nerede çıkar?

Burada yazacağım örnekleri incelediğinizde Ağ adresinin nerede ve nasıl karşınıza bekçi gibi dikileceğini anlamış olacağınızı düşünüyorum. Ancak burada ikilik sayı sistemini kullanmayacağım, ben örneklerimi onluk sayı sisteminde anlatacağım.

 

Örnek-1: 192.168.10.17 ip adresine sahip bir terminal, yine kendi yerel ağında bulunan 192.168.10.18 ip adresli bir terminale erişmek istesin ve  her ikisinin de  Ağ Maskesi: 255.255.255.240 olsun.

 

Ağ adreslerine bakalım;

 

Client1 IP Adress 192.168.10.17
Subnet Mask: 255.255.255.240
Network ID: 192.168.10.16

 

Client2 IP Adress 192.168.10.18
Subnet Mask: 255.255.255.240
Network ID: 192.168.10.16

 

.17 ve .18 IP adreslerine sahip bilgisayarların aynı yerel ağ içinde konumlandırıldığını hatırlayalım. Yukarıdaki tabloda And  işlemlerinde gördüğünüz gibi ağ adresleri aynıdır.

.17 olan pc, .18 e ulaşmak istediği zaman .18’ in bulunduğu ağ adresini hesaplar ve görür ki ağ adresleri aynıdır. Sonra şunu der; “Hımm… demek bu bilgisayar ile ben aynı yerel ağ(LAN) içerisindeyim

(Local Area Network: LAN), o halde ağ geçidine gidip bu ip nin yerini sormaya gerek yok.”

 

Sonuç: Haberleşme sağlanır, çünkü aynı ağ adresine sahipler.

 

 

Örnek-2:

Bu defa, farklı yerel ağlarda bulunan 192.168.10.17 ip adresine sahip bilgisayar 192.168.10.33 ip adresine sahip bilgisayara ulaşmak istesin ve Subnet Mask yine 255.255.255.240 olsun;

 

Ağ adreslerine bakalım;

 

Client1 IP Adress 192.168.10.17
Subnet Mask: 255.255.255.240
Network ID: 192.168.10.16

 

Client1 IP Adress 192.168.10.33
Subnet Mask: 255.255.255.240
Network ID: 192.168.10.32

(.17 ip adresli PC, .33 e ulaşmak istediği zaman .33 ü ve kendi ağ maskesini And işlemine tabi tutarak 33 ip’li PC nin hangi ağ adresinde olduğunu çözecek.)

 

.17 ip adresine sahip terminal, .33 ip adresine sahip olan terminalin ağ adresini hesapladı (192.168.10.32) ve bu Ağ adresi ile kendi Ağ Adresinin aynı olmadığını gördü, “Hımm, demek bu benim yerel ağda değil, o halde ben ağ geçidine gidip bir sorayım” der…  Ve Router da (ağ geçidi) 192.168.10.17 ip adresine sahip bilgisayarı 192.168.10.33 e götürür ve böylece haberleşme sağlanır.

 

Router bu iyiliği neden yaptı? Zira, görevi bu yönlendirmeyi yapmaktır. Adı üzerinde Router: Yönlendirici.

 

Dikkat: Demek ki Router, Ağ Adresi aynı olunca bir görev üstlenmiyor ama ağ adresleri farklı olunca görev alıyor.

 

Örnek-3: Yine, farklı yerel ağlarda bulunan 192.168.10.17 ip adresine sahip bilgisayar, 192.168.10.33 ip adresine sahip bilgisayara ulaşmak istesin, fakat bu kez Ağ Maskeleri 255.255.255.0 olsun!

 

Ağ adreslerine bakalım;

 

Client1 IP Adress 192.168.10.17
Subnet Mask: 255.255.255.0
Network ID: 192.168.10.0

 

Client2 IP Adress 192.168.10.33
Subnet Mask: 255.255.255.0
Network ID: 192.168.10.0

 

192.168.10.17 li ip 192.168.10.33 e ulaşmak istedi ve 192.168.10.33 ün Ağ Adresini hesapladı, baktı ki Ağ Adresleri aynı, “Demek ki bu benim ile aynı LAN içerisinde yer alıyor.”

Ama nafile, çünkü bu adresler farklı LAN larda bulunuyorlar.

192.168.10.17 li bilgisayar .33 ip li bilgisayarı aradı taradı bulamadı, Router’a da gidip sormuyor!

 

Sonuç: iletişim sağlanamadı.

 

Yani sen iletişim kurmak istiyor musun, istemiyor musun, kararını verip ağ maskeni yazıyorsun.

 

Yukarıdaki açıklamalardan sonra Subneting konusuna geçiş yapabiliriz;

Bilgi:

‘/24’ değeri; Subnet Mask’ın sahip olduğu mevcut “1” sayısını ifade eder.

2^n: “iki üzeri n” diye okunur.

>= : “Büyük eşit” diye okunur.

 

*  “2^n-2>=Alt ağ sayısı”  formulü ile n değeri bulunur. Bu n değeri, alt ağ bitini verecektir, yani burada bulunan değer öngörülen Subnet Mask’a eklenecek olan 1 lerin kaç tane olduğunu ifade eder.

Ekleme yapıldıktan sonra bulunan Subnet Mask, yeni Subnet Mask olacaktır.

(Yeni Subnet Mask: Eski Subnet Mask + n ) |n:network, m: machine|

*  2^m-2  formulü ile bir aralığa atanabilecek ip sayısı bulunur, m değeri oktette kalan 0 sayısı kadardır. [m = host sayısı(uç bit)]

Örnek4:

192.168.0.0/24 ip aralığını 2 subnet (alt ağ) olacak şekilde ayıralım.

2^n -2 >=2 [subnet(alt ağ) sayısı] formulü ile n değerini 2 olarak buluruz.

2^2=4  ==> Mecburen 4 subnet’ e bölmemiz gerekir.

N değeri artan bit değeridir. Yukarıdaki ip adresi C sınıfı bir ip adresi olduğundan öngörülen Ağ maskesi hesaplamadan önce:255.255.255.0 olacaktır.

Yeni(ortak) subnet mask: 255.255.255.11000000 (192) şeklinde olacaktır.

Bu durumda m:6 olacaktır. (8-n=>8-2=6) 2^6=toplam 64 ip (her alt ağ için)

 

Oktette kalan sıfır sayısı bize host id(m) yi verir, toplam 6 sıfır vardır ve bu durumda

2^6-2=62 (2^m-2) tane ip atanabilir.

 

X 1.Subnet 192.168.0.0 to 192.168.0.63
   2.Subnet 192.168.0.64 to 192.168.0.127
   3.Subnet 192.168.0.128 to 192.168.0.191
X 4.Subnet 192.168.0.192 to 192.168.0.255

 

2.Subnet kullanılabilir ilk subettir.

192.168.0.64 ip si 2.Subnet’in Network ID sidir ve ip olarak bir cihaza atanamaz.

192.168.0.127 ip si 2. Subnet’in Broadcast adresidir ve ip olarak bir cihaza atanamaz.

 

3.Subnet ise kullanılabilir son subnettir.

3.Subnet için Network ID: 192.168.0.128 and Broadcast Address: 192.168.0.191

 

Farklı kaynaklarda 2^n -2 formulü yerine 2^n formülünün kullanıldığını görebilirsiniz, ancak bu formüllerden bir tanesi yanlıştır denilemez.

 

Cisco’nun IOS-12 öncesi cihazlarında desteklenmediğinden dolayı 1.Subnet ve 4.Subnet kullanılamaz subnetlerdir. Her ne kadar IOS-12 ve sonrası sürümlerde bu subnetler kullanılabilir olsalar da, Cisconun 2008 eğitim dökümanlarına ve sınavlarına bakıldığında halen 2^n-2 formülünün esas alındığı görülmektedir. Bu nedenden ötürü makalemde hesaplama yapmayı uygun gördüm.

 

Örnek5:

172.17.128.255/18 adresinin sahip olduğu network id ve broadcast adresini bulalım;

Yukarıdaki ip adresi B sınıfı bir ip adresidir ve default ağ maskesi 255.255.0.0 dır. Ağ maskesinde iki tane 255, 8 + 8 =16 tane “1” değerine sahip olmak anlamına gelir. Yukarıdaki /18 değerinden 16 yı çıkardığınızda 2 bitin fazladan eklendiğini görürsünüz ki bu da yukarıdaki örneklerden hatırlayacağınız gibi artan bit değeridir. N=2 => 2^2=4 subnet e bölerek network id ve broadcast adresini bulalım;

N:2 ise m=6 olur 2^6=64

X 1.Subnet 172.17.0.0 to 172.17.63.255
   2.Subnet 172.17.64.0 to 172.17.127.255
   3.Subnet 172.17.128.0 to 172.17.191.255
X 4.Subnet 172.17.192.0 to 172.17.255.255

Yukarıdaki tabloda 3.Subnet e dikkat edecek olursanız 172.17.128.255 ip sinin 3.Subnet e ait olduğunu hemen görebilirsiniz. Bu durumda;

Sonuç: 172.17.128.255/18 için Network ID:172.17.128.0 – Broadcast Address: 172.17.191.255 olarak tespit edilir.

Subnet Mask: 255.255.192.0 dır.

 

Örnek6:

 

10.0.0.0/8 ip aralığı için 2 subnet oluşturalım.

2^n -2>=2 n=2 bit olarak bulunur.

255.192(11000000).0.0

m=6,  2^6=64

 

X 1.Subnet 10.0.0.0 to 10.63.255.255
   2.Subnet 10.64.0.0 to 10.127.255.255
   3.Subnet 10.128.0.0 to 10.191.255.255
X 4.Subnet 10.192.0.0 to 10.255.255.255

 

Başka bir makalede görüşmek üzere, hoşçakalın.

Mesut SARIYAR

 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
Alt Ağlara Bölme (Subnetting) için yorumlar kapalı  comments 
© Hakan Uzuner
credit