Subnet’leme Temelleri
Subnet’leme network’ün en önemli konularından biridir. Aslında subnet’leme dediğimiz şey bir network adresini alıp küçük adres gruplarına bölünmesi işlemidir.
Nasıl yapıldığına geçmeden önce neden subnet’leme kullandığımızdan ve avantajalarından bahsetmek istiyorum. İlk avantajı düşük network trafiğidir. Düşük bir trafik her türünden network’çülerin memnuniyet duyduğu bir olaydır. Subnet’leme sayesinde trafiğin çoğu lokal ağda kalacaktık ve sadece farklı networklere ulaşmak isteyen paketler router üzerinden geçecektir. Router’lar herbir subnet’e broadcast adresleri oluştururlar ve ne kadar çok broadcast adresi oluşursa her network segment’inde daha az trafik oluşur. İkinci etmen optimize bir performanstır ve bu performans ilk madde’deki düşük trafiğin bir neticesidir. Üçüncü etmen yönetiminin basit olmasıdır. Çünkü hata oluşması sonucunda küçük networklerdeki hataları bulup çözüm üretmek büyük ölçekli networklere göre daha kolaydır. Avantajlarından yeterinde bahsettiğime göre artık işe koyulalım ve nasıl yapıldığı kısmına gelelim. Subnet’leme yapmanın temel mantığı ip adresinin host kısmından bit alırız ve subnet tanımlamak için bitleri rezerve ederiz. Bunu yaparken unutulmaması gereken nokta bitleri hostdan aldığımızın için ne kadar çok bölme işlemi yaparsak o subnet’de o kadar az hosta sahip olacağımızdır.
Subnet Mask’lar
Subnet’leme yapmadan önce subnet mask’ların ne olduğundan bahsetmeliyim. Kısaca açıklamak gerekirse subnet mask ip adresinin host bölümünden, ip adresinin network bölümünün ayırt edilmesinini sağlayan 32 bit’lik bir değerdir. Network yöneticileri temeli 0 ve 1’e dayanan subnet maskları tanımlarlar. Bu subnet mask’daki 1 ler subnet ve host kısmını işaret eden konumları belirtir. Fakat tüm ağlar subnet’lere ihtiyaç duymaz onların varsayılan subnet mask’ları vardır. A,B ve C sınıfı iplerin subnet mask’ları aşağıda belirttiğim gibidir.
(N=network kısmı, H=host kısmı)
Sınıf | Format | Varsayılan Subnet Mask |
A | N.H.H.H | 255.0.0.0 |
B | N.N.H.H | 255.255.0.0 |
C | N.N.N.H | 255.255.255.0 |
Bu varsayılan mask değerleri değiştirelemez. Başka bir değişle A sınıfı bir ip nin subnet mask’ı 255.255.0.0 şekilde değiştiremezsiniz. Bir B sınıfı ip 255.255.0.0’la bir C sınıfı ip 255.255.255.0 la başlamak zorundadır.
Classless Inter-Domain Routing(CIDR)
Çok iyi bilinmesi gereken bir terim. ISP’lerin(İnternet Servis Sağlayıcı’lar) bir kullanıcı yada şirkete adres ayırmak için kullandıkları yöntemdir. ISP’den tam blok adres alındığında şu şekilde olacaktır : 192.168.100.32/28. Bu size subnet mask’ın ne oluduğunu söyler. Slaş (/) gösterimi subnet mask’taki kaç bitin 1 olduğunu gösterir. Örneğin B sınıfı bir ip de /16 yani ilk 16 bitin 1 olduğu anlamına gelir (11111111.11111111 = 255.255) A sınıfı bir ip ise /8 ile ifade edilir yani ilk 8 bit 1 dir.
11111111.00000000.00000000.00000000
255.0.0.0
Bütün subnet mask’lar ve onların CIDR degerleri aşağıda belittiğim gibidir.
Subnet mask | CIDR |
255.0.0.0 | /8 |
255.128.0.0 | /9 |
255.192.0.0 | /10 |
255.224.0.0 | /11 |
255.240.0.0 | /12 |
255.248.0.0 | /13 |
255.252.0.0 | /14 |
255.254.0.0 | /15 |
255.255.0.0 | /16 |
255.255.128.0 | /17 |
255.255.192.0 | /18 |
255.255.224.0 | /19 |
255.255.240.0 | /20 |
255.255.248.0 | /21 |
255.255.252.0 | /22 |
255.255.254.0 | /23 |
255.255.255.0 | /24 |
255.255.255.128 | /25 |
255.255.255.192 | /26 |
255.255.255.224 | /27 |
255.255.255.240 | /28 |
255.255.255.248 | /29 |
255.255.255.252 | /30 |
/8 den /15’e kadar A sınıfı, /16 dan /23’e kadar A sınıfı ve B sınıfı, /24 den /30’a kadar A sınıfı, B sınıfı ve C sınıfı network adresleri tarafından kullanılabilir.
Adreslerin Subnet’lenmesi
Subnet’leme işlemi için kullanılan bir çok yöntem vardır. Size bu yöntemlerden bana en basit geleni anlatmak istiyorum. Bu örneğimiz için C sınıfı bir ip adresi seçtim. Öncelikle subnet bitlerinin soldan başlayıp sağa doğru ilerlediğini anımsayın C sınıfının subnet mask’ı ancak şunlar olabilir:
00000000 = 0 | /24 |
10000000 = 128 | /25 |
11000000 = 192 | /26 |
11100000 = 224 | /27 |
11110000 = 240 | /28 |
11111000 = 248 | /29 |
11111100 = 252 | /30 |
Not: En az iki host adresine sahip olmamız gerektiğinden /31 ve /32 yi kullanamayız.
Şimdi subnet yaparken cevaplamamız gerek 5 adet soru vardır.
- Seçili subnet mask kaç adet subnet oluşturur.
- Her subnet için kaç geçerli host vardır.
- Geçerli subnet’ler nelerdir.
- Her subnet’in broadcast adresi nedir.
- Subnet’lerdeki geçerli hostlar nelerdir.
- 2n =Subnet sayısıdır. N mask’lanmış bitlerin yani 1 lerin sayısıdır. Örnek olarak 11000000’ da 1 lerin sayısı bize 22=4 sonucunu verir. Bu örnekde 4 adet subnet vardır.
- 2m-2 = subnet için ayrılan host sayısıdır. M mask’lanmamış bitlerin yani 0 ların sayısıdır. Yani aynı örnek üzeriden gidersek 11000000’da 0 ların sayısı 26-2 = 62. Bu örnekte her subnet için 62 adet host vardır.
NOT:Broadcast adresi ve subnet adresi için 2 yi çıkarmamız gerek bunlar geçerli degildir
- 256-subnet mask = blok boyutu. Verdiğimiz örnek üzerinden devam edecek olursak 256-192 = 64 (11000000 =192 dir) 64 bizim artırım sayımızdır. 0 dan başlayarak subnet mask’a ulaşana kadar artırım boyutu ile saymaya başlayın 0, 64, 128, 192.İşte geçerli subnetlerimiz.
- Broadcast adresini bulmak gerçekten kolaydır. Broadcast adresi daima bir sonraki subnet adresinin bir önceki sayısıdır. Yani 0 subnetinin broadcast adresi kendisininden bir sonra gelen 64 subnet’inin 1 eksiği olan 63 dür. Bir sonraki 64 subnet’ininde broadcast adresi 127 dir. Unutulmaması gereken nokta daima son broadcast adresi 255 dir.
- Geçerli host kısmına gelecek olursak oldukça basit olduğunu söyleyebilirim. Geçerli host sayısı bir subnet’ten subnet adresi ve broadcast adresinin adresinin çıkarılmasıdır(Madde 2) yani 0-64 subnetinde 64-128 subnet’inde 64 ağ adresini ve 127 broadcast adresini çıkarmamız yeterlidir. Geriye kalan adresler hostlara dağıtıla bilir.
ÖRNEK
Son bir örnek yapıp yazımı burda bitirmeyi planlıyorum. 192.168.10.0/25 ağını subnet’leyeceğiz. Öncelikle /25 ‘in ne olduğunu hatılıyalım.
/25 = 255.255.255.128 dir.
Şimdi ise 5 soruya cevap verelim.
- Kaç subnet vardır? 128 sayısının binary gösterimi 10000000 olduğundan 2nformülüne 1 bitinin sayısını koyduğumuzda 21 = 2 degerini elde ederiz yani 2 adet subnetimiz varmış.
- Her bir subnet’te kaç adet kullanıcı vardır? 7 sıfırdan oluşan host biti’miz var (10000000), bu nedenle 27-2 =126 adet hostumuz vardır.
- Geçerli subnetler? 256 – 128 = 128. 0 dan başlayıp artırım sayısı kadar sayarsak elimizde 0 ve 128 subnetleri olduğunu görebiliriz.
- Her subnetinin broadcast adresi nedir? Her subnet’in broadcast adresi kendisinden sonra gelen subnet adresinin bir önceki adresidir. 0 subneti için broadcast adresi 127 dir.
- Geçerli hostlar nelerdir? Subnet ve broadcast adresi arasındaki numaralardır. Hosları bulmanın en kolay yolu broadcast ve subnet adresini yazmaktır. Aşağıdaki tabloda 0 ve 128 subnetlerinin aralıklarını belirlemek için kullanılabilir.
Subnet | 0 | 128 |
İlk host | 1 | 129 |
Son host | 126 | 254 |
Broadcast | 127 | 255 |