虽然真正可靠的防火墙应该工作在NDIS层,但是,个人防火墙和用于服务器的防火墙毕竟还是有一些不同之处,工作在服务器端的防火墙只需要根据协议、地址
和端口判断是转发还是丢弃就行了,高级一点还可以分析包内容(全状态过滤),根据预设的引擎判断数据包正常还是非法,这样的防火墙还可以用硬件实现。
但是个人防火墙的特别之处就是需要与用户交互,用户数据多是基于IP协议的,并且用户并不关心协议的细节(掌握这些对大多数用户来说有点难度),所以个人
防火墙除了通过IP层的协议进行过滤之外,更主要的手段是根据用户的意愿允许还是阻止某个进程(程序)访问网络,也就是应用程序控制,在这个粒度上用户比
较容易理解和控制。从这一点上讲,工作在TDI层的防火墙的优势就是能够在网络访问发生的时候追踪到发起访问的进程名称,从而给用户一个提示。
工作在TDI层也有其优势 写道
而工作在NDIS层的防火墙则不容易做到这一点。因为发送数据时上层驱动将数据包提交到NDIS的发送队列中后就返回了,当数据包被真正投递的时候已经无从确定是哪个程序(进程)发送的了,对于收到的数据包需要根据端口号判断是哪个程序的,但是在NDIS层并不知道端口号和进程的对应关系,所以无论数据发送还是接收都无法有效地确定是属于哪个进程的数据。如果不能确定哪个进程访问网络,只是根据地址、端口和协议进行过滤对(大多数)用户来说是很不友好的,所以个人防火墙最好应该是TDI+NDIS双保险:TDI层根据进程级访问过滤,NDIS层根据地址、端口和协议过滤。
分享到:
相关推荐
介绍了NDIS系统结构以及在Windows 2000/NT下NDIS-HOOK的原理,并给出了一个基于NDISHOOK技术的个人防火墙驱动程序——Packet.sys。利用该驱动程序与SPI技术相结合,可方便地实现基于Windows的个人防火墙。
在Windows平台上,大多数防火墙都是通过实现TDI过滤驱动来实现其功能的。 #### 三、TDI驱动的实现 - **TDI.sys**: 提供了一组帮助函数来支持TDI接口。这组函数可以帮助开发者更容易地实现TDI驱动。 - **WDK**: ...
开发虚拟网卡和防火墙推荐使用 NDIS 中间层驱动。 NDIS 协议驱动的数据收发模型如下: NDIS 协议驱动 → NDIS 中间层驱动 → NDIS 微端口驱动 → TDI 传输驱动接口 → TCPIP → TCPWAN → my protocol → NIC1 → ...
驱动程序开发的例子,tdi防火墙源代码,数据封包的拦截,过滤等
Windows_NDIS1.ppt和第4章_基于NDIS的网络编程.ppt,这些PPT可能提供了关于NDIS驱动开发的可视化教学材料,包含NDIS驱动的工作流程、编程实例和案例分析。 Windows_NDIS2.ppt可能是NDIS驱动开发的进阶内容,涵盖了...
WFP(Windows Filter Platform)是为网络过滤应用...通过提供简单的开发平台,WFP被用于取代以前的TDI过滤,NDIS过滤,以及LSP(Winsock Layered Service )。在Visita及以后的系统火墙钩子,过滤钩子驱动将不再适用。
学习防火墙最经典源码 网络与通信程序开发 qq群号:28363065 欢迎加入交流学习 TCP/IP, QoS, SNMP,VxWorks, Linux, Windows, SDK, MFC, WinSocket, DDK,WDM,NDIS, TDI,---本群现招管理员若干名有意联系群主..
主要知识重点包括:Windows串口与键盘过滤驱动、Windows虚拟存储设备与存储设备过滤驱动、Windows文件系统过滤驱动、文件系统透明加密/解密驱动、Windows各类网络驱动(包括TDI过滤驱动及三类NDIS驱动),以及最新的...
主要知识重点包括:Windows串口与键盘过滤驱动、Windows虚拟存储设备与存储设备过滤驱动、Windows文件系统过滤驱动、文件系统透明加密/解密驱动、Windows各类网络驱动(包括TDI过滤驱动及三类NDIS驱动),以及最新的...
主要知识重点包括:Windows串口与键盘过滤驱动、Windows虚拟存储设备与存储设备过滤驱动、Windows文件系统过滤驱动、文件系统透明加密/解密驱动、Windows各类网络驱动(包括TDI过滤驱动及三类NDIS驱动),以及最新的...
主要知识重点包括:Windows串口与键盘过滤驱动、Windows虚拟存储设备与存储设备过滤驱动、Windows文件系统过滤驱动、文件系统透明加密/解密驱动、Windows各类网络驱动(包括TDI过滤驱动及三类NDIS驱动),以及最新的...
主要知识重点包括:Windows串口与键盘过滤驱动、Windows虚拟存储设备与存储设备过滤驱动、Windows文件系统过滤驱动、文件系统透明加密/解密驱动、Windows各类网络驱动(包括TDI过滤驱动及三类NDIS驱动),以及最新的...
主要知识重点包括:Windows串口与键盘过滤驱动、Windows虚拟存储设备与存储设备过滤驱动、Windows文件系统过滤驱动、文件系统透明加密/解密驱动、Windows各类网络驱动(包括TDI过滤驱动及三类NDIS驱动),以及最新的...
主要知识重点包括:Windows串口与键盘过滤驱动、Windows虚拟存储设备与存储设备过滤驱动、Windows文件系统过滤驱动、文件系统透明加密/解密驱动、Windows各类网络驱动(包括TDI过滤驱动及三类NDIS驱动),以及最新的...
6. **系统网络协议栈接口**:如Linux的Net Filter和Windows的NDIS、TDI、WCF等,这些底层接口能在Ring0层实现复用,但需要深入的驱动开发知识。 ### 二、端口复用的核心方法论 选择恰当的网络数据包转发时机至关...
- **应用场景**:可用于理解ICMP协议工作原理,以及在网络监控或故障诊断时分析Ping数据包。 #### 11. HeaderDrawing - **HeaderDrawing**:指数据包头部的绘制,通常用于可视化网络流量分析。 - **作用**:帮助...
主要知识重点包括:Windows串口与键盘过滤驱动、Windows虚拟存储设备与存储设备过滤驱动、Windows文件系统过滤驱动、文件系统透明加密/解密驱动、Windows各类网络驱动(包括TDI过滤驱动及3类NDIS驱动),以及最新的...
主要知识重点包括:windows串口与键盘过滤驱动、windows虚拟存储设备与存储设备过滤驱动、windows文件系统过滤驱动、文件系统透明加密/解密驱动、windows各类网络驱动(包括tdi过滤驱动及3类ndis驱动),以及最新的...
主要知识重点包括:windows串口与键盘过滤驱动、windows虚拟存储设备与存储设备过滤驱动、windows文件系统过滤驱动、文件系统透明加密/解密驱动、windows各类网络驱动(包括tdi过滤驱动及3类ndis驱动),以及最新的...
主要知识重点包括:windows串口与键盘过滤驱动、windows虚拟存储设备与存储设备过滤驱动、windows文件系统过滤驱动、文件系统透明加密/解密驱动、windows各类网络驱动(包括tdi过滤驱动及3类ndis驱动),以及最新的...