Windows 虚拟以太网适配器向软件发送数据包

Windows 虚拟以太网适配器向软件发送数据包

我正在寻找一种方法来模拟 Windows 上的网络适配器,并能够在程序中使用数据包。然后程序将通过其他方式发送它们。我只需要创建一个虚拟网络适配器,让我可以访问数据包。是否有预先编写的自定义驱动程序,还是我需要自己编写?我读了一些关于 Windows 的 TAP 驱动程序的文章,但我不确定这是否是我需要的。

答案1

是的,对于独立虚拟接口,最常用的方法确实是 TAP 驱动程序 - 最初由 OpenVPN 制作,用于模仿 Linux 内置的“tap”接口类型。它是开源的,但您可能希望使用官方发行版,因为它是数字签名的(如今这是一项要求)。

另一种方法是构建一个自定义驱动程序来执行相同的操作。我相信这就是 VirtualBox 的“仅主机网络”功能(也是将所有数据包发送到软件的虚拟接口)所做的事情。

如果你需要的只是第 3 层(IP)数据包,你也可以尝试将应用程序实现为 WindowsVPN 提供商,尽管这仅适用于 UWP 应用程序 - 但不需要驱动程序。

答案2

你不需要模仿任何东西。

您的计算机中已经有一个可以使用的适配器。这是 Microsoft Loopback Adapter,也称为 本地主机

如果您正在编写程序,这里有几个参考资料可以帮助您入门:

相关内容