IPv6 Bağlantı yerel ve Site-yerel Adresleri
IPv6 bağlantı-yerel ve site-yerel adresleri kapsamlı adresler olarak adlandırılır. Windows Yuvaları (Winsock) API'si, kapsamı belirlenmiş adreslerle kullanılmak üzere sockaddr_in6 yapısındaki sin6_scope_id üyesini destekler. IPv6 bağlantı yerel adresleri için (fe80::/10 ön eki), sockaddr_in6 yapısındaki sin6_scope_id üye arabirim numarasıdır. IPv6 site yerel adresleri için (fec0::/10 ön eki), sockaddr_in6 yapısındaki sin6_scope_id üyesi bir site tanımlayıcısıdır.
5. arabirimde bağlantı yerel IPv6 adresi örneği aşağıdaki gibidir:
fe80::208:74ff:feda:625c%5
Aşağıdaki komut, Yerel bir bilgisayarda IPv6'yi sorgulamak ve yapılandırmak için Windows XP Service Pack 1 (SP1) ve sonraki sürümlerinde kullanılabilir:
Netsh.exe komutları kullanılarak yapılan yapılandırma değişiklikleri kalıcıdır ve bilgisayar veya IPv6 protokolü yeniden başlatıldığında kaybolmaz.
IPv6 yapılandırması ve yönetimi, Windows XP Service Pack 1'dan (SP1) önce, IPv6'yı yapılandırmak ve yönetmek için birkaç eski komut satırı aracı (Net.exe, Ipv6.exeve Ipsec6.exe) kullanıyordu. Bu eski araçlar kullanıldığında, IPv6 değişiklikleri kalıcı değildir ve bilgisayar veya IPv6 protokolü yeniden başlatıldığında kaybolur. Bu eski komut satırı araçları yalnızca Windows XP'de desteklenir.
SP1 yüklü Windows XP'de, aşağıdaki komut arabirim dizini, arabirim adı ve diğer çeşitli arabirim özellikleri dahil olmak üzere yerel bir bilgisayardaki IPv6 arabirimlerinin listesini görüntüler.
netsh interface ipv6 show interface
SP1 ile Windows XP'de, aşağıdaki komut bir arabirim diziniyle ilişkili site tanımlayıcısını değiştirir.
netsh arabirimi ipv6 set interface <InterfaceIndex veya Name> siteid=value
Windows XP'de, aşağıdaki eski komut site yerel adresiyle ilişkili site tanımlayıcısını da 3 olarak değiştirir.
ipv6 rtu fec0::/10 3
Kapsamlı bir adres gönderiyor veya bağlanıyorsanız, sockaddr_in6 yapısındaki sin6_scope_id üyesi belirsiz kapsamlı bir adresi temsil eden belirtilmemiş (sıfır) bırakılabilir. Örneğin, aşağıdaki yerel bağlantı adresi belirsizdir:
fe80::10
Kapsamlı bir adrese bağlanıyorsanız, sockaddr_in6 yapısındaki sin6_scope_id üyesi, bağlantı yerel adresi için geçerli bir arabirim numarası veya site-yerel adresi için site tanımlayıcısı belirten sıfır olmayan bir değer içermelidir.
Belirsiz Kapsamlı Adresler
Kapsamlı bir adres gönderiyor veya bağlanıyorsanız ve sockaddr_in6 yapısında sin6_scope_id üyesini belirtmediyseniz, kapsamı belirlenmiş adres belirsizdir. Bu sorunu çözmek için önce IPv6 protokolü yuvayı bir kaynak adrese bağlayıp bağlamadığınız belirler. Bu durumda, ilişkili kaynak adresi bir arabirim numarası veya site tanımlayıcısı sağlayarak belirsizliği giderir.
Kapsamlı bir adres gönderiyor veya bağlanıyorsanız ve sin6_scope_id üyesini belirtmediyseniz veya bir kaynak adresi bağlamadıysanız, IPv6 protokolü yönlendirme tablosunu denetler. Örneğin, aşağıdaki komut yerel bir bilgisayarda IPv6 yönlendirme tablosunu görüntüler:
netsh interface ipv6 show route
No Manual 256 fe80::/64 13 Local Area Connection
No Manual 256 fe80::/64 14 Wireless Network Connection
Bu, bağlantı yerel adreslerinin varsayılan olarak #13 ve #14 arabirimlerine bağlı olarak ele alınmadığını gösterir.
Yerel bilgisayarda birden çok ağ bağdaştırıcısı olduğunda belirsizlik oluşur. Örneğin, yukarıdaki netsh komutu iki ağ arabirimi (Yerel Ağ Bağlantısı ve Kablosuz Ağ Bağlantısı) olduğunu gösterir. Uygulama kapsam kimliği olmayan bir hedef bağlantı yerel adresi (örneğin, fe80::10) belirttiğinde, paketi göndermek için hangi bağdaştırıcının kullanılacağı net değildir. Yalnızca bağlantı yerel tek noktaya yayın (fe80::/64) veya bağlantı kapsamı çok noktaya yayın (ff00::/8) IPv6 hedef adresi paket gönderirken kapsam kimliğine sahip olmayabilir.
Komşu Bulma
sockaddr_in6 yapısında sin6_scope_id üyesini belirtmediyseniz, bir kaynak adresi bağlamadıysanız ve bağlantı yerel adresleri için bir yol belirtmediyseniz, IPv6 protokolü hedef bağlantı yerel adresini çözümlemek için Komşu Bulma'yı dener. Gönderilen belirli bir paket için bir arabirim denendi. Denenen bu ilk arabirim en çok tercih edilen arabirim olarak kabul edilir. Komşu Bulma bir arabirimdeki bağlantı yerel adresini çözümleyemezse, gönderilecek paket bırakılır ve sistem hedef bağlantı-yerel adresine bu arabirim üzerinden ulaşılamadığını hatırlar. Aynı koşulların tümü altında gönderilecek bir sonraki pakette, Komşu Bulma için farklı bir arabirim denendi. Bu işlem, Komşu Bulma hedef bağlantı yerel adresi için yanıt verene veya tüm olası arabirimler denenip başarısız olana kadar her yeni paket için yerel bir bilgisayardaki arabirimlerin her birinde devam eder. Komşuyu çözümleme girişimi her başarısız olduğunda, bu komşu için bir arabirim ortadan kalkar.
Hedef bağlantı-yerel adresi çözümleniyorsa, geçerli paketi göndermek için bu arabirim kullanılır. Bu arabirim, aynı yerel bağlantı hedef adresine gönderilen sonraki belirsiz kapsamlı paketler için de kullanılır.
Komşu Bulma tüm arabirimlerde hedef bağlantı yerel adresini çözümleyemezse, sistem paketi en çok tercih edilen arabirimde (ilk arabirim denendi) göndermeye çalışır. Ağ yığını, hedef bağlantı yerel adresini en çok tercih edilen arabirimde çözümlemeye çalışıyor. Komşu Bulma işlemi tüm arabirimlerde başarısız olduktan bir süre sonra ağ yığını işlemi yeniden başlatır ve tüm arabirimlerde hedef bağlantı-yerel adresini çözümlemeyi dener. Şu anda, Komşu Bulma'nın tüm arabirimlerde yeniden denendiğinde bu zaman aralığı 60 saniyedir. Ancak, bu zaman aralığı Windows sürümlerinde değişebilir ve bir uygulama tarafından varsayılmamalıdır.
Not
Bir uygulama, Komşu Bulma bağlantı yerel adresini çözümledikten sonra aynı bağlantı yerel adresini farklı bir arabirime bağlarsa, bu, arabirimi Komşu Bulma tarafından döndürülen bağlantı yerel hedef adresiyle geçersiz kılmaz.
IP sürüm 6 için Komşu Bulma hakkında daha fazla bilgi için bkz. IETF tarafından yayımlanan RFC4861.
İlgili konular