IPv6 Adres Yapısının ve Başlık Yapısının İncelenmesi

0
3011
views
Günümüzde akıllı cihazların (cep telefonları, IP telefon, sayısal fotoğraf makineleri, buzdolabı, kamera,…) artması sonucunda 32 bitten oluşan IPv4 internet protokolünü (IP) yetersiz kalmaktadır. Bu sebeple, 128 bitlik IPv6 ortaya çıkmıştır. Bu yazıda, IPv6 adres yapısı ve türleri, IPv6 üretilme ve dağıtılma süreci, IPv6 başlık yapısı ve uzantı başlıkları incelenecektir.

1. IPV6

1.1 IPv6 Adres Yapısı

Pentist: Sızma Testleri ve Bilgi Güvenliği Danışmanlık Hizmetleri

IPv6 Temel olarak aşağıdaki şekilde görüldüğü gibi bir adres formatına sahiptir.

Şekil 1.1: Temel IPv6 Yapısı

 

Bu formattaki her bir kısmın anlamı şu şekildedir;

  • Küresel Yönlendirme Öneki: İnternet servis sağlayıcılar (ISP) veya Bölgesel İnternet Kayıt Merkezi (RIR) tarafından kurumlara verilen önek bilgisini içermektedir. IPv6 adres yapısındaki küresel yönlendirme öneki ilk 48 biti ifade etmektedir. Bunun 23 biti RIR’lar tarafından, her bir RIR için sonraki 32 bite kadar olan kısım ISP’lere dağıtılmakta, her bir ISP ise sonraki 16 biti kurumlara dağıtmaktadır [1].
  • Alt Ağ Arabirim Tanıtıcısı: Bir kurumun aldığı öneke göre gerekli gördüğü sayıda kendi içerisinde oluşturduğu alt ağları ifade etmektedir ve 2^16 adet alt ağa olanak tanımaktadır.
  • Arabirim Tanıtıcısı: Her bir alt ağ içerisindeki istemcilere verilecek olan IP aralıklarını ifade etmektedir. 64 bitlik bir alan olduğu için her bir yerel ağ için 2^64 adet istemci IP adresine olanak tanımaktadır.

 

1.2 IPv6 Adres Türleri

IPv6’da temelde üç farklı türde IP adresi vardır.

Şekil 1.2: IPv6 Adres Türleri

 

Bunlar yukarıdaki şekilde de görüldüğü üzere Tekil Gönderim Adresi(Unicast), Çoklu Gönderim Adresi(Multicast) ve Herhangi Birine Gönderim Adresi(Anycast) türleridir. Bu adresler sırasıyla şu şekilde incelenebilir.

 

1.2.1 Tekil Gönderim Adresi

Tek bir hedef veya kaynak arabirim belirten adreslerdir. 6 farklı tekil gönderim adresi vardır. Bunlar şu şekildedir;

 

1.2.1.1. Küresel Tekil

Arabirimlerin küresel bağlantıları için kullanılan ve ‘001’ ile başlayan IP adreslerini ifade etmektedir. Küresel ortamda yönlendirilebilmektedirler. IPv4 ortamında genel IP adreslerine karşılık geldiği düşünülebilir. IANA (Internet Assigned Numbers Authority) tarafından IP dağıtım yetkilisi kuruluşlar olan servis sağlayıcılara oradan da isteyen kurumlara dağıtılır [1]. Küresel tekil gönderim adres IP aralığı 2000://3 olarak ifade edilir ve IP aralığı 2000::/3 ile 3FFF::/3 aralığında yer almaktadır. Aşağıdaki şekilde RFC (Request For Comments) 3587’ye göre bir küresel tekil gönderim adresinin yapısını göstermektedir.

Şekil 1.3: Küresel Tekil Gönderim Adres Yapısı [2]

IANA internet sitesinden [3] internet servis sağlayıcılara IP dağıtacak olan bölgesel RIR’lara atanan IPv6 küresel tekil gönderim IP aralığı görülebilmektedir.

Bir küresel tekil gönderim adresi manuel olarak veya dinamik olarak arabirimlere atanabilir. Dinamik atama DHCPv6 (Dynamic Host Configuration Protocol Version 6) veya SLAAC (Staless Adress Autoconfiguration) ile sağlanabilmektedir. (Detayları sonraki bölümlerde incelenmiştir.)

 

1.2.1.2. Bağlantı Yerel Adresi

