How to receive broadcast packet in TDI client?

Hi, everyone
I am developing a TDI client to receive broadcast packet from a paticular server. I followed DDK’s instruction to open a control channel on UDP using ZwCreateFile. Then I use TdiBuildQueryInformation and IOCallDriver to query the TDI_QUERY_BROADCAST_ADDRESS. But the IOCallDriver returns INVALID_DEVICE_REQUEST.

Then I changed the device to IP, then the IOCallDriver returns NOT_IMPLEMENTED.

My question is:

  1. do I need to get the broadcast address to open for receiving?
  2. If it is needed, how can I get it?

Thanks in advance