78
IPv6 Internet Protocol Version 6 IPng (Internet Protocol Next Generation)

I pv6 icmp_udp

Embed Size (px)

DESCRIPTION

bilisimogretmenim.com

Citation preview

Page 1: I pv6 icmp_udp

IPv6 Internet Protocol Version 6

IPng (Internet Protocol Next Generation)

Page 2: I pv6 icmp_udp

IPv6 Internet Protocol Version 6

• IPv6, Internet Protocol Version 6 (İnternet Protokolü Versiyon 6); IETF, The Internet Engineering Task Force (İnternet Mühendislik Hizmet Gücü), tarafından tasarlanan ağ katmanı protokolüdür. IETF 1990’ların ortasında mevcut İnternet adreslerinin tükenmekte olduğu konusunda uyarmış ve bu konuda araştırmalar yapılmasını önermiştir.

• Özellikle Amerika Birleşik Devletleri’nde, İnternetin ilk yaygınlaşmaya başladığı zamanlarda söz sahibi olan ve kendilerine bir IP adres aralığı sağlanan bazı özel kurumların, Çin gibi nüfus devi bir ülkeden bile çok daha fazla internet adres aralığına sahip olması zamanında adres planlamasının ne kadar yetersiz yapıldığını ortaya koymaktadır.

Page 3: I pv6 icmp_udp

IPv6 Internet Protocol Version 6

• Teoride 32 bitlik adres yapısı ile 232=4,294,967,296 gibi bir sayıya karşılık gelen IP adresleri; sınıf bazlı adresleme, ayrılmış adresler vb. kısıtlamalarla yalnızca 250 milyon civarında bir adreslemeye imkan tanımaktadır. Şu anda 170 milyonu kullanımda olan bu adreslerin, günümüzdeki mobil iletişim çılgınlığı da göz önüne alındığında, yakın gelecekte bir tıkanmaya yol açacağı muhakkaktır.

• 128 bitlik adres yapısıyla IPv6 3,4.1038 adet IP adresine imkan tanımaktadır. Bu da kabaca bir hesapla dünya üzerindeki her bir birey için 5,7.1028 adet adres demektir (Dünya nüfusu yaklaşık olarak 6 milyar varsayılmıştır).

Page 4: I pv6 icmp_udp

IPv6 Internet Protocol Version 6

• 1980’lerin başlarında benzer bir geçiş IPv3 ile IPv4 arasında yaşanmıştı, ancak IPv6’ya geçiş bundan biraz farklı ve yumuşak bir geçiş olacaktır, çünkü bu süre zarfında bir önceki protokol de kullanılmaya devam edilebilecektir.

• Yeni İnternet protokolü ile birlikte IPv4’ün bazı yapısal sorunlarına da çözüm bulmak mümkün olacaktır.

Page 5: I pv6 icmp_udp

IPv6’nın getirdiği yenilikler

• İlk olarak IPv4 başlık bilgisinin hantal olan yapısı revize edilmiştir. Başarımı yükseltmek için, kullanılması gerekli olmayan ya da görevleri daha üst protokollere devredebilen kısımlar ayıklanmıştır.

• Günümüz modern bilgisayar ağlarına ve gereksinimlerine uyum sağlayacak şekilde, bazı kısımlar genişletilmiştir (adres bilgisi).

Page 6: I pv6 icmp_udp

IPv6’nın getirdiği yenilikler

• IPSec; şifreleme ve kimlik doğrulama işlemleri için kullanılır, güvenlik tedbirlerini artırıcı şifreleme mekanizmasıdır.

• IPv6 protokolünde IPSec entegre olarak bulunur, yani gömülü bir şekildedir. IPv4’te ise bulunması zorunlu değildir. Bu yüzden de güvenlik açısından IPv6 protokolü daha sağlıklıdır.

Page 7: I pv6 icmp_udp

IPv6’nın getirdiği yenilikler

• Ayrıca IPv6 protokolü, başlık bilgisinde bulunan akış etiketleri yardımıyla, başarımı daha yüksek veri akış hızlarına ulaşabilmektedir.

• IPv6’da unicast-yayın ve multicast-yayın adreslemeye ek olarak anycast-yayın adresleme tipi oluşturuldu. Anycast-yayın adresleme ile adreslenmiş bir datagram bir grup bilgisayar içinden herhangi birine gider. Aynı isi gören birkaç internet sitesi bilgisayarlarından bilgi almak isteyen bir bilgisayar birbirinin aynısı olan sunuculardan kendine en yakın olana veya en uygun durumda olana bağlanıp isini yapar

Page 8: I pv6 icmp_udp

IPv6’nın getirdiği yenilikler

• IPv6 temel başlığının yanında ek baslık kavramını ortaya çıkarmıştır. IPv4’ün aksine IPv6 bazı bilgileri ek başlık denen başlıklar içine kodlar. Bu ek baslıklar hiç kullanılmayacağı gibi birden fazla da kullanılabilir.

• Ek başlık kullanıldığında IPv4’teki kadar etkin bilgiyi daha az paket boyutuyla sağlar. Ek başlıklar veri bütünlüğü ve sürekliliğini sağlamaları yanında, ağ saldırılarını da belirli oranda engeller. Böylece güvenlik IPv4'te seçenekken IPv6 güvenliği gereklilik yapmıştır.

Page 9: I pv6 icmp_udp

IPv4 ve IPv6'nın karşılaştırılması:

IPv4  IPv6 

Adresler 32 bit uzunluğundadır. Adresler 128 bit uzunluğundadır 

IPsec desteği mecburi değildir. IPsec desteği mecburidir. 

IPv4 başlığında paket akışını

tanımlamak için yönlendiricilerin

kullanabileceği QoS tanımlamaları

yoktur.

IPv6 başlığında bulunan Flow Label 

alanı yönlendiriciler tarafından paket 

akışını tanımlamak için kullanılabilir. 

Paketin parçalanması işlemi