Aynı yerel ağdaki cihazların birbirleri ile haberleşmeleri için kullanılan tekil gönderim ipv6 adresleridir.FE80::/10 önekindeki, yani FE80::/10 ile FEBF::/10 arasındaki IP adreslerini içermektedir. Yönlendiriciler tarafından yerel ağ dışında yönlendirilmezler. Bu anlamda IPv4 uzayında özel IP adreslerine karşılık gelmektedirler. Statik veya dinamik olarak arabirimlere atanabilirler. Dinamik atama EUI-64(Extended Unique Identifier) ile veya random arabirim IP adresi üretilerek sağlanmaktadır. Bağlantı yerel IP adresi atamaları için DHCPv6 kullanılmamaktadır. Aşağıdaki şekilde bir bağlantı yerel tekil gönderim adresinin yapısı gösterilmektedir.

Şekil 1.4: Bağlantı Yerel Tekim Gönderim Adres yapısı

 

IPv6 bağlantı yerel tekil gönderim IP adreslerinin en önemli kullanım alanlarından biri de yönlendiricilerin kendi aralarındaki haberleşmelerin bu IP türü üzerinden gerçekleşmesidir. Örneğin yönlendiriciler arasında komşuluk bilgilerinin paylaşılması, yönlendiricilerin sonraki atlama IP adreslerinin bağlantı yerel IP adresleri olması ve yönlendiricilerin istemcilere ağ geçidi bilgisini RA mesajları ile kendi bağlantı yerel IP adresi olarak bildirmesidir [4]. Kısaca yönlendiricilerin kendi aralarındaki trafik bağlantı yerel IP adresleri üzerinden iletilirken, internet trafiği küresel tekil IP adresleri ile sağlanmaktadır.

 

1.2.1.3. Eşsiz Yerel Adres

Küresel olarak eşsiz olan yerel IP adresleri olarak da tanımlanabilir.FC00::/7 olarak ifade edilir ve FC00::/7 to FDFF::/7 aralığındaki IP adreslerini kapsamaktadır. Yerel IP adresi olarak kullanıldığı için küresel ortamda yönlendirilmemelidirler . Bu IP adresinin temel amacı farklı sitelara sahip bir organizasyonda farklı siteler için küresel ortamda eşsiz yerel IP adresleri oluşturmaktır. Siteler arasında yönlendirilebilir. Fiziksel olarak çok ayrı olan iki farklı siteyi tek bir organizasyon altında yönetmek için kullanılabilir. Bu IP adreslerinin küresel ortamda eşsiz olmasını sağlayan ise 40 bitlik küresel tanıtıcı kısmının RFC 4193’te tanımlanan Sample Code for Pseudo-Random Global ID algoritmasına göre üretilmesidir [5].

Şekil 1.5: Eşsiz Yerel Tekil Gönderim adresi yapısı [5]

 

1.2.1.4. Yerel İstemci Adresi

İşletim sisteminin kendi içerisinde kullandığı IP adreslerini ifade eder. IPv4 uzayındaki 127.0.0.1 IP’sine denk gelir ve ‘::1/128’ ile ifade edilir. İşletim sisteminde TCP/IP yığını üzerinde test yapmak için kullanılır. İşletim sisteminden çıkıp ağ üzerinde dolaşan bir paketin kaynak veya hedef IP adresi yerel istemci IP adresi olamaz ve herhangi bir fiziksel arabirime atanamaz.

 

1.2.1.5. Belirsiz Adres

Henüz IP adresi atanmamış bir işletim sistemi ağa bir paket gönderecek ise belirsiz adresi kaynak IP adresi olarak kullanılır. Yani o an ilgili cihazda IP olmadığını ifade etmektedir. Örneğin DAD (Duplicate Address Detection) süreci başlangıcında işletim sistemi henüz geçerli bir IP adresine sahip olmadığı için komşu keşfi için gönderdiği paketlerin kaynak adresi olarak belirsiz adres kullanmaktadır. Belirsiz adres ‘ ::/128’ veya 0:0:0:0:0:0:0:0 şeklinde ifade edilebilir. Yerel istemci adresler gibi fiziksel bir arabirime atanamaz ve hedef adres olamazlar.

 

1.2.1.6. Gömülü IPv4

IPv4’ten IPv6’ya geçiş sırasında bu iki farklı IP altyapısının birbirleri ile uyumlu çalışabilmesi açısından IPv4’ün IPv6 içerisine gömülmesi ile oluşturulmuştur. 128 bitlik IPv6’nın son 32 biti IPv4 yazılır ilk 96 biti de sıfır olarak işaretlenir. Böylelikle NAT-PT, NAT-64 ve tünelleme gereken alanlarda bu iki farklı IP bir arada kullanılabilir. Gömülü Ipv4 adresi ‘::/96’ olarak ifade edilebilir.

 

1.2.2 Çoklu Gönderim Adresi

