Network ( ağ ) konusu bilişim teknolojileri denince ilk akla gelen konudur. Ben yazılarımı hazırlarken çapraz araştırmalara olabildiğince önem veriyorum ve sizler de bu blogdan olabildiğince istifade etmek istiyorsanız başlıkları çapraz araştırmaya ( aynı konuyu farklı kaynaklar ile incelemek ) alarak bilginizi kalıcı belleğinize işleyerek kendi fikirlerinizi üretebilirsiniz.
Ağ( Network ) Nedir?
En az iki cihazın iletişim kurmak için birbirleriyle oluşturdukları bağlantıdır.
Host Nedir?
Ağ bağlantısına dahil olup, veri alan ve veri dağıtan aygıtların genel adıdır. Buna tablet, telefon, kişisel bilgisayar, smartTV, IoT cihazlar, sunucu bilgisayarlar ve daha fazlası dahil olabilir.
İstemci ( Client ) ve Sunucu ( Server )
Hostların ağda büründüğü iki ayrı roldür. İletişim günlük hayatta karşılıklıdır ve siz konuşurken karşı taraf dinler. Bu karşılıklı şekilde sürer. Networkte de aslında talepte bulunma ve talebi karşılama durumu mevcuttur. İstemci ( client ) doğru adresten doğru isteği yapar. Buna bir websiteye girmek örnek verilebilir. Aslında siz talep eden noktasında bulunmaktasınız. Bu talebinizi yerine getirmek için doğru biçimde yazılımsal ve donanımsal olarak yapılandırılan sunucu ( server ) genelde günün 24 saati hizmet etmeye hazır şekilde bekler.
Burada biçilen roller tek yönlü değildir. İstemciniz belli durumlarda sunucu, sunucunuz belli durumlarda istemci olabilir. Örneğin sunucu görevi gören webserverınız, updateler için update serverdan istekte bulunması gereken şekilde yapılandırılmış olabilir. Bu durumda webserver sunucu değil istemci durumuna düşecektir. Yani sunucu kaynak görevi görse de kendi yapısı yerine başka yerlerden de kaynak alarak sunucu görevini yerine getirebilir.
LAN ( Local Area Network )
Daha küçük ve dışa kapalı bir ağ yapısıdır. Adı gereği bölgesel olarak belli bir noktayı kapsar. Yani lokaldir. Evimizdeki modeme bağlı cihazlar da aslında local bir ağ yaratmamızı sağlar. Kablo veya kablosuz teknolojilerle modeme bağlanan her cihaz local ağın bir parçasıdır. Local ağınızı modem arayüzünüzden keşfedebilirsiniz. Bu genellikle Gateway adresinize karşılık gelmektedir. Modemimiz dışarıyla olan iletişim gibi iç iletişimimizi de sağlamaktadır. Bütün cihazlarınızı yazıcıya bağlamak zahmeti yerine switch veya modeminiz ile tüm cihazları karmaşadan kurtararak bağlayabilirsiniz. Buna depolama birimleri de eklenebilir.
Haricen günlük hayatımızda ofisler, resmi veya tüzel kuruluşlar da kendi local ağlarını yaratırlar.
WAN ( Wide Area Network )
Local ağların birbirleri ile bağlantı kolu oluşturup iletişime geçmesidir. Türkiye’ de ilk örneği ODTÜ ve Bilkent Üniversitesinin arasına kablo çekilerek local bağlantılarını daha da genişletmesi örnek verilebilir. Bu sayede iki üniversite birbirinin kaynaklarından kolaylıkla istifade edebildi ve aradaki iletişim hızlandırıldı.
Kısaca LAN bağlantılarının birleştirilmesidir.
İnternet
WAN ağının da birleşerek tüm dünyayı kapsayan tarafıdır. Kendine ait bir protokol yapısı vardır. Bazı devletler siyasi çıkarları veya başka gerekçelerle internet ağını kısıtlayabilir veya kesebilir. Günümüzde internet ağına birçok yolla dahil olunabilmektedir. Aynı zamanda bir lüks olmaktan çıkıp ihtiyaç düzeyine kadar ilerlemiştir.
IP Adresi
Bu aslında hem local hem internet için varolan bir kavram diyebiliriz. Cihazları dahil olduğu ağdaki benzersiz numaralarıdır. Örnek olarak genellikle vatandaşlık numaramız verilir. Vatandaşı olduğunuz ülke size benzersiz ve size özel bir numara verir ve sistemler sizi bu numara ile tanır. Dahil olduğumuz ağda da aslında bize IP numarası verilir ve sistem bizi bununla tanır. Ağdaki her cihaz bir IP numarası alır ve bu numara ile iletişime geçer. Hedef ve kaynak olarak iki ayrı sınıf ile alıcı ve kaynağı belirleyerek iletişime adım atar.
Örneğin benim networke bağlı telefonumun ip numarasının x.x.x.x olduğunu varsayalım ve girmek istediğim websiteyi sunun cihazın ip numarası y.y.y.y olsun. Biz y.y.y.y adresine istek atarken aynı zamanda kaynak olarak ekstra adresimiz olan x.x.x.x adresini belirtiriz. İsteği alan cihaz ise bu gelen istek içerisindeki kaynak bilgisine gereken paketleri yollar ve yine kendi kaynak adresini de belirtir.
IP Adresi Nasıl Tanımlanır?
Bilgisayarlar işlemcilerimiz mimarisi gereği ikilik ( binary ) sistem kullanılmaktadır.
İLK DEĞER : 00000000 . 00000000 . 00000000 . 00000000
SON DEĞER : 11111111 . 11111111 . 11111111 . 11111111
Yukarıdaki ilk ve son değerler IP bant genişliğini bize göstermektedir. Yapısını incelediğimizde 32 tane sıfır veya bir rakamlarını göreceğiz. Her birinin bir bit karşılığına geldiğini düşünürsek bir IP numarası 32 bit olduğunu göreceğiz. Nokta ile ayrılmış her öbek ise 8 tane bit içerir ve buna matematikte oktet denilmektedir. Yani IP numarası 4 oktetten oluşmaktadır.
Fakat günlük hayatta ikilik sistem insanın okuması nispeten zor geldiği için ondalık sistem kullanılır.
Ondalık Gösterimin Hesaplanması
İkilik sayı sisteminin ondalıklı sayıya dönüşmesi için bir matematiksel hesap mevcuttur.
Bu örnekte olduğu gibi her basamaktaki rakam, 2 nin kuvveti ile çarpılmakta ve en sonunda bulunan her sayı toplanır. Bu sayı da ondalıklı sayıya karşılık gelmektedir. İlk basamak ondalıklı sayılardaki çarpanlara ayırma gibi sıfır üssü ile başlamaktadır. Yukarıdaki binary düzende 8 sıfırın karşılığı ondalıklı düzende tek 0 ile eşdeğerdir. Bu örnek IP numarasının bit oktedine karşılık gelmektedir.
Aşağıda ise farklı bir örnek mevcuttur.
Bu örnekte ise aynı şekilde hesaplandı ve her basamaktan çıkan sonuçlar toplanınca 255 sonucuna ulaşıldı. Bu da gösteriyor ki bir binary oktet en fazla ondalık karşılığı ile 255 değerine ulaşabilir.
Yani IP uzayımız ondalıklı ve günlük hayatta kullandığımız karşılığı 0.0.0.0 ile başlarken 255.255.255.255 ile son bulmaktadır.
Buradan bir hesap yaparak dünyada kaç IP adresinin var olabileceğini aşağıda hesaplayabiliriz.
Her basamak 2 üzeri 8 ile hesaplanıp 4 üssü alınınca sonuç 2 üzeri 32 geldi ve bu yaklaşık 4.3 miyar gibi bir cihaz sayısı demek oluyor. Fakat günümüzde internete bağlı cihaz sayısı bu sayının çok üzerindedir. Bu sebeple bunu fark eden teknoloji geliştiricileri alt ağlar geliştirmeye karşılık gelen ” IP SUBNETTİNG “ adında bir gelişimi ortaya koymuştur.
Kısaca IP Subnetting
4.3 milyara yakın adres sayısının dünyadaki cihaz sayısı için az olduğunu bahsetmiştik. Bu sebeple bir IP adresini farklı bir biçimde kullanma yaklaşımı gelişmiştir. Bu yaklaşımda ise bir cihazın IP numarası hem bağlı olduğu networkü hem de cihazın sıra numarası yani host numarasını temsil etmektedir.
Bu örnekteki gibi X ve Y local networklerin IP adresleri yerel networkün adresini ve kaçıncı katılımcı olduklarını bize göstermektedir.
Burada daha ileri konuları kapsayan ifadeler olduğu için kafa karışıklığı yaşamamanız için anlaşılması gereken kısım IP adreslerinin ifade ettiği şeyin sadece bir cihaz numarası olmak yerine ekstra içinde bulunduğu network hakkında bilgi de vermesidir. Burada bu sebeple network ve host ayrımı yapılır ve IP bu iki değeri bize verir.
IP Numarasında Network ve Host Ayrımı
Bu ayrımdan önce bizim ” subnet mask ” adındaki alt ağ maskesine bakılır.
Yukarıdaki örnekte subnet mask değeri olarak 255 ler ve 0 ler verildiği görülmektedir. 255 basamakları network adresini temsil ederken 0 basamağı cihazın hostname bilgisini vermektedir.
Altta da bu ayrım ile 192.168.1 değeri network bilgisini verirken, 21 değeri networkteki cihaz numaramızı temsil eder. Yani 192.168.1 networkündeki 10 numaralı cihaza karşılık gelmektedir.
Aşağıdaki görselde daha da IP adres aralığını irdeledik.
Host değeri tamamen 0 olan koltuk ağ adresini tanımlar ve ona aittir. Host değerinin alabileceği son değer olan 255 ise ileride göreceğimiz ARP (Address Resolution Protocol) konusunda inceleyeceğiz.
Bu örnekte 254 tane hosta ev sahipliği yapılabildiğini görmekteyiz. Fakat ofis, şirket gibi kurumlarda birim ve personel sayısı fazla olacağı için yapılması gereken şey daha fazla hosta ev sahibi yapabilmek için daha üst teknolojiler kullanmasıdır. Aşağıdaki örnekte 65536 ve 16777214 hosta ev sahipliği yapabilen örnekleri inceleyelim.
Çok karmaşık gözükse de yukarıdaki örnek ile farklı subnet değeridir. İlk örnekte subnet mask değeri 255.255.0.0 iken ikinci örnekte 255.0.0.0 dır. aslında host değeri için ekstra yer açıldığını görüyoruz.
Subnet mask değerini kısa şekli ile de gösterebiliriz. Bunun için IP adresini tekrar oktet değerine dönüştürüp sonrasında kaç tane bir olduğunu bulabiliriz. Aşağıdaki görsel ile daha iyi anlayabiliriz.
Yukarıda subnet mask değeri binary sisteme çevirildi ve bütün 1 değerlerinin toplamı alındı. Bu sonuç ise bize subret mask değerinin kısaltmasını verir ve bunu ip numarasının yanına ” /sonuç ” olarak yazabiliriz. Buna prefix değeri denir.
255.255.255.0 = 8
255.255.0.0 = 16
255.0.0.0 = 24
0.0.0.0 = 36
Yukarıdaki örnekte genellikle kullanılan alt ağ modellerini tek tek belirttik fakat kişi bu aralıklar yerine daha özel bir model isteyebilir. Aşağıdaki örneği inceleyebiliriz.
Örneğimizde 26 prefix değeri verilmiş ve son oktet de network bilgilendirilmesi için kullanılmıştır. Buradan bakacak olursak 2 üzeri 6 ile 64 değerini buluruz ve 2 tanesi zaten sistemin çalışması için gerektiğinden toplada 62 host sağlamaktadır. Eğer anlamakta zorlandıysanız ” subnetmask calc ” olarak aratarak hesaplama aracını kullanabilirsiniz.
Genel ve Özel IP Adresi
Daha önceki başlıklarımızda internet ve LAN hakkında bahsettik. Genellikle lokal IP adresimiz ve internet IP adresimiz farklılık göstermektedir. Bunun sebebini de aslında güncel ip stoğunun yetmemesi ve alt ağlar sayesinde yerel ağ yönetiminde kolaylık olduğunu söyleyebiliriz. İnternet IP adresimiz internete doğrudan açılırken lokal ip adresimiz internete açılabilmek için NAT (Network Address Translation) anlayışını kullanarak bir dizi çeviri yaparak ona internete açılması ve diğer paketlerle karışmaması için gereken işlemleri sağlar.
Özel IP adresiniz lokal bağlantınızın benzersiz adresi iken, genel IP adresiniz ise dünya üzerindeki ( internet ) benzersizdir.
Yukarıdaki 4 cihaz evdeki router sayesinde global networke ulaşmaktadır. Local adresimizi yöneten ve bizi dışarı açan bu cihaz aslında hem içeri hem dışarı için birçok işlemi yöneten çok fonksiyonlu yönünüyle ön plana çıkar.
IP değerleri ve Subnet Mask Değeri Bulma
Şu an Nişantaşı Üniversitesinin ağındayım ve bu ağ üzerindeki bilgilerimi inceleyelim.
Bilgisayarınızın terminal bölümüne “ifconfig” komutunu girerek belli çıktılar alacaksınız. Yukarıdaki değer benim bulunduğum üniversitenin ağındaki yerimi bana göstermektedir. Localdeki IP adresimin 10.76.242.189 olduğunu görünüyor. Subnet mask değerim ise 0xffff8000 gibi bir değer gözüküyor. Bunun sebeb ise ifadenin onaltılık sisteme çevrilmesidir. Onluk sisteme çevirince 255.255.128.0 gibi bir değere karşılık geldiğini görmekteyiz. Yani prefix ile karşılığı “10.76.242.189/17” olararak görebiliriz.
Buradan networke toplamda 32766 host dahil olabileceğini görüyoruz. Bu bir üniversite oluduğu için sayı biraz yüksek.
IPv4 ve IPv6
Şu ana kadar gördüğümüz 32 bit uzunluğundaki IP adresleri aslında IPv4 olarak geçmektedir. İleride IPv4 teknolojisinin yetersiz kalacağını düşünenler IPv6 teknolojisini varolan teknoloji ile uyumlu şekilde geliştirerek bitirilmesi imkansız IP havuzu olabileceğini ispatladılar. Bu sayede NAT gibi durumlara ihtiyaç kalmayacaktır. Aşağıda farkları kısaca tablo olarak verilmiştir.