(fragmentation) hem yönlendiriciler hem

de paketi gönderen istemci tarafından

yapılır.

Paketin parçalanması işlemi 

(fragmentation)yönlendiriciler 

tarafından yapılmaz. Sadece paketi 

gönderen istemci tarafından yapılır.  

Page 10: I pv6 icmp_udp

IPv4 ve IPv6'nın karşılaştırılması:

Paket başlığı sağlama toplamı (checksum)

içerir.

Paket başlığı sağlama toplamı 

(checksum) içermez. 

Paket başlığı seçenekler alanı içerir. Tüm seçimli veri IPv6 uzantı başlıklarına 

(extension headers) taşınmıştır. 

ARP, IPv4 adreslerini bağlantı katmanı

adreslerine dönüştürmek için ARP Request

paketleri kullanır.

ARP Request paketleri multicast 

Neighbor Solicitation mesajlarıyla 

değiştirilmiştir. 

Local subnet grup üyelikleri Internet Group

Management Protocol (IGMP)kullanılarak

yönetilir.

IGMP’nin yerini Multicast Listener 

Discovery (MLD) mesajları almıştır.

En iyi varsayılan ağ geçidini bulmak için

ICMP Router Discovery kullanılabilir; fakat

kullanımı zorunlu değildir.

ICMP Router Discovery yerine ICMPv6 

Router Solicitation ve Router 

Advertisement mesajları  kullanılması 

zorunludur. 

Page 11: I pv6 icmp_udp

IPv4 ve IPv6'nın karşılaştırılması:

Ağdaki tüm düğümlere trafik gönderebilmek

için broadcast adresleri kullanılır.

IPv6 broadcast adresi bulunmamaktadır. 

Bunun yerine link-local scope all-nodes 

multicast adresi kullanılır. 

Yapılandırılması elle veya DHCP kullanılarak

yapılır.

Elle veya DHCP kullanmak gerekmeden 

otomatik olarak yapılandırılabilir. 

Bilgisayar isimlerini IPv4 adreslerine

çevirmek için DNS sisteminde A kaydı

kullanılır.

 Bilgisayar isimlerini IPv6 adreslerine 

çevirmek için DNS sisteminde AAAA 

kaydı kullanılır. 

IPv4 adreslerini bilgisayar isimlerine

çevirmek için IN-ADDR.ARPA DNS alanında

PTR kaydı kullanılır.

 IPv6 adreslerini bilgisayar isimlerine 

çevirmek için IP6.ARPA DNS alanında 

PTR kaydı kullanılır. 

Page 12: I pv6 icmp_udp

Ana IPv6 Başlığı

Page 13: I pv6 icmp_udp

Ana IPv6 Başlığı

• Sürüm (Version) (4-bit):

• Version alanında paketin hangi IP sürümüne ait olduğu belirtilir. Burada paketin IPv6’ya ait olduğu belirtilir. Degeri 6’dır.Baslıktaki yerlesimi (0110)2 seklindedir.

Page 14: I pv6 icmp_udp

Ana IPv6 Başlığı

• Trafik Sınıfı (Traffic Class) (8-bit):

• Paketin taşıdığı verinin tipine göre öncelik verilmesini sağlar. Toplam 8 bittir. İki kısımdan oluşur. Bunlar 6 bit DS (differentiated services) ve 2 bit ECN (Explicit Congestion Notification)’dir. Bu değerler yönlendirmede kullanılan trafik sınıflarını belirler. Trafik sınıfları ile ses ve görüntü iletimi, diğer dosya transferlerinden ayırt edilir ve farklı şekilde iletilir.

Page 15: I pv6 icmp_udp

Ana IPv6 Başlığı

• Akış Etiketi (Flow Label) (20-bit):• Farklı akış tiplerini belirtmek amacıyla 20 bitten oluşur.

Performans garantisi isteyen yeni uygulamalar için kullanılacaktır. Bu kısım sayesinde bazı akış etiketleri için özel ağ güzergâhları belirlenecek ve özel trafikler özel yollardan geçecektir. Akış etiketi trafik sınıfı ile beraber düşünülmektedir. Ancak trafik sınıfı tipi belirtirken akış etiketi geçilecek yolu belirtir. Bir paket belli istekler ile gönderilecek ve bu nedenle (ses veya video olabilir) bu etiket için bir yol kurulacak ve sonraki paketlerin içeriğine bakılmadan sadece aynı akış etiketi numarası ile gelenler bu yoldan iletilmeye devam edilir.

Page 16: I pv6 icmp_udp

Ana IPv6 Başlığı

• Akış Etiketi (Flow Label) (20-bit):• Akış etiketi ayrıca uygulamadan gelen verinin

boyutunun çok büyük olduğu zamanlarda yapılan bölümlendirme işleminde kontrol görevi görür. Bu görev verinin göndericide parçalanıp alıcıda düzgün şekilde birleştirilmesi aşamalarını kapsar.

• Akış etiketi değerleri yönlendirici tarafından bir tablo da tutulur. Böylece zaman kazanılır. Bir yönlendiricinin akış etiketi tablosu oluştururken 4 kural vardır:

Page 17: I pv6 icmp_udp

Ana IPv6 Başlığı

• Akış Etiketi (Flow Label) (20-bit):• • Bir akış etiketi bir yönlendirici tarafından

desteklenmeyen türde ise, tabloda bu değeri sıfır olarak atamalı ve paketi aynen iletmelidir.

• • Aynı akış etiketine sahip paketlerde hedef IP aynı olmalı ve yönlendirici ilk paketi isleyince akış etiketini kaydetmeli böylece sonraki paketlerde zaman kazanmalıdır.

• • Akış etiketi 1 ile 220arasında değişir. Sıfır olarak seçilirse etiket yok demektir.

• • Bir akış etiketi numarası çakışma olmaması için gönderilmiş paketin hedefe tahmini ulaşma süresinden önce tekrar kullanılmamalıdır