Belli bir grup içerisinde birden fazla hedef arabirim belirten ipv6 çeşidini ifade etmektedir. ‘Atanmış’ ve ‘İstenen’ olmak üzere ikiye ayrılmaktadır.

 

1.2.2.1. Atanmış

Cihazlara varsayılan olarak atanmış kalıcı çoklu gönderim grup IP adresleridir. IP aralığı FF00::/8 olarak ifade edilebilir. Hangi tür cihazların hangi çoklu gönderim IP grubuna dahil edileceği RFC 2375‘ te tanımlanmıştır. Örneğin bağlantı yerel çoklu gönderim IP tanımlarında ‘FF02::1’ bütün düğümlerin IP adreslerini, ‘FF02::2’ bütün yönlendiriciler için çoklu gönderim IP adreslerini ifade etmektedir [6].

 

1.2.2.2. İstenen (Solicited)

IP adres aralığı ‘FF02::1:FF/104’ olarak ifade edilir. Son 24 bit ise cihazın sahip olduğu tekil gönderim adresinin son 24 biti eklenerek tamamlanır. Eğer bir cihazı bir tekil gönderim adresi varsa o aynı zamanda solicited multicast adresi de almış olur ve bu çoklu gönderim grubuna dahil olur. Aynı çoklu gönderim grubuna gelen istekleri o çoklu gönderim grubundaki bütün cihazlar dinler ve kendilerini ilgilendiren isteklere cevap verirler. IPv6 ND (Neighbour Discovery) sürecinde adres çözümlemesi ve adres çakışması mesajı (DAD) için kullanılır. IPv4’da adres çözümü için kullanılan ARP protokolü yerine IPv6’da NDP kullanılmaktadır.

 

1.2.3 Herhangi Birine Gönderim

Aynı IPv6 adresinin birden fazla cihaza veya bir cihazda farklı arabirimlere verildiği durumu ifade etmektedir. Genellikle önemli görevleri olan sunucuları hizmet kesintisi olmaması için ağ yedekliliğini sağlamak için kullanılır. Örneğin birden fazla alan adı sunucusu bulunduran kurumlarda sunucuların her birine aynı IP adresi verilmekte, istemci kendisine en yakın alan adı sunucusuna sorgulama yaparak internete çıkmaktadır. En yakın alan adı sunucusunda bir arıza olması durumunda diğer alan adı sunucusu tercih edilmektedir.

Bunların yanında belirtmek gerekir ki IPv6’da broadcast IP adresi mevcut değildir. Broadcast IP adresinin IPv4’te ki işlevleri ağırlıklı olarak IPv6’da çoklu gönderim adresleri tarafından sağlanmaktadır.

 

2. IPv6 Adreslerinin Üretilme ve Dağıtılma Süreci

IPv6’nın küresel önek kısmının RIR veya ISP’ler tarafından dağıtıldığını bilmekteyiz. Arabirim tanıtıcı kısmı da farklı yöntemlerle istemcilere dağıtılmaktadır. Burada genel bakış açısı istemcinin kendi IPv6 arabirim adresini kendisi üretmesidir. Bunun yanında istemcilerin küresel tekil ve bağlantı yerel IP adreslerini tanımlama yöntemleri aşağıdaki şekilde gösterilmiştir.

Şekil 2.1: Küresel tekil ve bağlantı yerel IPv6 Dağıtılma Yöntemleri

 

IP dağıtıma süreci dinamik ve statik olarak tanımlamasının yanında durumsuz(stateless) ve durumlu(statefull) olarak da tanımlanabilir. Durumsuz IP, istemcilerin IP bilgilerinin herhangi bir yerde kayıt tutulmadığı anlamına gelmektedir. Dolayısı ile istemci kendi IPv6 adresini ürettikten sonra çakışma olmaması için IPV6 DAD işlemini yapmak zorundadır. Durumlu IP ise istemcilerin IP bilgilerinin DHCPv6 tarafından tutulduğunu ifade etmektedir. Durumlu IP yapılandırması yapıldığı zaman DAD işlemine gerek olmamakla beraber SLAAC ve DHCPv6 birlikte kullanıldığında DAD istemciler tarafından yapılmaktadır.

Bağlantı yerel ve küresel tekil gönderim adreslerinin arabirim tanıtıcı kısımlarının yapılandırma yöntemleri aşağıda verilmiştir.

 

2.1 Manuel Konfigürasyon

IPv6 adresinin statik olarak elle girilmesini ifade eder. global unicast address veya link local adress manuel olarak konfigüre edilebilir.

 

2.2 EUI-64

