阅读:2357回复:12
关于用DDK编写防火墙 的问题
我想学习用DDK在NDIS 上编写一个防火墙程序,请问此防火墙能对传输的包的“内容”过滤吗?
而不是普通防火墙那样用包头IP地址信息进行过滤。 我想下载DDK FOR winXP或2003,可是找了一天也没找到,只有Emule有,但下了一天只有500多KB,郁闷。 请各位高手对我的在NDIS 上编写一个防火墙程序这一构想提出您的看法,例如可行性,编写难度,需要什么基础? 我现在只是DDK的门外汉,请各位高手指导小弟一二,不胜感激! |
|
沙发#
发布于:2005-07-15 12:07
怎么没有人复我啊?是我说得不清楚吗?求求大家了
网卡驱动程序可以对可以检查经过网卡的数据包的内容吗? 例如我如果用QQ发送了一段银行卡密码,在经过NDIS中间驱动程序时可以被识别出来吗? |
|
板凳#
发布于:2005-07-15 12:41
“DDK XP下载(不限速)”的帖子还挂在下面,难道没有看见吗。
多看看帖子,你的所有问题都会有很好的答案。 |
|
地板#
发布于:2005-07-15 20:32
昨天试过还不行,今天又可以下了,谢谢您的提醒啊!
|
|
地下室#
发布于:2005-07-15 20:46
用ndis imd驱动,也是可以的,实际上你要做应用层协议的分析,在ndis层做,一方面效率不高,另一方面对于如果对于ip分片,一般也只能不处理. 如果不用考虑效率,也可以
对于通用的内容过滤,不如考虑在tdi层做,另外spi应该也可以满足你的需要. 如果对于特定的协议,实现一个应用层的代理程序更简单. |
|
5楼#
发布于:2005-07-15 22:36
下面是引用zhaock于2005-07-15 20:46发表的: 太谢谢您的建议了!! 我这有个疑问,编程不是越底层效率越高吗?tdi 不是在ndis 之上吗? 请问此类编程是属于在OSI中的哪一层上的编程呢? 再问一个比较幼稚的问题哦。您说的“应用层的代理程序”是什么意思? |
|
6楼#
发布于:2005-07-16 09:40
不能说越底层,效率越高,
ndis放火墙就是一般常见的基于包过滤的防火墙,对于每个包进行过滤,如果这时候做一些复杂的字符串的匹配,对系统的性能就可能会有较大的影响,特别是用在路由器上,但是如果是客户端上,到也问题不大,另外一个问题就是对于你要过滤的内容的,如果在两个包里面,就是说被分片了,一般就不能处理了. 对于tdi,spi就可以克服这个问题. tdi,spi你可以按照进程,连接来过滤,不用处理每个包,效率可能会更高 ndis是在数据链路层,tdi,spi实际上都是socket编程. 应用层的代理程序就是应用层网关,也也属于防火墙的一种,和以上的方法比肯定效率要低,但是编写起来简单的多 |
|
7楼#
发布于:2005-07-16 23:39
请问zhaock,基于内容过滤是怎么实现呢,也就是说怎么样才能使他有效而且高效呢,比如基于某个规则库,或者动态,比较智能增长的规则库,又怎么样呢??
这样是不是负荷比较的重啊?? |
|
8楼#
发布于:2005-07-16 23:41
一般来说基于过滤的是不是中间层最有效啊??
|
|
9楼#
发布于:2005-07-17 21:06
我觉得也是的你要实现你说的我觉得不用驱动用SPI什么的就可以的。
|
|
10楼#
发布于:2005-07-18 10:33
SPI好象很多人做吧?要求要有创新。。。。
如果一定要在NDIS上做,各位有什么建议呢?怎样解决分片问题呢? |
|
11楼#
发布于:2005-07-18 16:32
不会吧!创新也不是这样个创新的办法吧?
如果你非要来个创新,内容过滤做到ndis层,我感觉要实现个IP重组功能,但是那恐怕不是个简单工作,参考一下ip的源码了. |
|
|
12楼#
发布于:2005-07-18 21:22
能介绍一下IP源码与网卡驱动程序开发的书籍吗?
|
|