Page 18: I pv6 icmp_udp

Ana IPv6 Başlığı

• Yük Boyutu (Payload Length) (16-bit):

• Payload length kısmı IPv4’ün aksine 40byte-lık paket hariç, toplam veri yükünün miktarını belirtir. Ek başlık bilgisi ile datanın toplam boyutudur. Eğer 65536 bytedan büyükse bu bölüm 0 olarak görünür ve paket boyutu sıçrama seçenekleri ek başlık bilgisinde bulunur.

Page 19: I pv6 icmp_udp

Ana IPv6 Başlığı

• Sonraki Başlık (Next Header) (8-bit):• Next header uzatılmış başlıklardan (opsiyonel)

hangisinin takip eden pakette geleceğini bildirir.• Eğer başlık bilgisinde ek başlık bulunmuyorsa, IPv4’teki

protokol numarası kısmına karşılık gelir. Yani bu kısım bir üst katman bilgisini göstererek, paket başlığının TCP mi yoksa UDP mi olduğunu gösterir. Eğer ek başlık var ise sonraki başlıktan sonra gelecek olan ek başlığın türünü gösterir. Ip paketinde bulunan en son ek başlıktan sonra bulunan sonraki başlıkta ise yine üst katman bilgisi bulunur.

Page 20: I pv6 icmp_udp

Sonraki Başlık (Next Header)

Page 21: I pv6 icmp_udp

Sonraki Başlık (Next Header)

• Sonraki başlık bilgisindeki değerin ne anlama geldiği aşağıdaki tabloda gösterilmiştir.

• Value (in decimal) Header• 0 Sıçrama Seçenekleri Başlığı (Hop by Hop Options Header)• 6 TCP• 17 UDP• 41 Kapsüllenmiş IPv6 Başlığı • 43 Yönlendirme Başlığı (Routing Header)• 44 Parçalama Başlığı (Fragment Header)• 46 Resource Reservation Protocol• 50 Kapsüllenmiş Güvenlik Veriyükü Başlığı (Encapsulation

Security Payload Header)• 51 Doğrulama Başlığı (Authentication Header)• 58 ICMPv6• 59 Sonraki Başlık Yok• 60 Hedef Seçenekleri Başlığı (Destination Options Header)

Page 22: I pv6 icmp_udp

Ana IPv6 Başlığı

• Sıçrama Limiti (Hop Limit) (8-bit):

• Hop limit alanı Ip paketinin en fazla kaç adet yönlendirici geçeceğini belirler. Paket her yönlendiriciden geçtiğinde bu bölümdeki değer 1 azalır.

Page 23: I pv6 icmp_udp

Ana IPv6 Başlığı

• Kaynak Adresi (Source Address) (128-bit):

• Kaynağın 128 bitlik IPv6 adresidir.

• Hedef Adresi (Destination Address) (128-bit):

• Alıcının 128 bitlik IPv6 adresidir.

Page 24: I pv6 icmp_udp

Uzantı Başlıkları (Extension Headers):

• Ek başlık; IPv6 başlık bilgisinden sonra gerektiğinde kullanılır. Bazıları sabit boyutta bazıları da değişken boyutta olabilir. IPv4 başlığındaki seçenekler (options) bölümüne denk düşer. Her ek başlığın içinde boyutunu belirten bir kısım vardır.

• Ek başlıklar sadece gerekli bilgilerin pakette bulunmasını sağlar. Ayrıca geliştirilebilir bir bölüm olduğu için ileride doğacak ihtiyaçlara cevap verebilmesi için geliştirilmiştir. Ek başlıkların bir paketteki sırası ve kısaca açılamaları aşağıdadır:

Page 25: I pv6 icmp_udp

Uzantı Başlıkları (Extension Headers):

• Sıçrama Seçenekleri Başlığı (Hop-by-Hop Options Header): Yük boyutu 65536 byte'dan fazla ise bu başlıkta paket boyutu hakkında bilgi verilir. Eğer paket özel bir bilgi taşıyorsa bu başlık sayesinde yönlendirme işlemi daha dikkatli yapılabilir.

• Hedef Seçenekleri Başlığı (Destination Options Header): Eğer yönlendirme başlığı var ise ara yönlendiricilerde pakete yapılması gereken işlemler hakkında bilgi verir. Eğer yönlendirme başlığı yoksa, hedefte pakete yapılması gereken işlemler hakkında bilgi verir.

Page 26: I pv6 icmp_udp

Uzantı Başlıkları (Extension Headers):

– Yönlendirme Başlığı (Routing Header): IPv6 kaynağında bir veya daha fazla sayıda listelenmiş olan yoldaki hedef düğümleri ziyaret ederek hedefe ulaşmasını sağlar.

– Parçalama Başlığı (Fragment Header): IPv6’da kaynak, hedefin istediği maksimum iletim biriminden daha büyük boyutta bir paket gönderildiğinde kullanılır. Parçalama sadece kaynakta yapılır, yönlendiricilerde yapılmaz.

Page 27: I pv6 icmp_udp

Uzantı Başlıkları (Extension Headers):

– Doğrulama Başlığı (Authentication Header): Ip "datagram"ıyla doğrulama yapılmasını ve verinin tekrar gönderilmesine karşı güvenlik sağlar.

– Kapsüllenmiş Güvenlik Yük Başlığı (Encapsulation Security Payload Header): Bu başlık bazen tek başına, bazen de doğrulama başlığı ile beraber IPv6’da güvenlik sağlamak için tasarlanmıştır.

Page 28: I pv6 icmp_udp

IPv6 Adres Biçimi

• “:” ile ayrılmış, 16-bit onaltılık sayı sistemi ile ifade edilen 128-bit adres biçimi.

• Onaltılık sayılarda büyük küçük ayrımı yoktur.

• Mesela; 2031:0000:130F:0000:0000:09C0:876A:130B

• Yazımı kısaltmak için: Baştaki 0'lar yazılmayabilir.

