如何在.NET中创建虚拟网络适配器?
我想在运行时(通过代码)创建/添加虚拟网络适配器到客户端操作系统,最好使用 C#。类似于 VirtualBox/VMware/Himachi 在安装其软件时创建的内容。我猜测这需要一些 C/C++ 技巧来进行驱动程序集成,但如果仅使用 C# 就可以实现,那就更好了。
我知道 OpenVPN,他们的东西主要是用 C 编写的,我也知道周围有 TUN/TAP 驱动程序,我只是不知道这些是否是唯一不需要我为 Windows 创建完全加载的网络驱动程序的解决方案。
I would like to create/add a virtual network adapter to a client operating system at runtime (via code), preferably in C#. Something similar to that of what VirtualBox/VMware/Himachi creates when you install their software. I am guessing this will require some C/C++ shenanigans for the driver integration, but if it is doable with only C#, all the better.
I am aware of OpenVPN, their stuff is primarily in C, and I am also aware of the TUN/TAP drivers floating around, I just didn't know if these were the only solutions not requiring me creating a fully loaded network driver for Windows.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果您需要简单的功能,那么您可以使用 Microsoft Loopback Adapter。要安装它,请使用 devcon 工具。以下是有关它的一些信息http://support.microsoft.com/kb/311272。
devcon -r install %WINDIR%\Inf\Netloop.inf *MSLOOP 之后,您可以使用 C# 的 WMI 查询来获取新的连接名称,然后使用 netsh 来配置它(即 netsh int ip set address) name="本地连接2"静态192.168.0.3 255.0.0.0)
If you need simple funcionality then you can use Microsoft Loopback Adapter. To install it use devcon tool. Here is some info about it http://support.microsoft.com/kb/311272.
devcon -r install %WINDIR%\Inf\Netloop.inf *MSLOOP After that you can use WMI query with C# to obtain new connection name and then netsh to configure it (ie. netsh int ip set address name="Local Area Connection 2" static 192.168.0.3 255.0.0.0)