Eyvah IP'ler bitiyor mu?

Bildiğimiz gibi internete bağlı olan her bilgisayar ona özgü bir IP adresine sahiptir. Mesela şu an için IEEE-ODTÜ öğrenci kolunun üyelerine ileti, web, haber grupları gibi hizmetlerini yürüttüğü sunucusunu adresi lodos.ieee.metu.edu.tr iken IP adresi ise 144.122.222.254 'dür. İsim sunucuları (nameserver) tarafından isim IP'ye çevirilir ve ulaşım sağlanır. Bugün kullanılan IP sistemi IPv4 (IP sürüm 4) olarak adlandırılmaktadır. Bu yazı Ipv4 ile karşılaşılan sorunlar ve buna çözüm olarak üretilen IPv6 (IPng-IP Next Generation) üzerinde duracaktır.

IPv4

Internet'in temellerinin ARPANET adıyla 1960'lı yıllarda atılmasıyla birlikte NCP (Network Control Protocol) üzerinden bağlantılar yürütülüyordu. Bu sözleşmenin yetersiz olması ve olumsuz yanlarının bulun-ması nedeniyle 1981 yılında TCP/IPv4 sözleşmesi standartlaştırıldı. IPv4 sınıf (class) sistemine dayalı bir sözleşmedir. IPv4 adresleri 32 bitliktir. Aşağıdaki resimden görebileceğiniz üzere bu 10'luk sisteme çevrildiğinde alışılagelen IP adresi elde edilir.

Sınıflara göre ayrıldığında aşağıdaki tablodaki durum ortaya çıkar. Burada sınıfların anlamlarını ayrıntılı anlatmak gerekirse:

A- 125 ağ, ağ başına yaklaşık 16 milyon adres B- 16382 ağ, ağ başına 65534 adres

C- Yaklaşık 2 milyon ağ, ağ başına 256 adres

D- Multicast kullanım için ayrılmıştır.

E- Gelecekte kullanım için ayrılmıştır.

Örneğin ODTÜ 144.122 ile başlayan B sınıfı bir IP bloğuna sahiptir. Bu ODTÜ'ye kuramsal olarak 65534 ayrı adres verme olanağı tanır. IPv4 sistemi kuramsal olarak 4 milyar farklı adrese imkan tanır. Ama sınıf sistemi nedeniyle bu verimli kullanılamamaktadır. Örneğin bir şirket IP bloğu için başvurduğunda hepsini kullanabilecek kapasitesi olmasa da en az 256 IP lik bir C sınıfı almak zorundadır. 1980'li yıllarda parmakla sayılabilecek internet bilgisayarı olduğu düşünülünce o zaman ki en ileri görüşlü insanın bile 4 milyar adresin yetmeyeceğini düşünmesi zordu.

IPv6'nın yapısı

Bir IPv6 adresi Şekil 1'de de görülebileceği gibi toplam 128 bitten oluşur. Ilk 3 bit sabittir. Daha sonra bölgesel kimlik (Regional ID), servis sağlayıcı kimliği (Provider ID), abone kimliği (Subscriber ID), alt ağ kimliği (Subnet ID) ve arabirim kimliği (Interface ID) gelir. Bu bölümler değişen bit uzunlukta olabilrler. Ama toplamları 128-3=125 etmelidir.

IP sürüm 6 datagramı basit olarak, en başta sabit uzunlukta bir ana başlık (base header) ve bunun ardından genişletme başlıkları içerir. Bu genişletme başlıkları ilerde kullanılabilecek yeni protokoller için düşünülmüştür. Başlıkların ardından ise veri gelir. Ana başlık Şekil 3'teki öğelerden oluşur.

Version: Sözleşme sürümü Flow

Label: Veri tipi

Priority: Öncelik derecesi

Payload Length: Ana başlık hariç datagramın boyutu

Next Header: Sırada hangi bölümün olduğunu belirtir. Sonraki başlık kısmında bir genişletme başlığının ya da hemen verinin geleceği belirtilir.

Hop limit: Paketin yok olmadan önce geçebileceği en fazla nokta sayısı.

Başlangıç için 3 çeşit IPv6 adresi olacak.

1. unicast: tekil noktalar

