Я пытался написать тестовый мост между двумя сетевыми адаптерами, используя пример прототипа NDIS, приведенный в WDK для Win 7. До сих пор только что был собран драйвер и построен прототип.
Теперь мне было интересно, как поступить?
Есть ли способ привязать только пару адаптеров одновременно?
Протокол NDIS автоматически связывается с все поддерживаемые адаптеры. Таким образом, вам не нужно выполнять дополнительную работу, чтобы заставить NDISPROT связывать более двух сетевых адаптеров Ethernet.
После того, как вы создали драйвер, все, что вам нужно сделать, это:
INetCfgClassSetup::Install
как показано в образце bindview; или для случайных экспериментов, графический интерфейс свойств NIC имеет Добавлять… кнопка, которая позволяет устанавливать протоколы с графическим интерфейсом).StartService
API; или для случайных экспериментов, net start ndisprot
Сделаю).Вот и все. NDIS вызовет обработчик ProtocolBindAdpaterEx вашего протокола для каждого сетевого адаптера Ethernet в системе. Этот обратный вызов называется NdisprotBindAdapter
в образце.
использование !ndiskd.protocol
чтобы убедиться, что ваш протокол теперь связан с несколькими минипортами.
Других решений пока нет …