EUI-64 genişletilmiş benzersiz tanıtıcı, 64 bitlik IPv6 arabirim adresinin 48 bitlik MAC(Media Access Control) adresinden türetilmesidir. Bağlantı yerel adresleri dinamik olarak, küresel tekil gönderim adresleri de hem dinamik hem statik olarak EUI-64 formatına göre istemcilere atanabilirler. MAC adresi küresel çapta eşsiz olduğu için MAC adres tabanlı arabirim tanıtıcısı üretilmesi, IPv6 adresinin eşsizliğini sağlamaktadır. IPv6 arabirim adresi EUI-64 formatından üretilme süreci aşağıda özetlenmiştir.

  • Cihazın MAC adresinin tam orta kısmına FFFE adresi yerleştirilir. FFFE kısmı bu iş için IEEE tarafından rezerve edilmiştir. 48 bitlik bir adresten EUI-64 adresinin üretildiğini gösterir [4].
  • Ardından MAC adresinin 7. biti dönüştürülür. Bu bir yerel/küresel bayrak biti olarak adlandırılır ve küresel eşsiz adresler için sıfır, yerel adresler için ise 1 olarak ayarlanır. Örneğin sanal arabirimler yerel adresler olduğu için bu bit 1 olarak ayarlanır. Bu kurala uymayarak buradaki biti değiştirmeden yazan üreticiler de vardır.
  • U/L biti adresin yerel veya küresel olarak yönetildiğini belirlemek için kullanılır. Eğer bir sıfır ise bu MAC adresi IEEE tarafından bir şirkete verildiği anlamına gelir. Eğer bu bit 1 ise yerel olarak yönetildiği anlamına gelir. Bu bit tahmin edilebildiği için ileriki konularda işlenecek olan CGA (Cryptographically Generated Address) doğrulama kısmında önem arz etmektedir.RFC 5342’ye göre U/L bitinin değiştirilmesinin temel amacı ağ yöneticilerinin yerel alan tanımlayıcılarını girmesini kolaylaştırmaktır [7].

 

2.3 Random Arabirim Tanıtıcısı

EUI-64 formatı her ne kadar küresel ortamda eşsizliği sağlasa da farklı ağlardan bağlanan aynı cihazlar aynı arabirim tanıtıcısına sahip olacağı için IP katmanında izlenebilirler. Buna uygulama katmanında yer alan çerezlerin izlenmesine benzer bir izleme olarak bakılabilir. Hangi cihazın nerelerde hangi internet adreslerine bağlandığı gibi bilgiler elde edilebilir. Bunun güvenlik açığını kapamak için RFC 4941’de arabirim tanıtıcısının random olarak üretilme yöntemi tanımlanmaktadır [8].

 

2.4 EUI-64 metodu veya Random Arabirim Tanıtıcısı ile SLAAC

SLAAC, durumsuz adres yapılandırması anlamına gelmektedir. Bağlantı yerel adresine sahip bir istemcinin yönlendiriciden küresel önek bilgilerini alması ve bu önek bilgisine ek olarak EUI-64 metoduna veya RFC 4941′ de tanımlanan random yöntem ile arabirim tanıtıcısını üretmesi sonucunda küresel tekil gönderim adresini oluşturmasıdır.

Şekil 2.2: SLAAC Yöntemi

 

Yukarıdaki şekilde bir istemcinin bir yönlendiriciden önek bilgisini alıp kendi küresel tekil tanıtıcısını ve IP adresini oluşturma süreci gösterilmiştir. Bu durum kısaca şöyle özetlenebilir;

  • İstemci bilgisayar ilk açıldığında manuel, EUI-64 veya Random arabirim tanıtıcı vasıtasıyla kendisine bir bağlantı yerel IPv6 adresi oluşturulur. EUI-64 veya Random arabirim tanıtıcısına göre IP üretme süreci işletim sistemine göre farklılık gösterebilir. İlgili işletim sistemi Random arabirim üretme algoritması destekliyorsa Random üretilir, EUI-64 kullanıyorsa EUI-64 formatına göre arabirim tanıtıcısı oluşturulur. Örnek vermek gerekirse Windows işletim sistemi günümüzde Random arabirim tanıtıcısı üretim algoritmasını desteklemektedir fakat bazı Linux işletim sürümleri EUI-64 ile arabirim üretimine devam etmektedir.
  • Normalde ortamdaki yönlendirici periyodik olarak NDP-RA mesajı ile kendi varlığını bildirir ve önek bilgisini paylaşır.
  • İstemci bilgisayar açıldığında kendisi ile önek bilgisi paylaşan bir NDP-RA mesajı duyamazsa kendi bağlantı yerel IPv6 adresini kullanarak NDP-RS mesajı ile çevresinde kendisine önek bilgisi yollayabilecek bir yönlendirici arar.
  • Ortamdaki yönlendirici kendi önek bilgisini NDP-RA mesajı ile istemci bilgisayara yollar
    İstemci bilgisayar önek bilgisini alır ve EUI-64 veya RANDOM olarak arabirim tanıtıcısı üretmesi sonucunda kendi küresel tekil adresini üretir.
  • Bu adresin başkası tarafından kullanılıp kullanılmadığını anlamak amacıyla NDP DAD mesajları yollar. Başkası tarafından kullanılmıyorsa kendi bu adresi kullanmaya başlar. NDP-RS, NDP-RA, DAD sonraki bölümlerde detaylı işlenecektir.

 

