IPv6 Multicast

IPv6 ile gelen yeniliklerden biri de sağladığı yeni yapılarla alışılan broadcast kavramını ortadan kaldırıyor olması. Yerine her derde deva multicast sisteminin gelmesi. Tabi bu yenilik ile internet grup yönetim protokollerinin de önemi artıyor.

Öncelikle ilk 5 paragrafta kısaca IPv4’teki sistemi inceleyelim. Bilindiği üzere IPv4’te ARP ve DHCP paketleri ile talep broadcast adresler (255.255.255.255) kullanılır. Bu adresler, sadece bir noktaya gitmesi gerekirken, paketlerin yerel ağ üzerindeki herkese gitmesini sağlar. Diğer alıcılar kendilerine gelmemesi gereken bir paket için işlem yapmak ve silmek durumunda kalırlar. Bu durum bant genişliği kaybı yarattığı gibi, belirli miktardan fazla olması iletişimde kesintilere de yolaçmaktadır.

Multicast: veri trafiğinin birden çok kullanıcıya ulaştırılmasıdır. Bu radyo yayını, video konferans gibi uygulamalarda kullanılır. IP protokolünün yanısıra MAC protokolü de çoklu veri iletimini sağlar.

Yayının sadece belirli istemcilere gitmesi ağ cihazları üzerinde internet grup yönetim protokolleri ile sağlanır. Bu protokoller hem hangi yayınların bulunduğunu öğrenir hem de bu yayınları talep eden kullanıcıları belirler ve düğüm grupları oluşturur. Mesajı tüm ağa göndermek yerine gruplar ile belirlenen kişilere gönderir. IP protokolünün D sınıfındaki her adres bir grubu tanımlar.

IP seviyesinde çoklu gönderimin sağlanabilmesi için, yönlendirici veya OSI 3. seviye desteği olan anahtarlayıcıların (switch) çoklu gönderim özelliğini desteklemesi gerekmektedir. IPv4’te IGMP, IPv6’da MLD çoklu gönderim için kullanılan protokollerdir. Eğer ağ cihazında gerekli ayarlama yapılmadıysa gelen paketleri broadcast yapar.

IGMP’de yönlendiriciler yerel ağdaki makinelere (224.0.0.1 adresine) paket yollar ve kendisinin çoklu yayın kaynağı olduğunu ve üyesi oldukları grupları söylemelerini ister. İstemciler düzenli olarak üyelik raporu (membership report) ve katılım isteği (join) gönderirler. Böylece yönlendiricide istemcilerin güncel bilgisi bulunur.

IPv6’da FF00::/8 multicast trafiği için ayrılmıştır. Yani 128 bitlik adresin ilk 8 bitinin 1 olması multicast adres olduğunu belirtir. Bunun dışında 9-12 bitler bayrak(flag) bitleri, 13-16 bitler kapsam(scope) bitlerini, geriye kalan ise yayın kaynağının multicast grup numarasıdır. Scope ölçeğine örnek olarak:

Multicast adreslere örnek olarak:

MLD protokolünde de IGMP’de olduğu gibi istemci istediği yayınları yönlendiriciye söyler. MLD snooping ise 2. seviye anahtarlama cihazlarının (switch) MLD iletişimine müdahale etmesidir. Switch MLD iletişimini dinler ve istemci porta istenen yayının bir kopyasını iletir. Bu özelliği desteklemeyen switchlerde multicast yayınlar broadcast yapılır.

IPv6’da ARP yerine NDP (neighbor discovery protocol) kullanılır. ARP tablosu yerine Adres çözümleme ve aynı adres tespiti için  solicited node multicast address kullanılır. Bu adres IPv6 unicast adresten türetilir ve sorguda hedef IPv6 adresi olarak kullanılır.

FF02::1:FF unicast adresin son 24 biti
Hedef Unicast adres : 2001:a98:8000:5:8c72:2fb6:31a7:909a
Solicited node m.a.:                                FF02::1:FFa7:909a

Hedef MAC adresi olarak ise multicast prefix (33:33) ve unicast IPv6 son 32 biti kullanılır.
Hedef Unicast adres : 2001:a98:8000:5:8c72:2fb6:31a7:909a
Hedef mac:                                           33:33:31:a7:90:9a

IPv6 hakkında genel bilgi için
http://www.agciyiz.net/index.php/servis-ve-uygulamalar/ipv6-bolum-1/
IPv6 Adres Çözümleme hakkında ayrıntılı bilgi için
http://www.agciyiz.net/index.php/routing/ipv6-neighbor-discovery/
Solicited-Node Multicast Addresses hakkında ayrıntılı bilgi için
http://www.agciyiz.net/index.php/servis-ve-uygulamalar/solicited-node-multicast-addresses/

İstemci kullanacağı IPv6 adresinin ağ üzerinde kullanımda olup olmadığını benzer şekilde kontrol eder. Adresi kullanan yoksa kendisi kullanır. Bu sorgu FE80::2AA:FF:FE22:2222 adresi için:

ICMPv6 Type 135 (Neighbor Solicitation)
Kaynak IPv6 Adres:        ::
Hedef IPv6 Adres:          FF02::2AA:FF:FE22:2222
Hedef MAC:                   33:33:FF:22:22:22

Adresi kullanan bilgisayarın cevabı:
ICMPv6 Type 136 (Neighbor Advertisement)
Kaynak IPv6 Adres:        FE80::2AA:FF:FE22:2222
Hedef IPv6 Adres:          FF02::1
Hedef MAC:                   33:33:00:00:00:01

Bunların yanısıra yönlendiricilerin yaptığı “prefix advertisement” IPv6 multicast’e örnek olarak verilebilir. Prefix advertisement ile yönlendiriciler network prefix’ini, kullanım süresini, yönlendirici bilgilerini FF02::1 adresine yani yerel ağdaki bütün uçlara yollarlar.

Sonuç olarak, IPv4’de broadcast ile yapılan trafik aynı ağdaki her istemciye ulaşarak gereksiz kaynak tüketimine de sebep olmaktaydı. IPv6’da eğer yönlendirici (router) ve ağ anahtar cihazları (switch) MLD protokolünü destekler ve gereken konfigürasyon bu cihazlarda oluşturulursa bu trafik sadece hizmet almak isteyen istemciye ulaştırılıp gereksiz bant genişliği tüketimi engellenebilir.

Bu durum güvenlik sorunlarına biraz çözüm olacak gibi gözükmekte olsa da halen daha DHCP atağı, ND(Neighbor Discovery) zehirleme atağı gibi sorunlara çözüm olmamaktadır.

Referans:

“IPv6 Multicast” için 2 cevap

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir