Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
GetIpInterfaceEntry işlevi, yerel bilgisayarda belirtilen arabirim için IP bilgilerini alır.
Sözdizimi
NETIOAPI_API GetIpInterfaceEntry(
_Inout_ PMIB_IPINTERFACE_ROW Row
);
Parametre
-
Satır [in, out]
Başarılı bir dönüşte yerel bilgisayardaki bir arabirim için bilgi alan bir MIB_IPINTERFACE_ROW yapısının işaretçisi. Girişte sürücünüzün InterfaceLuid üyesini veya MIB_IPINTERFACE_ROW InterfaceIndex üyesini bilgilerini almak üzere arabirime ayarlaması gerekir.
Dönüş değeri
GetIpInterfaceEntry işlevi başarılı olursa STATUS_SUCCESS döndürür.
İşlev başarısız olursa GetIpInterfaceEntry aşağıdaki hata kodlarından birini döndürür:
| İade kodu | Açıklama |
|---|---|
| STATUS_INVALID_PARAMETER | İşleve geçersiz bir parametre geçirildi. Satırı parametresinde bir NULL işaretçisi geçirilirse bu hata döndürülür. Satırı parametresinin işaretdiği MIB_IPINTERFACE_ROW yapısının Ailesi üyesi AF_INET veya AF_INET6 olarak belirtilmedi ya da MIB_IPINTERFACE_ROW yapısının üyeleri InterfaceLuid ve InterfaceIndex belirtilmemişti. |
| STATUS_NOT_FOUND | Belirtilen arabirim bulunamadı. İşlev, Satırı parametresinin işaret ettiği MIB_IPINTERFACE_ROW yapısının InterfaceLuid veya InterfaceIndex üyesi tarafından belirtilen ağ arabirimini bulamazsa bu hata döndürülür. |
| Diğer | Döndürülen hatanın ileti dizesini almak için FormatMessage işlevini kullanın. |
Açıklamalar
Girişte, sürücünüz Satır parametresinin işaret MIB_IPINTERFACE_ROW yapısının aşağıdaki üyelerini başlatmalıdır.
Aile
AF_INET veya AF_INET6 olarak ayarlayın.InterfaceLuid veya InterfaceIndex
Bu üyeler daha önce listelenen sırayla kullanılır. Bu nedenle InterfaceLuid belirtilirse, arabirimi belirlemek için bu üye kullanılır. InterfaceLuid üyesi için değer ayarlanmadıysa (bu üyenin değeri sıfır olarak ayarlandı), arabirimi belirlemek için InterfaceIndex üyesi kullanılır.
Çıktıda GetIpInterfaceEntry , Satır parametresinin işaret MIB_IPINTERFACE_ROW yapısının kalan üyelerini doldurur.
Bir MIB_IPINTERFACE_ROW yapısı girdisinin alanlarını varsayılan değerlerle başlatmak için sürücünüz initializeipinterfaceEntryişlevini kullanmalıdır. Sürücü daha sonra değiştirmek istediği MIB_IPINTERFACE_ROW girdisindeki alanları değiştirebilir ve ardından SetIpInterfaceEntry işlevini çağırabilir.
Farklı güvenlik gereksinimleri olan birden çok ağa ayrıcalıksız eşzamanlı erişim bir güvenlik deliği oluşturur ve ayrıcalıksız bir sürücünün verileri yanlışlıkla iki ağ arasında geçirmesini sağlar. Tipik bir örnek, sanal özel ağa (VPN) ve İnternet'e eşzamanlı erişimdir. Windows Server 2003 ve Windows XP işletim sistemleri, Uzaktan Erişim Hizmeti'nin (RAS) diğer arabirimler üzerindeki tüm varsayılan yolların yol ölçümünü artırarak bu tür eşzamanlı erişimi önlediği zayıf bir konak modeli kullanır. Bu nedenle, tüm trafik VPN arabirimi üzerinden yönlendirilir ve diğer ağ bağlantısını kesintiye uğratır.
Windows Vista ve Windows işletim sistemlerinin sonraki sürümlerinde, varsayılan olarak güçlü bir konak modeli kullanılır. Yol aramasında GetBestRoute2işlevi kullanılarak bir kaynak IP adresi belirtilirse, yol araması kaynak IP adresinin arabirimiyle sınırlıdır. Olası yolların listesi, İnternet'e giden trafiği etkinleştiren VPN arabiriminin rotasına bile sahip olmadığından RAS tarafından yapılan yol ölçümü değişikliğinin hiçbir etkisi yoktur. Sürücünüz, MIB_IPINTERFACE_ROW DisableDefaultRoutes üyesini kullanarak bir arabirimde varsayılan yolu kullanmayı devre dışı bırakabilir. VPN istemcileri, VPN istemcisi için bölünmüş tünel gerekli olmadığında bölünmüş tüneli kısıtlamak için bu üyeyi güvenlik önlemi olarak kullanabilir. VPN istemcisi, gerektiğinde DisableDefaultRoutes üyesini TRUE ayarlamak için SetIpInterfaceEntry işlevini çağırabilir. VPN istemcisi, GetIpInterfaceEntry işlevini çağırarak DisableDefaultRoutes üyesinin geçerli durumunu sorgulayabilir.
Gereksinim -leri
Hedef platform |
Evrensel |
Sürüm |
Windows Vista ve Windows işletim sistemlerinin sonraki sürümlerinde kullanılabilir. |
Üstbilgi |
Netioapi.h (Netioapi.h içerir) |
Kütüphane |
Netio.lib |
IRQL |
< DISPATCH_LEVEL |