2.5 DHCPv6 ile Durumlu Adres Yapılandırması

Küresel tekil adresleri için istemcinin istediği tüm IP yapılandırma bilgilerinin DHCPv6 tarafından istemcilere dağıtılmasıdır. DHCPv6 durumlu veya durumsuz olarak hizmet verebilmektedir. DHCPv6 sunucusu, SLAAC ile IP dağıtılması sırasında durumsuz olarak DNS(Domain Name System) , NTP veya ihtiyaç duyulan herhangi bir DHCP seçeneğini istemcilere sunabilir, durumlu olarak da bütün DHCP bilgilerini kendisi sunabilir. Bu süreç genel olarak şu şekilde yürümektedir:

  • İstemci IP almak istediğinde çevresine bir NDP RS mesajı yayar.
  • Çevredeki bir yönlendirici ise NDP RA mesajı ile geri döner. Burada RA mesajındaki bir bit istemciyi durumlu veya durumsuz olarak yapılandırılması konusunda bilgi verir. Managed Address Configuration(M) biti olarak geçen bu bit eğer sıfır olarak işaretlenmişse yönlendirici istemciyi SLAAC ile yapılanması gerektiği konusunda uyarır. Eğer bu bit 1 ise yönlendirici istemciye kendisine bir DHCPv6 bularak durumlu olarak yapılanması gerektiği konusunda bilgi verir.
  • Yönlendiriciden gelen RA mesajında M biti 1 olarak işaretlenmişse istemci çevresine DHCPv6 talep mesajı yayarak çevresinde bir DHCP sunucusu arar ve bu sunucu sayesinde durumlu olarak yapılandırılabilir.DHCPv6 istek mesajları çoklu gönderim olarak FF02::1:2 adresine gönderilir. Bu adres IANA tarafından yerel IP kapsamında “Bütün DHCP Agent IP adresleri” için tahsis edilmiş çoklu gönderim IP grubudur.

 

Şekil 2.3: DHCPv6 ile Durumlu IPv6 Yapılandırması

 

2.6 DHCPv6 ve Durumsuz Otomatik Yapılandırma(SLAAC)

EUI-64 veya Random arabirim tanıtıcısı ile SLAAC yapılandırmasında dikkat edilmesi gereken önemli hususlardan biri istemcinin sadece önek bilgisini yönlendiriciden almasıdır. DNS, NTP gibi bilgilere ihtiyacı olduğunda bu bilgiler ya statik olarak veya DHCPv6 aracılığıyla sağlanmak zorundadır. Dolayısı ile ortamda SLAAC kullanılsa bile bu tür bilgilerin statik olarak girilmesi istenmiyorsa DHCPv6 sunucusuna da ihtiyaç vardır. SLAAC’ın DHCPv6 ile beraber çalışması durumunda ise genel süreç aşağıdaki şekilde özetlenmiştir.

  • İstemci IP almak istediğinde çevresine bir NDP RS mesajı yayar. Çevredeki bir yönlendirici ise NDP RA mesajı ile geri döner.
  • Bu mesaj içerisinde “O” (Other Configuration) biti olarak geçen bit eğer 1 olarak işaretlenmişse yönlendirici istemciyi SLAAC ile yapılanması gerektiği fakat önek bilgisi dışındaki DNS gibi ihtiyaç duyulabilecek bilgilerin DHCPv6 sunucusundan alınması gerektiği konusunda bilgi verir [9]. Böylelikle istemci önek bilgisini yönlendiriciden alır, kendi arabirim tanıtıcısını Random veya EUI-64 ile üretir ve DNS, NTP gibi geri kalan bilgileri almak için DHCP talep mesajı ile ortamdaki DHCPv6 sunucusundan faydalanır

