Bilgisayar Ağları V (Computer Networks V)

watch_later 4/23/2016
Dinamik Host Yapılandırma Protokolü (Dynamic Host Configuration Protocol (DHCP))
Sınırlı IP adresi sorununa bir çözüm yöntemi ise DHCP olarak adlandırılan yöntemdir. DHCP sisteminin temel özelliği bir cihazın İnternet'e bağlanabilmesi için gerekli olan IP adresi, alt ağ maskesi, ağ geçidi, DNS sunucu adresleri gibi bilgileri bir sunucuyla iletişime geçerek kullanıcının yerine otomatik olarak yapmasıdır. Bu hem kullanıcı hem de ağ yöneticisi için büyük bir kolaylık sağlar. Hem küçük hem de büyük ölçekli yerlerde sıklıkla kullanılmaktadır. IP adreslerinin kısıtlı bilinmektedir. Bu nedenle IP adresleri değerlidir ve eğer sürekli kullanılmayacaksa bir kişiye sürekli olarak ait olması da mantıksızdır. Daha etkin kullanım için geçici süreliğine bir cihaza tahsis edilir ve ihtiyacı sona erdiğinde başka bir cihaza tahsis edilir. Örneğin kablosuz ağ için belli sayıda IP adresi boş olarak tutulur. Kablosuz ağı sadece birkaç saat veya daha az kullanacak kişiler için IP adresini sürekli olarak vermek, adreslerin kısa sürede tükenmesine neden olur. Üstelik kullanıcıların bu ayarları her gittikleri ağda, o ağa özel olarak yapmaları ve eskilerini de unutmamaları gerekir ki tekrar geldiklerinde o ayarları girip bağlanabilsinler. Bunun hiç de pratik olmadığı çok açıktır. Bunun yerine kablosuz ağlar genelde sadece şifre sorar veya MAC adresi daha önceki kayıtlarında varsa o cihazı otomatik olarak ağına kabul eder. Daha sonra ağda bulunan DHCP sunucusu ile DHCP olarak ayarlanmış mobil kullanıcı arasında birkaç adımdan oluşan bir süreçle IP adresi bilgileri otomatik olarak ayarlanmış olur. Bu şekilde IP adresleri çok daha etkin kullanılmış olur ve kullanıcı açısından da her defasında ayarlama yapma zorunluluğu ortadan kalkar. En küçük örneği evlerde kullanılan ADSL modemlerdir. Modem bir DHCP sunucusu olarak davranır ve ev ağına bağlanan cihazlara şifreyi girdiklerinde gerekli tüm ayarları sağlar.


DHCP sisteminin çalışması şu adımlardan oluşur. İlk olarak, ağ kartı olan tüm cihazlar IP adreslerinden farklı olarak üzerlerinde MAC adresi denilen 12 karakter uzunluğunda hexadecimal yani 0'dan F'e kadar değer alabilen 16'lık sayı sisteminde bir adrese sahiptirler. Bu adres eşsizdir ve cihazın bağlı olduğu ağda temel iletişimini sağlamaya yarar. Fakat İnternet'e çıkmak için yeterli değildir. DHCP olarak ayarlanmış olan cihaz ağa bağlandığında henüz bir IP adresine sahip değildir. DHCP Discover denen istek paketini ağın tümüne yayınlar. Bu şekilde IP adresi olmadığını ve ağda bulunan DHCP sunucularını öğrenmek istediğini belirtmiş olur. Bu ağda bulunan DHCP sunucuları ise bu paket onlara ulaştığında, elindeki kullanılabilir IP adreslerine ve varsa şifre ve bunun gibi yetkilendirme koşullarına bakarak bu isteğe cevap paketi hazırlar. Bu pakete de DHCP Offer paketi denilir. Bu paket istemci cihaza ulaştığında, o da paketin ulaştığını ve bu adresi kiralamayı kabul ettiğini belirten DHCP Request paketini yollar. Sunucu da tekrar DHCP Acknowledgement denen onay paketini istemci cihaza gönderir ve IP adresini ona tahsis ettiğini onaylamış olur. Bu andan itibaren DHCP sunucusunun belirlediği ayarlar, sunucu tarafından belirlenen süre boyunca kullanıcıda kalır. Süre dolduğunda kullanıcı gerekirse yeniden adres talep eder.

DHCP Çalışma Simülasyonu