• Mesela; 2031:0:130F:0:0:9C0:876A:130B

• Çoklu 0'lar için “::” kullanılabilir.

• Mesela; 2031:0:130F::9C0:876A:130B

• “::” olan işaretler, toplam adres 128-bit olacağı için hesaplanabilir.

• Aynı adreste iki farklı “::” kısaltması kullanılamaz.

Page 29: I pv6 icmp_udp

IPv6 Ön Eki (Prefix)

• Adresin baş kısmındaki bölümüdür. Sabittir. Ağ adresini belirtir.

• IPv6 ön-eki /ön-ek-uzunluğu• IPv6 subnetmaskleri “/” seklinde gösterilmektedir.• Yukarıdaki ifade IPv4'deki CIDR yazılım şekline

benzemektedir. Ön-ek-uzunluğu ondalık sayıdan oluşur. Baştan kaç bit'in ağ adresine ait olduğunu belirler.

• Mesela; 1080:6809:8086:6502::/64• Yukarıdaki örnek 1080:6809:8086:6502/64 şeklinde de

yazılabilir. (“::” yok)

Page 30: I pv6 icmp_udp

IPv6 Ön Eki (Prefix)

• IPv6’da da IPv4 ‘teki gibi alt ağ kavramı vardır. FE80::2A0:D2FF:FEA5:E9F5/64 ile ilk 64 bitin ağı son 64 bitin bilgisayarları gösterdiği belirlenir.

• Standart IPv6’da ilk 48 bit ağı, sonraki 16 bit alt ağları en son 64 bit bilgisayarları belirtir. Bir ağda en çok 216 adet (65536) alt ağ kadar bulunur. Her alt ağda 264 adet bilgisayarlar bulunabilir

Page 31: I pv6 icmp_udp

IPv6 Adres Türleri

• Unicast• Tek bir arayüz adresi. Bu adrese gönderilen veriler, bu

adrese ait arayüze gönderilir.• Anycast• Birden çok arayüze verilen adrestir. Arayüzler farklı

noktalarda olabilir. Bu adrese gönderilen veriler, en yakın arayüze gönderilir.

• Multicast• Birden çok arayüze verilen adrestir. Arayüzler farklı

noktalarda olabilir. Bu adrese gönderilen veriler, bütün arayüzlere gönderilir.

Page 32: I pv6 icmp_udp

IPv6 Atanması

• Bir arayüz birden fazla adrese sahip olabilir.

• Birden çok arayüz tek bir unicast adrese sahip olabilir. Çoklu arayüzlerden yük paylaşımı, çoklu fiziksel arayüzleri tek bir arayüz olarak göstermek için kullanılabilir.

• Numaralandırılmamış arayüzlerden oluşan PPP bağlantılarına adres atanmaz.

Page 33: I pv6 icmp_udp

UNICAST Adresi

• Tek bir arayüz için tanımlanan adrestir. 5 Çeşit olabilir.

• –Global Unicast adres• –Site-local Unicast adres• –Link-local Unicast adres• –IPv4 bağlantılı IPv6 adresi• –IPv4 uyumlu IPv6 adresi (ömrü bitmek üzere)• Ayrıca belirsiz adres, loopback adres gibi adres

çeşitleri de olabilir.

Page 34: I pv6 icmp_udp

UNICAST-Global Adres

• IPv4 global unicast adresi ile aynı anlamı taşımaktadır.• Bu adres, global unicast ön-ek adres bölümünden

kullanılır.• Adres, global yönlendirici ön-eki, alt ağ ID ve arayüz

ID'lerinden oluşur.• 000 ikili sistemiyle baslayan adresler hariç, bütün

global unicast adresleri 64-bit arayüz ID'sine sahiptir.• Şu anda bu adres bloğu için 001 (2000::/3) ile başlayan

adresler kullanılmaktadır.• Genel IPv6 adres bloğunun sekizde birini bu adres

bloğu (2000::/3) oluşturuyor.

Page 35: I pv6 icmp_udp

UNICAST-Global Adres

İlk 3 bit 001 (2000::/3) IPv6 Unicast adresler için IANA tarafından atanır.

2000::/3 (001) bu adres yapısını belirtir.2000::/3 (001) –E000:3 (111) aralığını kapsar.Bu aralıktan FF00::/8 (1111 1111) adres aralığı multicast adresler için ayrılmıştır.Bu aralık EUI-64 yapısına sahip arayüz ID adres yapısını gerektirir.IANA (Internet Assigned Numbers Authority) 2001::/16 adres bloğunu dağıtmaktadır.Arayüz ID'si organizasyonların yerel adres hiyerarşisini oluşturması içindir.EUI-64-bit ID'si bağlantı için eşsiz bir arayüz oluşturulmasını sağlar.EUI adresi 48-bit MAC adresine 'FFFE' onaltılık değeri eklenerek oluşturulur.

Page 36: I pv6 icmp_udp

• IPv4 özel adres tanımına benzemektedir. (10.0.0.0/8 vb.)

• Bu adresler yönlendiriciler tarafından site dışına anons edilmez ve kabul edilmezler.

• Eğer ileride genel ağa bağlanmak isterlerse global unicast ön-ek kullanılır.

• Bu işlem ön-ek değiştirmek dışında bir değişiklik gerektirmez.

• FEC0::/10 (1111 1110 11) ön-ekini kullanır. • Genel adres bloğunun 1/1024'unu kullanır.

Site-Local Unicast Adresi

Page 37: I pv6 icmp_udp

Link-Local Unicast Adresi• Bu adres link-yerel ön-eki ve EUI-64 arayüz ID'si kullanılarak

otomatik olarak atanır.• Link-yerel ön-eki FE80::/10 (1111 1110 11)'dir.• Yerel bağlantılarda, global bağlantı gerekmeyen

durumlarda kullanılır.• IPv6 konuşan birimler link-yerel adreslerinden

bağlanabilirler. Ayrıca site-yerel veya global adreslere ihtiyaç duymazlar.