SLAAC bu özellikleri ile özellikle kablosuz ortamlar için uygun olmakla beraber avantajlarını şu şekilde sıralayabiliriz:

  • DNS bilgilerinin statik olarak girilmesi veya bir merkezi ortamdan istemcilere dağıtılması halinde internete bağlanmak için DHCPv6 sunucusuna ihtiyaç yoktur [10].
  • Ağ cihazları açılır açılmaz manuel bir IP bilgisi girmeden IP adresi alabilir ve internete bağlanabilirler [10]. Bu özellik bilhassa “Nesnelerin İnterneti” ortamlarında kullanılacak cihazların kendi IP adreslerini otomatik atayabilmelerini sağlayacağı için cihazların yönetimini kolaylaştıracaktır.
  • İnternete bağlanan cihaz sayısının her geçen yıl arttığını düşünürsek ve bunlar için manuel veya DHCP servisleri ile IP dağıtımının yönetilmesi günden güne zorlaşmaktadır. Bu anlamda SLAAC cihazların kendi kendilerini yapılandırmasını sağlayarak daha az işgücü ihtiyacı gerektirmektedir [10].

 

3. IPv6 ve ICMPv6 Başlık Yapısı ve İncelemesi

3.1 IPv6 Başlık Yapısı

IPv6 başlık yapısı RFC 2460’a göre aşağıda şekilde gösterilen şekilde tanımlanmaktadır.

Şekil 3.1: IPv6 Başlık Yapısı [11]

IPv6 başlık yapısı yukarıdaki şekilde gösterilmektedir. Bu başlık yapısındaki her bir alanı açıklamak gerekirse;

  • Version (Sürüm): IP başlığının sürüm 4 veya sürüm 6 olduğunu belirtmek için kullanılan 4 bitlik bir alandır. Sürüm 6 için bu alan ‘0110’ değerini almaktadır.
  • Traffic Class (Trafik Sınıfı): IPv4’te TOS (Type of Service/Servis Tipi) alanına karşılık gelen 8 bitlik alandır. Bu alan farklı önceliklere ve sınıflardaki IPv6 paketlerini ayırt etmek ve tanımlamak için kullanılır [4]. Örneğin ses veya video trafiğini önceliklendirmek bu alanda yapılacak ayarlarla mümkündür.
  • Flow Label (Akış Etiketi): 20 bit uzunluğundaki bu alan cihazlar tarafından bir akışın paketlerini kaynak ve hedef IP adreslerine göre sınıflandırmak ve etiketlemek için kullanılır. Bu sayede hangi paketin hangi akışın parçası olduğu daha rahat belirlenebilmektedir. Akış belli bir kaynaktan bir hedef noktaya giden ve cihazların sırasına göre etiketlemek istediği paket dizisi olarak adlandırabilir [12]. Bu alan IPv6 yönlendiricileri tarafından gerçek zamanlı servisler gibi özel olarak işlenmesi, etiketlenmesi istenen paket dizilerinin etiketlenmesi için kullanılabilir [4].
  • Payload Length (Yük Uzunluğu): IPv6 başlığını takip eden alanların toplam uzunluğunu gösteren 16 bitlik alandır. IPv6 uzantı başlıkları ve datanın toplam uzunluğunu gösterir. Bu alan en fazla 65536 byte uzunluğuna izin vermektedir. Daha fazla byte gerektiren zamanlardan IPv6 jumbogram uzantısı kullanılır ve bu alan 32 bit ile ifade edilir. Yani jumbogram ile beraber 232 byte kadar yük uzunluğu desteklenir hale gelmektedir [4].
  • Next Header (Sonraki Başlık): IPv6 başlığından sonra hangi başlığın geleceğini ifade etmek için kullanılan 8 bitlik alandır. Örneğin buradaki değer 58 ise IPv6 başlığından sonra ICMPv6 başlığı geleceği ifade edilir.
Şekil 3.2: Sonraki Başlık

 

  • Hop Limit (Sıçrama Limiti): Paketin bir hedefe giderken kaç tane yönlendirici üzerinden geçtiğini gösteren 8 bitlik bir alandır. Her bir yönlendirici buradaki değeri 1 azaltarak iletir. Bu değer sıfıra kadar düşerse paket düşürülür ve paketten yanıt bekleyen kaynak adrese ICMPv6 ile paketin zaman aşımından ötürü düşürüldüğü bilgisi gönderilir [4]. IPv4’te TTL (Time to Limit) adı verilen alana karşılık gelmektedir.
  • Source Address (Kaynak Adres): Paketi gönderen kaynak IPv6 adresini ifade eder. 128 bit uzunluğundadır.
  • Destination Adress (Varış yeri Adresi): Paketin gideceği yeri gösteren IPv6 adresini ifade eder. 128 bit uzunluğundadır.

 

3.2 IPv6 Uzantı Başlıkları

