I pv6 icmp_udp
-
Upload
gazi-boete -
Category
Education
-
view
1.101 -
download
0
description
Transcript of I pv6 icmp_udp
IPv6 Internet Protocol Version 6
IPng (Internet Protocol Next Generation)
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.
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).
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.
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).
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.
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
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.
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.
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.
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.
Ana IPv6 Başlığı
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.
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.
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.
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:
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
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.
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.
Sonraki Başlık (Next Header)
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)
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.
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.
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:
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.
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.
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.
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.
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)
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
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.
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.
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.
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.
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.
• 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
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.
Ö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.
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.
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.
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.
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.
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.
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.
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
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.
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 :::
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:
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ış)
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
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ı)
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
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
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.
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)
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.
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.
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.
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.
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.
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.
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.
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.
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.
Yeniden Yönlendir
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.
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.
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.
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.
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
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.
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
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.
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.
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.
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:
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)
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.