Bagikan melalui


Fungsi GetIpInterfaceEntry (netioapi.h)

Fungsi GetIpInterfaceEntry mengambil informasi IP untuk antarmuka yang ditentukan di komputer lokal.

Sintaks

IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API GetIpInterfaceEntry(
  [in, out] PMIB_IPINTERFACE_ROW Row
);

Parameter

[in, out] Row

Penunjuk ke struktur MIB_IPINTERFACE_ROW yang, saat pengembalian berhasil, menerima informasi untuk antarmuka di komputer lokal. Pada input, anggota InterfaceLuid atau InterfaceIndexdari MIB_IPINTERFACE_ROW harus diatur ke antarmuka untuk mengambil informasi.

Nilai kembali

Jika fungsi berhasil, nilai yang dikembalikan NO_ERROR.

Jika fungsi gagal, nilai yang dikembalikan adalah salah satu kode kesalahan berikut.

Menampilkan kode Deskripsi
ERROR_FILE_NOT_FOUND
Sistem tidak dapat menemukan file yang ditentukan. Kesalahan ini dikembalikan jika antarmuka jaringan LUID atau indeks antarmuka yang ditentukan oleh anggota InterfaceLuid atau InterfaceIndexdari MIB_IPINTERFACE_ROW yang ditunjukkan oleh parameter Baris bukan nilai pada komputer lokal.
ERROR_INVALID_PARAMETER
Parameter yang tidak valid diteruskan ke fungsi. Kesalahan ini dikembalikan jika penunjuk NULL diteruskan dalam parameter Baris , anggota Keluargadari MIB_IPINTERFACE_ROW yang diarahkan oleh parameter Baris tidak ditentukan sebagai AF_INET atau AF_INET6, atau anggota InterfaceLuid atau InterfaceIndex dari MIB_IPINTERFACE_ROW yang ditunjukkan oleh parameter Baris tidak ditentukan.
ERROR_NOT_FOUND
Elemen tidak ditemukan. Kesalahan ini dikembalikan jika antarmuka jaringan yang ditentukan oleh anggota InterfaceLuid atau InterfaceIndex dari struktur MIB_IPINTERFACE_ROW yang ditunjukkan oleh parameter Baris tidak cocok dengan keluarga alamat IP yang ditentukan dalam anggota Keluarga dalam struktur MIB_IPINTERFACE_ROW .
Lainnya
Gunakan fungsi FormatMessage untuk mendapatkan string pesan untuk kesalahan yang dikembalikan.

Keterangan

Fungsi GetIpInterfaceEntry didefinisikan pada Windows Vista dan yang lebih baru.

Pada input, anggota Keluarga dalam struktur MIB_IPINTERFACE_ROW yang ditunjukkan oleh parameter Baris harus diinisialisasi ke AF_INET atau AF_INET6. Selain input, setidaknya salah satu anggota berikut dalam struktur MIB_IPINTERFACE_ROW yang menunjuk ke parameter Baris harus diinisialisasi: InterfaceLuid atau InterfaceIndex.

Bidang digunakan dalam urutan yang tercantum di atas. Jadi, jika InterfaceLuid ditentukan, maka anggota ini digunakan untuk menentukan antarmuka. Jika tidak ada nilai yang ditetapkan untuk anggota InterfaceLuid (nilai anggota ini diatur ke nol), maka anggota InterfaceIndex selanjutnya digunakan untuk menentukan antarmuka.

Pada output, anggota InterfaceLuid dari struktur MIB_IPINTERFACE_ROW yang ditunjukkan oleh parameter Baris diisi jika InterfaceIndex ditentukan. Anggota lain dari struktur MIB_IPINTERFACE_ROW yang ditunjukkan oleh parameter Baris juga diisi.

Fungsi InitializeIpInterfaceEntry harus digunakan untuk menginisialisasi bidang entri struktur MIB_IPINTERFACE_ROW dengan nilai default. Aplikasi kemudian dapat mengubah bidang dalam entri MIB_IPINTERFACE_ROW yang ingin diubah, lalu memanggil fungsi SetIpInterfaceEntry .

Akses simultan yang tidak istimewa ke beberapa jaringan dengan persyaratan keamanan yang berbeda menciptakan lubang keamanan dan memungkinkan aplikasi yang tidak istimewa untuk secara tidak sengaja menyampaikan data antara kedua jaringan. Contoh umumnya adalah akses simultan ke jaringan privat virtual (VPN) dan Internet. Windows Server 2003 dan Windows XP menggunakan model host yang lemah, di mana RAS mencegah akses simultan tersebut dengan meningkatkan metrik rute semua rute default melalui antarmuka lain. Dengan demikian semua lalu lintas dirutekan melalui antarmuka VPN, mengganggu konektivitas jaringan lainnya.

Pada Windows Vista dan yang lebih baru, model host yang kuat digunakan secara default. Jika alamat IP sumber ditentukan dalam pencarian rute menggunakan GetBestRoute2 atau GetBestRoute, pencarian rute dibatasi untuk antarmuka alamat IP sumber. Modifikasi metrik rute oleh RAS tidak berpengaruh karena daftar rute potensial bahkan tidak memiliki rute untuk antarmuka VPN sehingga memungkinkan lalu lintas ke Internet. Anggota DisableDefaultRoutes dari MIB_IPINTERFACE_ROW dapat digunakan untuk menonaktifkan menggunakan rute default pada antarmuka. Anggota ini dapat digunakan sebagai langkah keamanan oleh klien VPN untuk membatasi penerowongan terpisah saat penerowongan terpisah tidak diperlukan oleh klien VPN. Klien VPN dapat memanggil fungsi SetIpInterfaceEntry untuk mengatur anggota DisableDefaultRoutes ke TRUE jika diperlukan. Klien VPN dapat mengkueri status anggota DisableDefaultRoutes saat ini dengan memanggil fungsi GetIpInterfaceEntry .

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 [hanya aplikasi desktop]
Target Platform Windows
Header netioapi.h (termasuk Iphlpapi.h)
Pustaka Iphlpapi.lib
DLL Iphlpapi.dll

Lihat juga

GetBestRoute

GetBestRoute2

GetIfEntry2

GetIfTable2

GetIfTable2Ex

GetIpInterfaceTable

Referensi Fungsi Pembantu IP

MIB_IF_ROW2

MIB_IF_TABLE2

MIB_IPINTERFACE_ROW

MIB_IPINTERFACE_TABLE

SetIpInterfaceEntry