Как мне управлять сетевым интерфейсом в Windows? На самом деле, идея очень проста.
Установите соединение с определенным адаптером на компьютере.
Прямой весь трафик адаптера к этой программе.
Дайте права этой программе на то, что нужно передавать на адаптер, а что нет.
Я думаю, что программа должна реализовывать любой интерфейс сетевого адаптера Windows и быть зарегистрирована как драйвер адаптера. Таким образом, когда требуется передать данные в реальный адаптер, программа должна вызвать методы драйвера адаптера. В свою очередь, методы реализуют один и тот же сетевой интерфейс Windows (или тот, который вызывается другим способом, на самом деле не знаю, надеюсь, вы поняли), не так ли?
В результате мы имеем здесь своеобразное наследство.
Перед использованием нашего нового драйвера:
Windows-приложение и само Windows
__ _ __ _ __ _ __ _ __ _ __ _ __ _ ___ сетевой интерфейс Windows
ДРАЙВЕР Адаптера1
__ _ __ _ __ _ __ _ __ _ __ _ __ _ ___ конец границ ОС
Адаптер 1
Используйте наш новый драйвер:
Windows-приложение и само Windows
__ _ __ _ __ _ __ _ __ _ __ _ __ _ ___ сетевой интерфейс Windows
наш водитель
__ _ __ _ __ _ __ _ __ _ __ _ __ _ ___ сетевой интерфейс Windows
ДРАЙВЕР Адаптера1
__ _ __ _ __ _ __ _ __ _ __ _ __ _ ___ конец границ ОС
Адаптер 1
Я считаю, что такой интерфейс существует, и я надеюсь, что он реализован очень просто.