Ağ Adresi Çeviricisi (Network Address Translation (NAT))
NAT bir ağda bulunan bilgisayarın, kendi ağı dışında başka bir ağa veya İnternete çıkarken farklı bir IP adresi kullanabilmesi için geliştirilmiş bir İnternet protokolüdür. Yani NAT bilgisayarın sahip olduğu IP adresini istenilen başka bir adrese dönüştürür. Bilindiği gibi Ipv4'te her IP adresi kullanılabilir durumda değildir. Ipv4'te kullanılabilir durumda olan IP'lere bakıldığında yaklaşık olarak 3,2 milyar kadar IP bulunmaktadır.  Bu IP sürümünün yaratabileceği IP yetersizliği göz önüne alınarak NAT protokolü geliştirilmiştir. İnternette bazı adresler yerel ağlarda kullanılmak amacıyla özel adresler (private IP address) olarak ayrılmıştır. Bu özel adresler:
10.0.0.0/8 -> 10.0.0.0 - 10.255.255.255
172.16.0.0/12 -> 172.16.0.0. - 172.31.255.255
192.168.0.0/16 -> 192.168.0.0 - 192.168.255.255 arasındadır.
NAT Çalışma Simülasyonu
Dünya üzerinde birçok şirket ve kurum yerel ağlarında yukarıda verilen özel IP’leri kullanmakta, dış bağlantılarını ise NAT yapabilen uygun yönlendiriciler (router) kullanarak, IP adreslerini genel adreslere (public address) çevirerek sağlamaktadırlar.

Temel olarak bir NAT yönlendiricisi NAT tablosu adı verilen bir tablo yardımıyla IP çevirme işlemini gerçekleştirir. Kullanıcının bilgisayarında özel IP adresleri aralığından bir adres bulunur. Buradan yerel ağın içinde olmayan bir adrese gitmek için bir talep gelince, NAT yönlendiricisi daha önceden kullanıcının ayarladığı NAT tablosuna bakarak, özel IP adresini genel bir IP adresine çevirir ve bu şekilde dış ağlara ya da İnternete çıkılmış olur. Yönlendiricinin çeviri yaparak değiştirdiği bu IP, kullanıcının İnternetteki bilinen IP’sidir. Aynı şekilde dış ağlardan bu bilinen IP’ye doğru bir istek gelince, yönlendirici tablosuna bakarak bu IP’yi kullanıcın özel IP adresine yönlendirir ve paketi kullanıcının bilgisayarına gönderir.

İnternet Kontrol Mesaj Protokolü (Internet Control Message Protocol(ICMP))
TCP/IP protokol takımında, İnternet Protokolü (IP) bilgisayarlar arasında veya ağ geçitlerinde hata raporlama, hata düzeltme ya da durum bildirme yeteneklerine sahip değildir. Bağlantısız (connectionless) bir protokol olan IP Kullanıcı Datagram Protokolü(UDP) üstünden iki uç nokta arasında bağlantını kurulup kurulmadığıyla ilgilenmez. ICMP (Internet Control Message Protocol-İnternet Kontrol Mesaj Protokolü), İnternet Katmanında IP paketinin veri bölümünde çalışıp, sorunları haberleşen birimlere bildirerek bir geri besleme mekanizması oluşturur. ICMP genel olarak; TTL süresi dolduğu zaman paketin sahibine bildirim yapma, herhangi bir durumda yok edilen paket hakkında geribildirim sağlama, hata oluşumlarında geribildirim sağlama, paket başka bir yoldan gideceği zaman geribildirim sağlama gibi görevler üstlenir. Örneğin, sorun çözümü için sıkça kullanılan Ping ve Tracert komutları ICMP Echo Request ve ICMP Echo Reply mesajları ile çalışır.

ICMP Paket Yapısı
ICMP mesajları IP datagramının veri alanında taşınır. IP başlığındaki protokol alanı 1'e ayarlanarak ICMP'nin kullanıldığı gösterilir.
IP Başlığı
Tip Alanı: Mesaj tipini tanımlar(8 bit).
Kod Alanı: Hata veya durum bilgisi tipini tanımlar(8 bit).
Toplamsal Hata(Checksum): ICMP mesajının 16-bit'lik 1'e tümleyenini hesaplar(16 bit).
Parametreler: Parametrelerin daha uzun halinin belirlenmesinde kullanılır.
Bilgi: Mesajla ilgili bilgidir.
 
ICMP Tip Tablosu
IPv6 Nedir?
Internet'e bağlanan tüm cihazlar IP adresine ihtiyaç duyarlar. Ancak, Internet'in yaygınlaşması ve gelişen teknoloji sonrasında bu adresler hızlı bir şekilde tüketildi. Internet tarihinde, merkezi
havuzda kalan son IPv4 IP bloklarının dağıtımıyla kritik bir noktaya gelindi. Bu durumu öngören uzmanlar tarafından 1996'da  bir çözüm olarak sunulan IPv6, 340 trilyon kere trilyon kere trilyon adet farklı IP adresi sağlamaktadır.

IPv4 sistemlerine uyum sorunlarından dolayı IPv6'nın yaygınlaşması ve kabul görmesi şu an için yavaş görünse de, faydaları uzun vadede görülecektir. Çünkü, bundan sonraki gelişme ve genişleme, Internet protokolünün yeni nesil üretimi olan IPv6'nın başarısına dayalı duruma gelmiştir. Toplam 2128 adet IP adresi vardır. Bu da 340282366920938463463374607431768211456 adet IP adresi oluşturur.
IPv6 adresleri IPv4 adreslerinden daha karmaşıktır. IPv6 adresleri 16-bit yapıdan oluşmakta (IPv4 8-bit) ve 2001:98:A11:10:11:1:0:106 olarak ifade edilmektedir. Burada dikkat edilmesi gereken ise eğer birden fazla 0 varsa bunlar :: olarak belirtilir yani 2001:98::106 bu IP adresinin açılımı 2001:98:0:0:0:0:0:106 olur. 