IPv6’da çeşitli özel ihtiyaçları karşılamak amacıyla farklı türde ek uzantı başlıkları vardır. Bu başlıklar IPv6 başlığından hemen sonra gelmektedir ve Sonraki Başlık alanında IPv6’dan sonra gelecek başlığa göre bilgilendirme yapılmaktadır. Aşağıdaki şekilde IPv6 başlıkları verilmiştir .

Şekil 3.3: Sonraki Başlık Değerleri [1]

Her bir başlık yapısı içerisinde sonraki başlığı belirten alan vardır ve kendisinden sonra gelecek olan başlık yapısını göstermektedir. IPv6 uzantı başlıkları aşağıda sırasıyla işlenmiştir.

 

3.2.1 Sıçrama Seçenekleri Başlığı

Hop-by-Hop Seçenekleri başlığı, bir paketin teslimat yolu boyunca her düğüm tarafından incelenmesi gereken opsiyonel bilgileri taşımak için kullanılır [11]. Örneğin yönlendiricilerin jumbogram desteği için Hop-BY-Hop seçeneği kullanılmak durumundadır. Hop-By Hop seçeneği için IPv6 başlığında next header alanı sıfır ile belirtilir. IPv6’ya seçeneğine birden fazla seçenek ekleneceği zaman Hop-By-Hop seçeneği IPv6 başlığından hemen sonra gelen başlık olacak şekilde planlanmıştır. NEXT Hope sıfır ile belirtilmesi bundan kaynaklanmaktadır.

 

3.2.2 Yönlendirme Başlığı

RFC 2460’ta tanımlanmıştır. Yönlendirme başlığı paket kaynağının hedefe giden yolu belirlemesine olanak tanır. Bu başlık, bir paketin varış yerine giden yolda bir veya daha fazla ara yönlendiricinin bir listesini içerir [4].

 

3.2.3 Fragment Başlığı

RFC 2460’ta tanımlanan ve IPv6’da paketi gönderen taraf ın paketleri fragmente ederek karşı tarafa yollaması ve alıcı tarafın ise bu paketleri tekrar birleştirerek işlemesini sağlar. Bu işlem IPv4 altyapısında yönlendiriciler üzerinde de yapılırken IPv6’da fragmentasyon gerektiği zaman sadece paketi gönderen cihaz yani kaynak IPv6’ya sahip cihaz gerçekleştirir. Yönlendiriciler paketi gönderen kaynak IP olmadıkları müddetçe fragmantasyona karışmazlar. Eğer yönlendirici arayüzlerin MTU(Maximum Transmission Unit) değerlerinden daha büyük bir paket alırlarsa paketi düşürürler ve kaynak adrese “ICMPv6 Packet Too Big error message” mesajı yollarlar [4].

 

3.2.4 IPSEC ESP ve AH Başlıkları

IPSEC işlemleri iki farklı başlık yardımıyla kimlik doğrulama, şifreleme ve bütünlük için kullanılır. Eski RFC tanımlarında IPSEC başlıkları zorunluluk olarak geçerken RFC 6434’ten sonra bu başlık “uygulanmalı” olarak değiştirildi.

  • ESP (Encapsulation Security Payload) Başlığı: Özellikle şifreleme / gizlilik amacıyla kullanılmaktadır[4]. Bu başlık varsa taşınan verinin şifreli olduğu anlaşılır[1].
  • AH (Authentication Header) Başlığı: Kimlik doğrulama ve veri bütünlüğü için kullanılmaktadır. AH RFC 2402, ESP ise RC 2406’da tanımlanmaktadır.

 

Not: IPSEC’teki kavramlardan olan SA (Security Association) ise, telsizlerdeki gibi, tek yönlü iletişim bağlantısıdır. Internet Key Exchange (IKE)’in ana amacı da ağ üzerindeki SA yönetimidir.

 

3.2.5 Hedef Seçenekleri Başlığı

Sadece hedef IPv6 adresine sahip cihaz tarafından işlenmesi istenen bilgiler gönderilecekse bu başlıkta kullanılmak zorundadır.

Bütün bunların yanında eğer IPv6 başlığında sonraki başlık alanı 59 ise IP başlığından sonra herhangi bir başlık gelmeyeceği belirtilir.

 

3.3 ICMPv6 Başlığı ve Yapısı

