Geliştiriciler

Alt Ağ Maskesi Nasıl Hesaplanır? (Pratik Örnekle CIDR Açıklaması)

7 dk okuma

Bir CIDR önekinden alt ağ maskesi hesaplamak için 32 bitlik bir sayının solundan başlayarak önekteki kadar biti 1 yapın, kalanını 0 ile doldurun, sonra her 8 bitlik grubu ondalık sayıya çevirin. /24 öneki ilk 24 biti 1 yapar, bu da 255.255.255.0’a karşılık gelir.

CIDR sayısı aslında ne anlama gelir

IPv4 adresi 32 bittir ve ondalık gösterimde dört adet 8 bitlik grup (oktet) halinde yazılır. 192.168.1.0/24 gibi bir adresteki eğik çizgiden sonraki sayı, yani CIDR notasyonu, bu 32 bitin kaçının ağ kısmı olarak sabitlendiğini söyler. Geriye kalan bitler o ağdaki host’lara (cihazlara) aittir.

/24 ilk 24 biti sabitler, host’lar için 8 bit kalır. /26 ise 26 biti sabitler, geriye sadece 6 bit bırakır. Host için kalan bit sayısı azaldıkça o ağın barındırabileceği cihaz sayısı da azalır, ve bunun arkasındaki matematik dümdüz bir ikinin kuvvetidir: h host biti olan bir ağın toplam adres sayısı 2^h’dir.

Maskeyi elle hesaplamak: 192.168.1.0/24

CIDR önekini, yani 24’ü alın ve ilk 24 biti 1, son 8 biti 0 olan 32 bitlik bir sayı yazın:

11111111.11111111.11111111.00000000

Her 8 bitlik grubu ondalığa çevirin. Art arda sekiz tane 1, 255 eder, sekiz tane 0 ise 0’dır:

255 . 255 . 255 . 0

Alt ağ maskesi budur: 255.255.255.0. Ağ adresini bulmak için IP adresi ile maskeyi ikili düzende alt alta koyup bit bit VE (AND) işlemi uygulayın, sadece her iki girdide de 1 olan yerde 1 kalır:

Oktet 1Oktet 2Oktet 3Oktet 4
IP adresi11000000101010000000000100000000
Alt ağ maskesi11111111111111111111111100000000
Ağ (VE)11000000101010000000000100000000

Sonuç 192.168.1.0 ağ adresidir; bu örnekte orijinal adresin host kısmı zaten baştan sıfır olduğu için değişmeden kaldı. Yayın (broadcast) adresi tam tersi bir işlemle bulunur: ağ adresini alıp her host bitini 1 yaparsınız, bu da burada 192.168.1.255 verir. Aradaki her şey, yani 192.168.1.1 ile 192.168.1.254 arası, kullanılabilir bir host adresidir. Bu blokta toplam 256 adres var, bunlardan 2 tanesi (ağ adresi ve yayın adresi) ayrılmış olduğu için 254 kullanılabilir host kalır.

Bir /24’ü dört /26 alt ağına bölmek

Elinizde 192.168.1.0/24 olduğunu ve bunu ofisin her katına bir tane düşecek şekilde dört ayrı, daha küçük ağa bölmeniz gerektiğini varsayalım. /24’ten /26’ya geçmek ağ kısmı için 2 ek bit ödünç alır (26 − 24 = 2), ve ödünç alınan 2 bit her zaman 2^2 = 4 eşit alt ağ üretir. Her /26 alt ağında 32 − 26 = 6 host biti kalır, dolayısıyla her biri 2^6 = 64 toplam adres barındırır, bunların 62’si kullanılabilir.

Alt ağAğ adresiKullanılabilir aralıkYayın
1192.168.1.0/26192.168.1.1192.168.1.62192.168.1.63
2192.168.1.64/26192.168.1.65192.168.1.126192.168.1.127
3192.168.1.128/26192.168.1.129192.168.1.190192.168.1.191
4192.168.1.192/26192.168.1.193192.168.1.254192.168.1.255

Her ağ adresinin 64’er 64’er, yani blok boyutu kadar atladığına ve her alt ağın yayın adresinin bir sonraki alt ağın ağ adresinden tam olarak bir eksik olduğuna dikkat edin. Bu düzen hangi öneke bölerseniz bölün geçerlidir: blok boyutu her zaman 2^h’dir (h, kalan host bit sayısıdır), ve alt ağlar adres alanını boşluk veya çakışma bırakmadan döşer.

CIDR - alt ağ maskesi referans tablosu

Karşınıza çıkma ihtimali yüksek öneklerin, tek bir host rotası olan /32’den /8 bloğuna kadar özet tablosu:

CIDRAlt ağ maskesiToplam adresKullanılabilir host
/8255.0.0.016.777.21616.777.214
/16255.255.0.065.53665.534
/24255.255.255.0256254
/25255.255.255.128128126
/26255.255.255.1926462
/27255.255.255.2243230
/28255.255.255.2401614
/29255.255.255.24886
/30255.255.255.25242
/31255.255.255.25422 (noktadan noktaya)
/32255.255.255.25511 (host rotası)