• Yönlendiriciler kaynak ve hedef adres alanlarında link-yerel adresler olan paketleri göndermemelidirler.

• Genel adres bloğunun 1/1024'unu kullanır.

Page 38: I pv6 icmp_udp

Özel IP Adresleri

• Belirsiz IP Adresi: Birim bir adrese sahip olmadığı zaman bu adresi kullanır. Adres çakışması anında da bu adres kullanılır.

• 0:0:0:0:0:0:0:0 veya 0::0 veya ::/128 olarak ifade edilir. Bu adres kesinlikle kullanılmamalıdır.

• Loopback IP Adresi: Yerel arayüz adresini ifade eder. IPv4'deki 127.0.0.1 adresine benzer.

• 0:0:0:0:0:0:0:1 veya ::1 olarak ifade edilir. Bu adres fiziksel arayüzlere atanamaz ve yönlendiriciler bu adrese sahip paketleri yönlendirmez.

Page 39: I pv6 icmp_udp

IPv4 Uyumlu IPv6 Adresi • IPv6 paketlerini dinamik bir şekilde IPv6 tünellerinden

geçirmek için kullanılır.• Bu adres 0:0:0:0:0:0:A:B:C:D veya ::A:B:C:D şeklindedir.• Bu adres IPv6 adresi olarak kullanılır. IPv4 adresi ise

son 32-bit içerisine yerleştirilmiş olarak saklanır.• Bu adresi kullanmak için birimlerin IPv4 ve IPv6

protokollerini desteklemesi gerekmektedir.

Page 40: I pv6 icmp_udp

IPv4 Bağlantılı IPv6 Adresi (IPv4-Mappad IPv6 Adres)

• Bu adres 0:0:0:0:0:FFFF:A:B:C:D veya :FFFF:A:B:C:D şeklindedir.

• Bu adres IPv6 adresi olarak kullanılır. IPv4 adresi ise son 32-bit içerisine yerleştirilmiş olarak saklanır.

• Bu adresi kullanmak için birimlerin IPv4 ve IPv6 protokollerini desteklemesi gerekmektedir.

Page 41: I pv6 icmp_udp

IPv6 Multicast Adresi• FF00::/8 (1111 1111) ön-ekine sahiptir. Genel adres bloğunun 1/256'sini

kullanır. • Bu adrese gönderilen paketler bu adresle tanımlı bütün birimlere

gönderilir.• Flag biti (4-bit) adres ömrünü belirler. Scope biti (4-bit) adresin tipini

belirler.• Ipv6 Multicast adresler için TTL (Time-to-Live) süresi yoktur, bunun yerine

flag alanındaki değerler kullanılır.

Page 42: I pv6 icmp_udp

IPv6 Multicast Adresi

• FF00:: -FF0F:: olan multicast adres bloğunda aşağıdaki adresler özel anlam ifade eder.

• FF01::1 –Bütün birimler birim-yerel alanındadır. (Yani sadece bu birim için)

• FF02::1 –Bütün birimler link-yereldir. (Link-yerel alanı)• FF01::2 –Bütün yönlendiriciler birim-yerel alanındadır.• FF02::2 –Bütün yönlendiriciler link-yerel alanındadır.• FF05::2 –Bütün yönlendiriciler site-yerel alanındadır.• FF02::1:FFXX:XXXX –İstemli-birim multicast adresidir.

XX:XXXX ifadesi IPv6 adresinin son 24 bitinden oluşur.• TTL değerleri multicast adreslerinde

kullanılmamaktadır.

Page 43: I pv6 icmp_udp

IPv6 Multicast Adresi• Bütün birimler aşağıdaki grup adreslerine bağlanmak zorundadırlar.• FF02:0:0:0:0:0:0:1 link-yerel alanı grup adresi• FF02:0:0:0:0:1:FF00:0000/104 İstemli-birim grup adresi• Ayrıca bütün yönlendiriciler FF02:0:0:0:0:0:0:2 grup adresine

bağlanmalıdırlar.• IPv6 İstemli-birim multicast adresi:• Komşu belirlemede kullanılan bir adres tipidir.• IPv6 unicast veya anycast adresine karşılık gelen multicast grup

adresidir.• Birim elindeki her anycast ve unicast adres için böyle bir gruba

girmelidir.

Page 44: I pv6 icmp_udp

IPv6 Anycast Adresi

• Anycast adresler ise hepsi aynı yerde olan birden çok bilgisayarın ortak adresidir. Bu adrese bir paket yollanınca en kısa yoldan yönlendirilip bu gruba üye bilgisayarlardan sadece birine ve genellikle en uygun olanına gider. Birbirinin yedegi olan bilgisayarlarda bilgisayarlardan birinin arızalanması halinde bile kullanıcılar bunu anlayamayacaktır

• Bu adresler birden çok arayüze atanmış global unicast adresidir. Genelde adresler birden çok birime aittir. Bu adrese gönderilen paketler en yalın arayüze gönderilir. Bu adres çeşidi global unicast adresinden gözle ayırt edilemez. Bu adres kaynak adresi olarak kullanılmamalıdır.

Page 45: I pv6 icmp_udp

IPv6 Adres Aralığı:• Başlangıç Biti IPv6 Notasyonu

Kullanım yeri• 000 ::/3 Özel adres tipleri• 001 2000::/3 Tahsis

edilmis genel unicast adresleri

• 01 - 1111 1110 0 4000::/2 - FE00::/9 Rezerv edilmiş genel unicast adresleri

• 1111 1110 10 FE80::/10 Bağlantı-yerel unicast adresleri

• 1111 1110 11 FEC0::/10 Site-yerel unicast adresleri

• 1111 1111 FF00::/8 Multicast adresleri

Page 46: I pv6 icmp_udp

ICMP (Internet Control Message Protokol)