ICMPv4, ağ cihazlarının birbirleri ile haberleşmeleri sırasında kullandıkları kontrol amaçlı bir protokoldür. Bu özelliklerin yanında ICMPv6’da NDP mesajlarının da bu protokol ile iletilmesi ICMP mesajının kullanım alanını ve önemini arttırmıştır. ICMP cihazlar arası haberleşmelerde bilgi ve hata mesajları alınması açısından önem arz etmektedir. IPv6 başlığında sonraki başlık alanının “58” olması IPv6 başlığının ardından gelecek protokolün ICMPv6 olduğunu gösterir. ICMPv6 paket başlık yapısı RFC 4443’e göre yapısı aşağıdaki şekilde gösterilmiştir.

Şekil 3.4: ICMPv6 Başlık Yapısı [13]

 

Başlıktaki her bir alanın anlamlarını özetlemek gerekirse;

  • Type (Tip) (1 byte): ICMPv6 mesajının tipini göstermektedir. Bu kısımdaki mesaj tipleri hata ve bilgi mesajları olmak üzere ikiye ayrılır. Bu kısımda 0-127 arasındaki değerler hata mesajlarını (128-255) arasındaki değerler bilgi mesajlarını göstermektedir[13].
  • Code (Kod) (1 byte): Tip alanında verilen hata veya bilgiye dair daha detaylı bilgi içerir. Örneğin tip alanında bir hata mesajı döndü ise bu hatanın sebebinin ne olabileceğine dair daha detaylı bilgi içerir [13].
  • Checksum (Sağlama) (2 byte): Diğer birçok paket başlığında da yer aldığı gibi paketin hedef noktaya ulaştığında herhangi bir bozulmaya uğrayıp uğramadığını ortaya çıkarmak için kullanılır [13].

Aşağıdaki tabloda IANA’da belirtilen tip ve koduna göre bazı önemli ICMPv6 mesajları gösterilmiştir.

Şekil 3.5: IANA ICMPv6 Parametreleri [14]
Kaynaklar:

[1] IPv6 El Kitabı, ULAKBİM, 2012, http://ulakbim.tubitak.gov.tr/tr/hizmetlerimiz/ipv6-el-kitabi, (Erişim Tarihi: 20 Mart 2017), s.9-14.
[2] R. Hinden, S.Deering ve E. Nordmark, “IPv6 Global Unicast Address Format,” RFC 3587, Ağustos 2013, https://tools.ietf.org/html/rfc3587, s.2.
[3] IANA, https://www.iana.org/assignments/ipv6-unicast-address assignments/ipv6-unicast-address-assignments.xml, (Erişim Tarihi: 4 Ocak 2017).
[4] Graziani, R., IPv6 Fundamentals: A Straightforward Approach to Understanding IPv6, Cisco Press, ABD, 2012, s.27-180.
[5] R. Hinden ve B.Haberman, “Unique Local IPv6 Unicast Addresses,” RFC 4193, Ekim 2005, https://tools.ietf.org/html/rfc4193, s.3-5.
[6] R. Hinden ve S.Deering, “IPv6 Multicast Address Assignments,” RFC 2375, Temmuz 1998, https://tools.ietf.org/html/rfc2375, s.2.
[7] Donald Eastlake, “IANA Considerations and IETF Protocol Usage for IEEE 802 Parameters,” RFC 5342, Eylül 2008, https://tools.ietf.org/html/rfc5342, s.7.
[8] T.Narten,R.Draves ve S.Krishnan, “Privacy Extensions for Stateless Address Autoconfiguration in IPv6”, RFC 4941, Eylül 2007, https://tools.ietf.org/html/rfc4941, s.10-12.
[9] T.Narten vd., “Neighbor Discovery for IP version 6 (IPv6),” RFC 4861, Eylül 2007, https://tools.ietf.org/html/rfc4861
[10] Das K., IPv6 Stateless Auto Configuration, http://ipv6.com/articles/general/Stateless-Auto-Configuration.html (Erişim Tarihi:8 Mart 2017)
[11] S. Deering ve R.Hinden, “Internet Protocol, Version 6 (IPv6)Specification,” RFC 2460, Aralık 1998, https://tools.ietf.org/html/rfc2460, s.4-11.
[12] S. Amante vd., “IPv6 Flow Label Specification,” RFC 6437, Kasım 2011, https://tools.ietf.org/html/rfc6437, s.4.
[13] A.Conta, S. Deering ve M.Gupta, “Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification,” RFC 4443, Mart 2006, https://tools.ietf.org/html/rfc4443, s.3.
[14] IANA, Internet Control Message Protocol version 6 (ICMPv6) Parameters, https://www.iana.org/assignments/icmpv6-parameters/icmpv6-parameters.xhtml, 27 Ocak 2017.

 

 

Pentist: Sızma Testleri ve Bilgi Güvenliği Danışmanlık Hizmetleri

CEVAP VER

Yorumunuzu giriniz
İsminizi giriniz

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.