基于S3C2440的嵌入式IPv6防火墙设计(二)
扫描二维码
随时随地手机看文章
4 防火墙核心模块设计
一个防火墙能否起到较好的过滤效果关键在于防火墙的核心过滤模块设计。本防火墙的核心过滤模块整体工作流程如图3所示。
图3 嵌入式IPv6防火墙工作流程图。
嵌入式IPv6防火墙的工作流程:
(1) 当IPv6 数据包通过网络接口进入防火墙之后,首先将经过动态NAT模块进行网络地址翻译,其目的是将外部公网IP与内部私网IP相互映射。
(2) 在完成动态NAT 之后,防火墙会遍历连接状态跟踪信息表判断该数据包是否属于一个已经存在连接。此连接状态跟踪信息表记录着已存在连接的源IP 地址、目的IP 地址、传输层的源端口号、目的端口和TCP 序列号等,通过这些信息防火墙可以高效快速的识别出该数据包是否属于一个已经存在的连接。
(3) 如果该数据包不属于一个已经存在的连接,系统会调用智能数据包过滤规则集,并逐条遍历整个规则集。与此同时防火墙会动态地建立并更新过滤规则匹配信息表,根据该信息表,系统采用统计、记忆、概率和决策的智能方法对数据进行识别,动态地优化过滤规则优先级。智能的数据识别方法,消除了匹配检查所需要的海量计算,高效发现网络行为的特征值,直接进行访问控制,由于这些方法多是人工智能学科采用的方法,因此又称为智能访问控制技术。
(4) 如果该数据包通过了过滤规则集的审查,或者该数据包属于一个已经存在的连接,防火墙会对数据包是否含有特定内容进行检测,此时防火墙仅仅对数据包的关键信息进行检测,因此大大加快了检测的效率和速度。
(5) 如果该数据包未能通过状态跟踪安全策略,或者未能通过智能包过滤规则集,防火墙会拒绝或者丢弃该数据包,并进行日志记录。
(6) 在数据包通过了上述的过滤和审查后,防火墙就会将该数据包转发到最终的目的地址,并且防火墙会在其连接状态跟踪信息表中为此次会话创建或者更新一个连接信息。防火墙将会使用这个连接项对返回的数据包进行过滤。
5 结束语
本文对防火墙技术做了深入研究,设计了基于S3C2440 处理器的嵌入式IPv6 防火墙。该防火墙实现了支持IPv6 协议的状态跟踪与智能包过滤相结合的动态包过滤。并成功搭建了远程WEB 管理平台,方便地管理过滤规则、防火墙日志和网络状态等。随着IPv6 网络的逐渐推广,包括防火墙在内的网络设备对IPv6网络的支持将成为必然趋势。因此基于ARM的嵌入式IPv6防火墙的应用前景也会越来越广阔。