2. cluster: Ortak bir ön ek paylaşan adresler.

3. multicast: Bu grup içindeki bir adrese gönderilen paket, grup içindeki tüm noktalara ulaştırılır.

Unicast adresler sağlayıcı, coğrafik, IPX, yerel kullanım ve IPv4 bazlı tiplere sahiptir. IPv4 bazlı olan, sürüm 6'ya geçişi sağlamak için konmuştur.

IPv6'nın getirdikleri

IPv6 kullanmak için tek neden IP adreslerinin azalıyor olması değil. Nedenler söyle sıralanabilir.

1- IPv6 128 bit adresleme içerir. IP adres azalması ile ilgili sorunlar ortadan kalkacak. IPv6 ile birlikte birbirinden farklı 340, 282, 366, 920, 938, 463, 463, 374, 607, 431, 768, 211, 456 adres tanımlanabilecek. Bunu dünyanın alanına oranlarsak metrekare alan başına tam 665,570,793,348,866,943,898,599 farklı IP adresi düşecek.

2- IP adresine eklenen bir alan sayesinde multicast yönlendirme geliştirilmiş olacaktır.

3- Küme (cluster) adresleme yöntemi ile topolojik bölgeler tanınabilecektir.

4- IPv6 adresinin başlığı, IPv6 adresinin IPv4 adreslerinden 4 kat büyük olmasına rağmen, IPv4 başlığından sadece 2 kat büyüktür. Yani başlıkta bir basitleştirme yapılmıştır.

5- IPv6 adreslerinde akış (flow) ve öncelik (priority) bölümleri vardır. Bu bölümler sayesinde gönderilen paketlerin ne içerdiği daha iyi belirtilebilir. Gerçek zamanlı (real time) ve çabuk cevap gerektiren uygulamalarda belirgin bir hızlanma sağlanabilir. Mesela internet üzerinde gönderilen bir paketin ftp verisi değil de bir video verisi olduğunun belirlenmesi ve yönlendiricilerde bunlara öncelik tanınması video akışında hızlanma getirebilir.

6-IPv6 da güvenlik için IP seviyesinde oldukça önemli çözümler üretilmiştir. Bir yere paket yollamak isteyen bir kişi, önce alıcı bilgisayara güvenli bir şekilde giriş (login) yapmalıdır. Güvenli girişin nasıl yapılacağı sistem yöneticilerine bırakılmıştır. Bu sayede hacker saldırılarının önemli bir kısmı önlenmiş olacaktır. Ayrıca IPv6 iki IPv6 kullanıcısı nokta arasında şifrelenmiş veri aktarımına da olanak sağlamaktadır. Şifreleme algoritması için standart olarak DES CBC kullanılmaktadır.

7- IPv6 adreslemeye geçilince IPv4 adresleri de kullanılabilecektir. Bu geçişin daha kolay olmasını sağlayacaktır.

8- Internete çıkmamış yerel ağlar İnternete basit bir ayar ile çıkabilecek-ler ve tekil IP adresine sahip olabileceklerdir. Önceki sistemde ise örnek olarak 192.168.x.x IP bloğunu kullanan bir ağı internete çıkarmak için ağdaki tüm noktaların IP adreslerinin değiştirilmesi gerekiyordu.

9- "Hop limit" sayesinde paketlerin sonsuz döngülerde dolanması engellenmiş olur.

IPv6 yıllardır yaşanan birçok soruna çözüm sağlaması ve internetin önünü açması açısından oldukça önemlidir. IPv4 de desteklendiği için geçiş de fazla zor olmayacaktır.

Yeni nesil IP adresleri hakkında ayrıntılı bilgiye aşağıdaki internet bağlantı adreslerinden edinebilirsiniz.

Kaynaklar

http://playground.sun.com/pub/ipng/html/ipng-main.html

http://www.arin.net/regserv/ipv6/ipv6-regserv.html

http://playground.sun.com/pub/ipng/html/INET-IPng-Paper.html

http://www.3com.com/nsc/501302s.html

http://www.ieee.metu.edu.tr/rfc/rfc1752.txt

http://www.ieee.metu.edu.tr/rfc/rfc2460.txt

Oğuz Yılmaz

oguz@ieee.metu.edu.tr