Kendi adresinizle hesaplayın

Aşağıya herhangi bir IPv4 adresi ile CIDR öneki veya maske yazın; ayrıntılı döküm, ağ adresi, yayın adresi, kullanılabilir aralık ve ikili düzendeki maske siz yazdıkça anında güncellenir.

IPv4 Alt Ağ Hesaplayıcı (CIDR)
Ücretsiz, kayıt yok, her cihazda çalışır.
Tam aracı aç

Sık yapılan hatalar ve özel durumlar

Ağ ve yayın adreslerinin kullanılabilir host olmadığını unutmak. Bir /24’te toplam 256 adres vardır ama bunlardan sadece 254’ünü bir cihaza atayabilirsiniz. Kapasite planlamasını kullanılabilir sayı yerine toplam adres sayısına göre yapmak yaygın bir birlik hatasıdır (off-by-one), ve bu yüzden beklenenden iki adres önce yer biter.

/31 ve /32’yi diğer öneklerle aynı kefeye koymak. RFC 3021, noktadan noktaya bağlantılar için /31’i özel bir durum sayar: çiftteki iki adresin ikisi de kullanılabilir, çünkü 2 adreslik bir blokta yayın adresine ayıracak yer yoktur. /32 ise tek başına bir adrestir, en sık host rotası veya loopback adresi olarak görülür, ve çıkarılacak bir ağ ya da yayın adresi bile yoktur.

Alt ağ maskesi ile joker (wildcard) maskeyi karıştırmak. Alt ağ maskesi ağ bitlerini 1 ile işaretler, /24 için 255.255.255.0. Joker maske ise bunun bit bit tersidir ve host bitlerini 1 ile işaretler, aynı /24 için 0.0.0.255. Joker maskeler Cisco ve benzeri cihazlarda erişim kontrol listelerinde karşınıza çıkar; bir cihaz joker maske beklerken alt ağ maskesi yazmak (veya tersi) sessizce yanlış adres kümesini eşleştirir.

Her alt ağ maskesinin ardışık bir 1 dizisi olduğunu varsaymamak. 255.0.255.0 gibi bir maske ilk bakışta makul görünse de geçerli değildir: 1 bitleri soldan itibaren tek bir kesintisiz blok oluşturmaz, dolayısıyla bir CIDR öneki olarak hiç ifade edilemez. Gerçek alt ağ maskeleri her zaman baştan bir miktar 1 bit, ardından 0 bitlerden oluşur, başka bir kombinasyon geçerli değildir.

Sıkça sorulan sorular

Bir alt ağ maskesini tekrar CIDR önekine nasıl çeviririm? Maskedeki 1 bitlerini, soldan sağa ikili düzende sayın. 255.255.255.0, 11111111.11111111.11111111.00000000 demektir ve 24 tane 1 içerir, yani /24’tür. Bu yöntem yalnızca maske geçerli bir kesintisiz 1 dizisinin ardından 0 dizisiyle devam ettiğinde temiz çalışır; 255.0.255.0 gibi bir maskenin bitleri kesintisiz olmadığı için karşılığı olan bir CIDR öneki yoktur.

Alt ağ için bit ödünç almak neden her zaman ikinin kuvveti kadar alt ağ üretir? Host kısmından ödünç aldığınız her bit, o bitin alabileceği değer sayısını ikiye katlar, 0 ya da 1. 1 bit ödünç alırsanız 2 alt ağ, 2 bit alırsanız 4 alt ağ, 3 bit alırsanız 8 alt ağ elde edersiniz. Bir baytın (8 bit) 256 farklı değeri temsil edebilmesinin nedeni de aynıdır: her ek bit sayıyı ikiye katlar.

Alt ağ maskesi ile varsayılan ağ geçidi arasındaki fark nedir? Alt ağ maskesi bir cihaza IP adresinin hangi kısmının ağ, hangi kısmının host olduğunu söyler, böylece başka bir adresin kendi yerel ağında olup olmadığını anlayabilir. Varsayılan ağ geçidi ise ayrı bir ayardır: hedef adres kendi yerel ağında değilse cihazın trafiği gönderdiği yönlendiricinin IP adresidir. Bir cihazın kendi alt ağının dışına ulaşabilmesi için ikisinin de doğru yapılandırılmış olması gerekir.

Bir /24’ü 3 eşit olmayan ağa bölerek, mesela tam 3 parçaya ayırabilir miyim? Tam olarak 3 eşit parçaya, hayır, çünkü alt ağlara bölme her zaman bir bloğu ikinin kuvveti kadar parçaya böler. Bir /24’ü bölmek size 2, 4, 8, 16 gibi sayılar verir, asla 3 vermez. Pratikte bu, 3’e tam bölünmeye zorlamak yerine 4’e bölüp (2 bit ödünç alarak) bir /26’yı kullanmadan bırakmanız veya daha küçük bir departman için tekrar bölmeniz anlamına gelir.

Alt AğlarCIDRIPv4
IPv4 Alt Ağ Hesaplayıcı (CIDR)
Şimdi tam araçla kendin dene.
Şimdi dene