Burada önemli olan ise birden fazla kolona izin verilmiyor. Yani 2001:98::1::1 olmaz. Nedeni de açık olarak kaç tane sıfır içerdiği belli değildir. IPv6 bloğu IPv4'teki CDIR notasyonunu(2001:98:0030::/48) kullanmaktadır. Bu aralık 2001:98:0030::'dan 2001:98:0030:ffff:ffff:ffff:ffff:ffff'a kadardır. Burada adreslemede dikkat edilmesi gereken nokta ise prefix olarak verilen değerin adres satırı ile uyumlu olması gerekliliğidir(2001:98:0030::/64). Çünkü ağ tarafında 2001:98:0030:0: bir sorun yok ama 2001:98:0030:1::/48 uyumsuzdur. Nedeni ise ağ tarafında 2001:98:0030: ağ tarafı tamam olmakla beraber :1:: satırındaki tümünün 0 olması gerekiyor.

2001:98:0030:1:0:a8:88de:1f/64 ifadesi ise bir adresi ifade eder. Bunun ait olduğu alt ağ ise 2001:98:0030:1::/64 olarak bulunur. Ayrıca doğrudan IP adresini kullanmak istersek (web adreslemesinde) '[ ]' kullanmak gerekecektir, yani http://[2001:98:0030:1::1]:80/. Burada amaç IP numarasının port numarası ile karışmamasını sağlamaktır.
IPv6 Adresleme
Unicast: Normal adreslerdir. Birebir görüşme için kullanılırlar.
Multicast: Grup adresleridir. Bu gruba üye olanların tamamı bu paketleri görür. IPv6'da broadcast paketleri yerine multicast kullanılmıştır. Bundan dolayı broadcast'in yaptığı tüm işleri multicast üstlenmiştir. Böylece CPU'dan tasarruf sağlanır.
Anycast: Multicast benzeri bir sistemdir. Buradaki fark ise bu sisteme dahil anycast adreslerinden sadece birine bilginin gönderilmesidir. Bu anycast grubuna dahil diğer kişiler bu paketi almazlar. Sadece en yakın adreste olan alır.

Buna göre 000 ile başlayanlar hariç tüm unicast adreslerinin arayüz IDleri 64-bit uzunluğunda olmalı ve Değiştirilmiş EUI-64 ile oluşturulmalıdır. Şu şekillerde IP atanabilir:
1. 2. seviye adresten elde edilebilir. Buna göre 7.seviye bit değeri 0 ise yerel tipinde, 1 ise genel tipinde bir adrestir.
2. RFC3041'e göre gelişigüzel bir IP ataması yapılabilir.
3. DHCPv6 ile IP adresi alınabilir.
4. Manuel olarak ayarlanabilir.
5. RFC3972'ye göre özel şifreleme yapısı ile atanabilir.
IPv4’ten IPv6’ya Geçiş Yöntemleri (IPv4 to IPv6 Transition Methods)
Dual Stack:
Bu yaklaşıma göre IPv4’den IPv6 geçişi işleminin problemsiz olarak yapılması hedeflenmektedir. Bu yaklaşımda bazı noktaların her iki protokol kümesini de konuşabilmesi gerekmektedir. Bu dual stack ilgilendiren noktalarda bir aileden gelen paketler diğer aileye çevrilebilmektedir ve bu noktalar karşı tarafın konuştuğu protokolü anlayarak bundan sonraki konuşmalarını bu protokol üzerinden yaparlar.
Karşı tarafın hangi protokol kümesinden olduğunun anlaşılması için: Örneğin: DNS bu noktada da fayda sağlar. Buna göre örneğin DNS üzerinde yapılan bir sorgu sonucunda adresin karşılığı olan IP adresi IPv6 olarak destekleniyorsa cevap da IPv6 olarak döndürülür, desteklenmiyorsa IPv4 olarak cevap dönülür.

Dual Stack Geçiş Yöntemi Simülasyonu

6 to 4 Tunneling:
Bir IP paketinin içerisinde farklı bir protokolün bilgisinin yollanması anlamına gelir. Örneğin IPv4 paketinin içerisinde IPv6 paketi yollanabilir. Bu yaklaşıma göre IPv4 ile konuşan uç sistemler arasında yollanan paketin içeriği açılmaz ve bilinmez, bu paket veri gibi kabul edilir. IPv4 üzerinden IPv6 yollayan uçlar ise birbirlerinin paketlerini IPv4 ağından alarak anlayabilirler.


6 to 4 Tunneling Geçiş Yöntemi Simülasyonu





Bir sonraki yazımda görüşmek üzere...



sentiment_satisfied Emoticon