3

我正在开发本质上是一个专门的防火墙应用程序。该解决方案需要兼容 32 位和 64 位。我的公司想保留当前的程序界面,它是用 C# 编写的。

我需要的是:一种监控和操纵系统上所有网络流量的方法。我的研究使我相信 NDIS(网络驱动程序接口规范)中间驱动程序是可行的方法。如果我可以用 C# 编写这种驱动程序,那就太好了,但我不确定这是否可能。至少,我需要一个 C# 接口到用任何语言编写的驱动程序。

我在网上找到了一个很好的资源,用于在题为“扩展 Microsoft PassThru NDIS 中间驱动程序”的一系列文章中创建一个:

  1. 第 1 部分 - 添加 DeviceIoControl 接口
  2. 第 2 部分 - 两个 IP 地址阻止 NDIS IM 驱动程序
  3. 第 3 部分 - 支持 Windows XP 64 位版本

但是,它的日期为(2003 年)。在我投入阅读和学习它的内容之前,我想确保我没有浪费我的时间。

有一个更好的方法吗?有没有比上面的文章更能解释这个过程的开源项目或文章?我什至在球场上?请帮忙。

4

1 回答 1

1

同一作者还有另一个页面,标题为Windows 网络数据和数据包过滤,它提供了“可用于在 Microsoft Windows 平台上过滤网络数据和网络数据包的各种技术的简要介绍”。

它提到了其他选项,例如“TDI 过滤器驱动程序”和“用户模式网络数据过滤”,它们可能更适合,这取决于您是否真的想要操纵系统上的所有网络流量。

于 2009-05-15T18:16:09.957 回答