OID_GEN_NETWORK_LAYER_ADDRESSES

Sebagai satu set, OID_GEN_NETWORK_LAYER_ADDRESSES OID memberi tahu driver miniport yang mendasar dan driver berlapis lainnya tentang daftar alamat lapisan jaringan yang terkait dengan instans terikat.

Informasi Versi

Windows Vista dan versi Windows yang lebih baru
Didukung.

Driver miniport NDIS 6.0 dan yang lebih baru
Pilihan.

Driver miniport NDIS 5.1
Pilihan.

Windows XP
Didukung.

Driver miniport NDIS 5.1
Pilihan.

Keterangan

Instans terikat adalah pengikatan antara transportasi panggilan dan driver yang disiapkan oleh panggilan ke NdisOpenAdapterEx. Transportasi menggunakan struktur TRANSPORT_ADDRESS dan TA_ADDRESS untuk memberi tahu driver miniport yang mendasar dan driver berlapis lainnya tentang daftar alamat lapisan jaringan. Driver miniport dan driver berlapis lainnya menggunakan struktur NETWORK_ADDRESS_LIST dan NETWORK_ADDRESS yang kompatibel, yang didefinisikan sebagai berikut, untuk mengatur daftar alamat lapisan jaringan pada antarmuka terikat.

typedef struct _NETWORK_ADDRESS_LIST {
  LONG  AddressCount; 
  USHORT  AddressType; 
  NETWORK_ADDRESS  Address[1]; 
} NETWORK_ADDRESS_LIST, *PNETWORK_ADDRESS_LIST;

Anggota struktur ini berisi informasi berikut:

AddressCount
Menentukan jumlah alamat lapisan jaringan yang tercantum dalam array di anggota Alamat .

AddressType
Menentukan tipe protokol yang mengirim OID ini. Anggota ini hanya valid jika anggota AddressCount diatur ke nol. Anggota AddressCount diatur ke nol untuk memberi tahu driver miniport atau driver berlapis lainnya untuk menghapus daftar alamat lapisan jaringan pada antarmuka terikat. Protokol bisa menjadi salah satu nilai berikut:

NDIS_PROTOCOL_ID_DEFAULT
Protokol default

NDIS_PROTOCOL_ID_TCP_IP
Protokol TCP/IP

NDIS_PROTOCOL_ID_IPX
Protokol IPX NetWare

NDIS_PROTOCOL_ID_NBF
Protokol NetBIOS

Alamat
Array alamat lapisan jaringan jenis NETWORK_ADDRESS. Anggota AddressCount menentukan jumlah elemen dalam array ini.

typedef struct _NETWORK_ADDRESS {
  USHORT  AddressLength; 
  USHORT  AddressType; 
  UCHAR   Address[1]; 
} NETWORK_ADDRESS, *PNETWORK_ADDRESS;

Anggota struktur ini berisi informasi berikut:

AddressLength
Menentukan ukuran, dalam byte, dari alamat lapisan jaringan ini. Anggota Alamat berisi array byte yang menentukan alamat ini.

AddressType
Menentukan tipe protokol yang mengirim OID ini dan alamat lapisan jaringan ini. Anggota ini hanya valid jika anggota AddressCount dalam struktur NETWORK_ADDRESS_LIST diatur ke nilai bukan nol. Anggota AddressCount di NETWORK_ADDRESS_LIST diatur ke nilai bukan nol untuk memberi tahu driver miniport atau driver berlapis lainnya untuk mengubah daftar alamat lapisan jaringan pada antarmuka terikat. Jenis protokol ditentukan dalam daftar sebelumnya.

Alamat
Array byte yang menentukan alamat lapisan jaringan ini. Anggota AddressLength menentukan jumlah byte dalam array ini.

Transportasi dapat memanggil fungsi NdisOidRequest dan dapat melewati struktur NDIS_OID_REQUEST yang diisi dengan kode OID_GEN_NETWORK_LAYER_ADDRESSES. Panggilan ini memberi tahu instans terikat tentang perubahan alamat yang terkait dengan instans tersebut. Dalam panggilan ini, transportasi juga melewati instans terikat dalam parameter NdisBindingHandle . Instans terikat adalah pengikatan yang disiapkan antara transportasi dan driver miniport yang mendasar atau driver berlapis lainnya. Untuk panggilan ini, transportasi harus mengisi anggota InformationBuffer dari NDIS_OID_REQUEST dengan pointer ke struktur TRANSPORT_ADDRESS. TRANSPORT_ADDRESS sesuai dengan struktur NETWORK_ADDRESS_LIST dan harus berisi daftar alamat lapisan jaringan.

Misalkan transportasi melewati alamat melalui pengemudi perantara ke pengemudi miniport yang mendasar. Jika driver perantara juga memerlukan alamat, itu harus diperhatikan sebelum meneruskannya ke driver miniport yang mendasar. Driver miniport yang mendasar, terutama driver lama, dapat mengembalikan nilai status NDIS_STATUS_NOT_SUPPORTED atau NDIS_STATUS_SUCCESS. Driver miniport yang mendasar menyebarkan status operasi kembali ke arah transportasi. Jika driver perantara harus terus menerima pemberitahuan alamat, dan jika perlu, driver perantara harus mengubah status menjadi NDIS_STATUS_SUCCESS. Jika tidak, transportasi mungkin menginterpretasikan NDIS_STATUS_NOT_SUPPORTED sebagai indikasi bahwa driver miniport yang mendasar tidak mengharuskan masalah transportasi pembaruan alamat tambahan. Jika NDIS_STATUS_SUCCESS dikembalikan, transportasi diwajibkan untuk terus memberi tahu driver yang mendasar tentang perubahan alamat terkait, termasuk penambahan dan penghapusan alamat.

Protokol dapat mengatur anggota AddressCount TRANSPORT_ADDRESS ke nol untuk memberi tahu driver miniport atau driver berlapis lainnya untuk menghapus daftar alamat lapisan jaringan pada antarmuka terikat. Jika AddressCount diatur ke nol, anggota AddressType di NETWORK_ADDRESS_LIST valid dan anggota AddressType dalam struktur NETWORK_ADDRESS tidak valid. Di sisi lain, protokol dapat mengatur AddressCount ke nilai bukan nol untuk memberi tahu driver miniport atau driver berlapis lainnya untuk mengubah daftar alamat lapisan jaringan pada antarmuka terikat. Dalam hal ini, anggota AddressType di NETWORK_ADDRESS_LIST tidak valid dan anggota AddressType dalam struktur NETWORK_ADDRESS valid.

Persyaratan

Header

Ntddndis.h (termasuk Ndis.h)

Lihat juga

NDIS_OID_REQUEST

NdisOidRequest

NdisOpenAdapterEx