2011-11-21 71 views
1

我正在开发一个应用程序,用于过滤从客户端到我的服务器的网络连接(拒绝或允许连接到我的服务器)。
我正在研究并发现一些资源,例如Windows防火墙API。
但我不知道是否需要我。
什么是解决它的最佳API或解决方案?
非常感谢。在Windows上创建防火墙过滤器层(c/C++)的解决方案?

问候,

+0

你想过滤什么?如果他们连接到您的服务器,那么当然这是拒绝/允许的地方,而不是与网络过滤器非常有创意 –

回答

1

为什么不首先使用已经开发和验证的应用程序?如果你真的想开发一个过滤层,那么你需要的是Filter driver,更具体地说是NDIS filter。样品溶液可以找到here。但除非你完全确定你在做什么以及你想达到什么目的,否则我强烈建议你坚持现成的解决方案 - 任何防火墙都是体面的,甚至是服务器前的Linux机器,适当的iptables规则。

+0

感谢所有,我使用防火墙钩子驱动程序进行开发。 –

0

由于您正在使用Windows操作系统。您将不得不使用Windows Filtering Platform,如https://msdn.microsoft.com/en-us/library/aa366510.aspx

文档中所示。不推荐使用像TDS,LSP和NDIS这样的驱动程序。

编程语言是C++。根据我的经验,这是一个桌面应用程序,其中包含WxWidget中的GUI,并将筛选网络连接挂钩写入用户模式。

有两个过滤层标识符(运行时过滤层标识符和管理过滤层标识符),我之前使用它是更有效的。

如果您需要更多帮助,请告诉我。