• Internette beklenmeyen bir durum ortaya çıktığında, bu durum ICMP (Internet Control Message Protocol) mesajları kullanılarak bildirilir. Beklenmedik durumlar olası bir hatayı ya da sorunu ifade eder çoğu kez. ICMP mesajları bu sorunları bildirmek ya da algılamak için kullanılır ve çoğunlukla yönlendiriciler tarafından oluşturulurlar.

• ICMP mesajlarını sadece hata durumunda değil ağ hakkında bilgi sahibi olmak için de kullanabiliriz.

Page 47: I pv6 icmp_udp

ICMP (Internet Control Message Protokol)

• ICMP mesajlarını taşıyan datagramların önceliği yoktur! Eğer ICMP mesajı taşıyan bir datagramda hata olursa, başka bir hata mesajı (ICMP mesajı) gönderilmez. Bunun nedeni hata mesajları ile ağdaki trafiği yoğunlaştırmamaktır.

• ICMP mesajları IP paketleri tarafından kapsüllenerek taşınır. Bu IP paketleri daha sonra onları taşıyan alt ağlarda kullanılan çerçeveler tarafından kapsüllenir.

MAC header IP header ICMP header Data :::

Page 48: I pv6 icmp_udp

ICMP header:

00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Type Code ICMP header checksum

Data :::

Type. 8 bits. Mesaj tipini belirler. Mesaj tipleri aşağıdaki gibidir:Code. 8 bits. Mesaj tipinin alt gruplarını tanımlamak suretiyle daha detaylı tanımlama sağlar. Kod tipleri aşağıdaki gibidir:

Page 49: I pv6 icmp_udp

Type Code Description

0 - Echo Reply(Yankı cevabı) 0

1 and 2 Reserved

3 - Destination Unreachable (Hedef Ulaşılamaz)

0 Destination network unreachable (Ağ Ulaşılamaz)

1 Destination host unreachable (Hedef Ulaşılamaz)

2 Destination protocol unreachable (Protokol Ulaşılamaz)

3 Destination port unreachable (Port Ulaşılamaz)

4 Fragmentation required, and DF flag set (Parçalama Gerekli ama izin yok)

5 Source route failed (Kaynaklı Yönlendirme başarısız)

6 Destination network unknown (Bilinmeyen Hedef Ağ)

7 Destination host unknown (Bilinmeyen Hedef Bilgisayar)

8 Source host isolated (Kaynak Tecrit Edilmiş)

9 Network administratively prohibited (Hedef Ağa Erişim Yasaklanmış)

10 Host administratively prohibited (Hedef Bilgisayara Erişim Yasaklanmış)

11 Network unreachable for TOS (Belirtilen Servis Hedef Ağ Üzerinde Erişilemez)

12 Host unreachable for TOS (Servis Türü için Bilgisayar Erişilemez)

13 Communication administratively prohibited (Hedef ile iletişim yasaklanmış)

Page 50: I pv6 icmp_udp

4 - Source Quench (Sıkışık trafik) 0 Source quench (congestion control)

5 - Redirect Message (Yeni Rota

Yönlendirme)

0Redirect Datagram for the Network (Ağ

için Yönlendirme)

1Redirect Datagram for the Host

(Bilgisayar için Yönlendirme)

2Redirect Datagram for the TOS &

network (Servis ve Ağ için Yönlendirme)

3Redirect Datagram for the TOS & host

(Servis ve Bilgisayar için Yönlendirme)

6 - Alternate Host Address (Alternatif

Adres)

Alternate Host Address (Alternatif

Bilgisayar Adresi)

7 Reserved

Page 51: I pv6 icmp_udp

8 - Echo Request (Yankı isteği) 0 Echo request

9 - Router Advertisement

(Yönlendirici Bildirimi)0 Router Advertisement

10 - Router Solicitation (Router

Şeçimi)0 Router discovery/selection/solicitation

11 - Time Exceeded (Zaman

aşımı)

0TTL expired in transit (İletimde TTL Süresi

Sıfırlanması)

1Fragment reassembly time exceeded (Parça

Birleştirme Zaman Aşımı)

12 - Parameter Problem: Bad IP

header (Parametre Hatası)

0Pointer indicates the error (İşaretçi hatayı

gösterir)

1Missing a required option (Gerekli opsiyon

eksikliği)

2 Bad length (Datagram uzunluk hatası)

Page 52: I pv6 icmp_udp

13 - Timestamp (Zaman belirteci) 0 Timestamp

14 - Timestamp Reply (Zaman Belirteci

Cevabı)0 Timestamp reply

15 - Information Request (Bilgi İsteği) 0 Information Request

16 - Information Reply (Bilgi isteği

cevabı)0 Information Reply

17 - Address Mask Request (Adres

Mask isteği)0 Address Mask Request

18 - Address Mask Reply (Adres Mask

cevabı)0 Address Mask Reply

19 Reserved for security

20 through 29 Reserved for robustness experiment

Page 53: I pv6 icmp_udp

30 - Traceroute 0 Information Request

31 - Datagram Conversion Error (Datagram dönüşüm Hatası)

32 - Mobile Host Redirect (Mobil Yönlendirme)

33 - Where-Are-You (originally meant for IPv6) (IPv6 Neredesin)

34 - Here-I-Am (originally meant for IPv6) (IPv6 Buradayım)

35 - Mobile Registration Request (Mobil Kayıt isteği)

36 - Mobile Registration Reply (Mobil Kayıt cevabı)

37 - Domain Name Request (Domain İsmi isteği)

38 - Domain Name Reply (Domain ismi cevabı)

39 - SKIP Algorithm Discovery Protocol,

Simple Key-Management for Internet Protocol

40 - Photuris, Security failures

41 - ICMP for experimental mobility protocols such as Seamoby

[RFC4065]

42 through 255 Reserved

Page 54: I pv6 icmp_udp

ICMP Header

• ICMP Header Checksum. 16 bits. ICMP mesajının hata denetiminin yapılabilmesi amacıyla kullanılır.

