Как создать виртуальный сетевой адаптер в .NET? - PullRequest
11 голосов
/ 10 февраля 2010

Я хотел бы создать / добавить виртуальный сетевой адаптер для клиентской операционной системы во время выполнения (через код), предпочтительно в C #. Нечто похожее на то, что VirtualBox / VMware / Himachi создает при установке их программного обеспечения. Я предполагаю, что для интеграции драйверов понадобятся некоторые махинации C / C ++, но если это выполнимо только с C #, тем лучше.

Я знаю об OpenVPN, их вещи в основном на C, и я также знаю о драйверах TUN / TAP, я просто не знал, были ли это единственные решения, не требующие от меня создания полностью загруженной сети драйвер для Windows.

1 Ответ

8 голосов
/ 18 февраля 2010

Если вам нужна простая функциональность, вы можете использовать Microsoft Loopback Adapter. Для его установки используйте инструмент devcon. Вот некоторая информация об этом http://support.microsoft.com/kb/311272. devcon -r install% WINDIR% \ Inf \ Netloop.inf * MSLOOP После этого вы можете использовать WMI-запрос с C # для получения нового имени подключения, а затем netsh для его настройки (т.е. netsh int ip set name name = "Подключение по локальной сети 2" статическое 192.168.0.3 255.0.0.0)

...