• Data. Bu alan değişken boydadır. Pek çok ICMP mesaj tipinde vardır. Bu alanda IP başlığı, kaynak ve hedef adresleri gibi bilgiler vardır. Bu alanın sonunda 64 bitlik orijinal veri paketi yer alır. Bu 64 bitlik alan Aktarım Katmanı protokollerine (TCP, UDP) ait bilgiler içerir.

Page 55: I pv6 icmp_udp

ICMP mesaj tiplerinden bazıları aşağıda gösterilmiştir:

• Hedef Ulaşılamaz (Destination Unreachable)• Zaman Aşımı (Time Excedded)• Parametre Problemi (Parameter Problem)• Kaynak Yavaşlatma (Source Quench)• Yeniden Yönlendir (Redirect)• Eko (Echo)• Eko Cevabı (Echo Reply)• Adres Maskesi İsteği (Address Mask Request)• Adres Maskesi Cevabı (Address Mask Reply)• Zaman Damgalama İsteği (Timestamp Request)• Zaman Damgalama Cevabı (Timestamp Reply)• Bilgi İsteği/Cevabı (Information Request/Reply)

Page 56: I pv6 icmp_udp

Hedef Ulaşılamaz ICMP mesajı (DESTINATION UNREACHABLE)

• Bu mesaj şu durumlarda oluşur:• Bir yönlendirici hedef hosta nasıl erişeceğini bilmiyorsa IP paketini

gönderen hosta bu mesaj iletilir. • Datagram paketinde hedef yol belirlenmişse ve bu yol tanımı ile

ağın mevcut durumu uyuşmuyorsa (değişiklik olmuş ise) bu mesaj kaynak hosta gönderilir.

• Bir yönlendirici MTU değeri büyük bir datagramı MTU değeri düşük bir ağa iletmek istediğinde parçalama (Don’t Fragment) bayrağı kurulmuş ise ve datagramı parçalayamazsa bu mesaj kaynak hosta gönderilir.

• Hedef hostta gerekli protokol modülü yüklü değilse veya işlem portu aktif değilse, hedef host datagram paketi üzerinde işlem yapamaz ve bu mesajla kaynak hosta bilgi verilir.

Page 57: I pv6 icmp_udp

Hedef Ulaşılamaz ICMP mesajı (DESTINATION UNREACHABLE)

00

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

Type Code ICMP header checksum

unused Next-Hop MTU.

IP header + the first 8 bytes of the original datagram's data.

Page 58: I pv6 icmp_udp

Zaman Aşımı ICMP mesajı (TIME EXCEEDED)

• iki durumda oluşturulur:

• 1) Datagram üzerindeki yaşam-süresi alanı (Time-to-Live) sıfıra ulaştığında datagram hala varış adresine ulaşmadıysa. Bu durumda datagram yok edilir.

• 2) Parçalanmış bir datagramın parçaları birleştirilirken birleştirme süresi aşılırsa. Bu durumda da gelen parçalar yok edilir.

Page 59: I pv6 icmp_udp

Zaman Aşımı ICMP mesajı (TIME EXCEEDED)

00

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

Type Code ICMP header checksum

unused

IP header + the first 64 bits of the original datagram's data.

Page 60: I pv6 icmp_udp

Parametre Problemi ICMP mesajı (PARAMETER PROBLEM)

• Eğer bir yönlendirici veya host datagram paketi üzerinde işlem yapacağı zaman paketin başlık parametrelerinde bir hata bulurlarsa bu datagram paketi atılır ve kaynak hosta “Parameter Problem” mesajı gönderilir.

00

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

Type Code ICMP header checksum

Pointer unused

IP header + the first 8 bytes of the original datagram's data.

Page 61: I pv6 icmp_udp

Kaynak Yavaşlatma ICMP mesajı (SOURCE QUENCH)

• Bu mesaj tipi temel akış (flow) kontrol işlevini yerine getirir. Eğer bir yönlendirici veya hosta işleyebileceğinden daha fazla paket gönderilirse host veya yönlendirici işleyemedikleri paketleri atarlar, daha sonra bu durumu “Source Quench (SQ)” paketiyle kaynak hosta bildirirler. Bu uyarı paketini alan kaynak host paket gönderme hızını azaltır.

• Kaynak host veya yönlendirici zamanla paket gönderme hızını yavaş yavaş arttırır. Bu durum yeni bir SQ paketi alınıncaya kadar devam eder.

Page 62: I pv6 icmp_udp

Kaynak Yavaşlatma ICMP mesajı (SOURCE QUENCH)

00

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

Type Code ICMP header checksum

unused

IP header + the first 64 bits of the original datagram's data.

Page 63: I pv6 icmp_udp

Yeniden Yönlendir ICMP mesajı (REDIRECT)

• Yönlendirici tarafından, aynı ağ üzerinde bağlı, diğer hostlara gönderilen bir masaj türüdür. Bu mesaj sayesinde ağ üzerinde hosta seçilebilecek en iyi yol hakkında bilgi verilir. Ayrıca yönlendirici paketin yanlış yönlendirildiğini fark ettiğinde bu mesajı yollar ve olası bir problemi kaynak hosta bildirir.

Page 64: I pv6 icmp_udp

Yeniden Yönlendir ICMP mesajı (REDIRECT)

00

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

Type Code ICMP header checksum

IP address

IP header + the first 64 bits of the original datagram's data.

Page 65: I pv6 icmp_udp

Yeniden Yönlendir

Page 66: I pv6 icmp_udp

Yankı/Yankı cevabı ICMP mesajları (ECHO/ECHO REPLY)

• Verilen bir IP düğümüne erişilip/erişilmediğini kontrol etmek için kullanılan mesajlardır.

00

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

Type Code ICMP header checksum

Identifier Sequence number

Data :::

Identifier ve Squence gönderilen yankı istek ve cevap mesajlarının eşleşmesinin sağlanması amacı ile kullanılır.

Page 67: I pv6 icmp_udp

Adres Maskesi İsteği/Cevabı ICMP mesajları (ADDRESS MASK REQUEST/ ADDRESS MASK REPLY)

• Bir host bağlı olduğu ağın maskesini öğrenmek istediğinde bu mesajı gönderir. Ağdaki bir yönlendirici tarafından hostun yayınladığı bu mesaj alınır ve gerekli maske bilgileri işlenerek istemci hosta Adres Maske Cevabı (Adress Mask Reply) paketiyle geri gönderilir.

Page 68: I pv6 icmp_udp

Adres Maskesi İsteği/Cevabı ICMP mesajları (ADDRESS MASK REQUEST/ ADDRESS MASK REPLY)

00

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

Type Code ICMP header checksum

Identifier Sequence number

Address mask.

Page 69: I pv6 icmp_udp

Zaman Damgası İsteği/Cevabı ICMP mesajları (TIMESTAMP REQUEST/ TIMESTAMP REPLY)

• Bu ICMP paketi ağın geçilebilirlik karakteristiğini belirlemede kullanılan mekanizmanın bir parçasıdır. Time Stamp göndericisi zaman bilgisini Bilgi (Information-Data alanı) kısmına yerleştirdiği bir ICMP paketini hedef gönderir. Alıcı bu zaman bilgisini alır ve alım için geçen bu süreyi hesaplar, daha sonra Zaman Damgası Cevabı (Time Stamp Reply) paketiyle bu süreyi kaynak hosta bildirir. Echo cevabına benzerdir fakat tek fark zaman damgasıyla birlikte olmasıdır.

Page 70: I pv6 icmp_udp

Zaman Damgası İsteği/Cevabı ICMP mesajları (TIMESTAMP REQUEST/ TIMESTAMP REPLY)

00

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

Type Code ICMP header checksum

Identifier Sequence number

Originate timestamp

Receive timestamp

Transmit timestamp

00

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

Type Code ICMP header checksum

Identifier Sequence number

Originate timestamp

TIMESTAMP REQUEST

TIMESTAMP REPLY

Page 71: I pv6 icmp_udp

Bilgi İsteği (Information Request)

• Bir hostun bağlı olduğu ağın adresini öğrenebilmek için ağa gönderdiği bir keşif paketidir. İstekte bulunan host, IP paketinin hedef ve kaynak IP adres kısımlarını “0” ile doldurarak ağa bu paketi gönderir. Daha sonra hostun bağlı olduğu ağın adresi hosta geri döner.

Page 72: I pv6 icmp_udp

Bilgi İsteği (Information Request)

00

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

Type Code ICMP header checksum

Identifier Sequence number

Page 73: I pv6 icmp_udp

User Datagram Protokolü (UDP)

• UDP, TCP/IP protokol grubunun iki aktarım katmanı protokolünden birisidir. Ancak UDP iletiminde sağlama yapılmadığı için gönderim garantisi olmaz. UDP, onay (acknowledge) gönderip alacak mekanizmalara sahip değildir. Hedefe ulaşan paketler üzerinde sıralama yapıp doğru veri aktarımını da sağlayacak mekanizmalara sahip değildir. Uygulamalar güvenli ve sıralı paket dağıtımı gerektiriyorsa UDP yerine TCP protokolü tercih edilmelidir. Yayın (Broadcast) iletiminde, az miktardaki verilerin iletiminde UDP paketleri kullanılır.

Page 74: I pv6 icmp_udp

User Datagram Protokolü (UDP)

• UDP iletimi, gönderimin garanti edilmediği bağlantısız (connectionless) türü bir iletişim kurar. İşimizde hız gerekliyse ve verilerin güvenli bir şekilde ulaşıp ulaşmadığı çok önemli değilse, UDP tercihi doğru bir tercih olacaktır. Örnek olarak 161 nolu portu kullanan SNMP (Simple Network Management Protocol : Basit Ağ Yönetimi Protokolü) verilebilir.

• UDP, minimum protokol yükü (overhead) ile uygulama programları arasında basit bir aktarım servisi sağlar.

Page 75: I pv6 icmp_udp

Port numaralarıyla Demultiplexing:

• IP, internet üzerinde iki host arasında haberleşmeye izin veren yol belirleme fonksiyonlarını destekler ve paket dağıtımı yapar. IP, UDP port numaraları aracılığıyla pek çok datagram paketi arasında ayrıştırma yapabilecek mekanizmaları içerir. Bu yolla bir çok uygulamanın alıcı host üzerinde aynı anda çalışmasına ve ağ üzerinden haberleşmesine olanak tanır.

• Port numaraları standart olarak belirlenmiş numaralar olup haberleşme sırasında atanan numaralar değillerdir.

Page 76: I pv6 icmp_udp

Port numaraları örneği

Uygulama 1 Uygulama 2 Uygulama 3 Uygulama 4

Port 1 Port 2 Port 3 Port 4

UDP paketleri internet üzerinde IP paketleri içinde taşınır:

Page 77: I pv6 icmp_udp

UDP Paket Formatı

Source Port(Kaynak Port)-16 bit Destination Port(Hedef Port)-16 bit

Length(Uzunluk)-16 bit Checksum(Hata Kontrolü)-16 bit

Data(Veri)

Page 78: I pv6 icmp_udp

UDP Paket Formatı• Kaynak Port (Source Port): Opsiyonel bir alandır.

Gönderilen işlemin portunu gösterir. Eğer gönderen host bir kaynak numarasına sahip değilse bu alan “0” ile doludur.

• Hedef Port (Destination Port): Hedef host içerisinde, işlemlere uygun ayrımları yapmak için kullanılır.

• Uzunluk (Length): UDP veri ve UDP başlığının bayt cinsinden toplam uzunluğudur.

• Hata Kontrolü (Checksum): Opsiyonel bir alandır. Hata kontrol mekanizması sağlar. Eğer hata kontrolü yapılmayacaksa bu alan “0” ile doludur.