预览加载中,请您耐心等待几秒...
1/5
2/5
3/5
4/5
5/5

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

asp源码www.itziyuan.comwym摘要:策略路由是目前硬件路由器支持的一种高级路由技术,路由器不仅可以根据目的IP地址进行路由选择外,而且还可以根据其他因素进行路由选择。在Linux下应用iptables和策略路由实现防火墙,在功能上更强大,使管理员更灵活方便的控制所需要的转发,不仅能够根据IP包的目的地址而且能够根据报文大小或IP源地址来选择数据包的转发路径,以更好的控制内外网数据包的转发和限制。中国论文网关键词:策略路由;Linux;iptables;防火墙中图分类号:TP393文献标识码:A文章编号:1009-3044(2012)06-1273-04在网络迅速快速发展的今天,互联网络逐渐进入企业和个人的家庭,构建一个安全、稳定和低成本的防火墙是当今趋向。防火墙是最早的网络安全产品和使用数量最多的安全产品,一直以来得到大多数用户和研发机构的喜爱。而Linux有其良好的网络性能和开放源码,使Linux成为更多的用户选择其作为防火墙的操作平台。Linux策略路由需结合iptables才能充分体现其功能的强大,实际工作中的应用多半基于此。本课题通过对Iptables构架分析和策略路由的应用分析从而在Iptables和Linux高级路由下实现防火墙的功能,使用管理员更灵活方便的控制所需要的转发,不仅能够根据IP包的目的地址而且能够根据报文大小、应用或IP源地址来选择转发路径,以更好的控制内外网数据包的转发和限制。1Netfilter/iptables架构分析Netfilter/iptables是集成在Linux2.4的内核中,是防火墙的核心部分,也是一个通用架构,它包含一系列的“表”(tables),每个表许多“链”(chains)构成,而每条链可以由一条或数条“规则”(rule)构成,包过滤处理正是由这些规则来控制的。在Netfilter/iptables中,使用表(链)中的INPUT、OUTPUT和FORWARD数据包过滤规则。将数据包送到本地主机的输入规则链或是转发规则链是由入站数据包是否需要经过路由决定的。Netfilter/iptables数据包的流动过程如图1所示。图1Netfilter包传输如果目的地址为本地的数据包被INPUT规则链的规则所接受,数据包就会在本地传送。如果目的地址为外地的数据包被FOR?WARD规则链的规则接受,数据包就会被送出相应的接口,经本地处理后的外出数据包被送到OUTPUT规则链。如果数据包被接受了,就会被送出相应的接口。所有,每个数据包被过滤一次。用Netfilter建立防火墙使用iptables管理命令,iptables命令执行所建立的防火墙策略管理防火墙的行为,iptables可以加入、插入或删除核心包过滤表格(链)中的规则。在iptables防火墙中提供了三种策略规则表:Filter、NAT和Mangle,分别实现包过滤,地址转换和处理包内容的功能。[1]2策略路由策略路由是一种比基于目标网络进行路由更加灵活的数据包路由转发机制。应用了策略路由,如何对所需要路由的数据包进行处理是通过路由图决定的,一个数据包的下一跳转发路由器又是通过路由图决定的。应用策略路由必须要创建路由图,并且要指定策略路由使用的路由图。使用Routemap命令来创建一条策略,创建策略时需要指定策略所属的路由图,并指定此条策略的序列号。match子命令定义策略的匹配规则,也就是执行操作的条件;set子命令用来定义符合条件的数据包采取的操作,即数据包从哪个下一条地址转发。最后通过路由图将策略应用到接口。(注:路由图与策略的逻辑关系是,一个路由图由很多条策略组成。具体在创建每条策略时,都要指定策略所属的路由图。)2.1基于源IP地址策略路由2.1.1定义RouterMap语句Router(config)#outer-mapmap-name[permit/deny][seuence-number]Router(config-router-map)#matchip{source-address[标号1]}Router(config-router-map)#setinterfaceinterfacenumber2.1.2在接口应用RouterMap语句Router(config-if)#ippolicyrout-mapmap-name2.1.3使路由器本身产生的数据包也接受基于Ip地址的策略路由管理Router(config-if)#iplocalpolicyroute-mapmap-name2.1基于报文大小的策略路由2.2.3定义RouterMap语句Router(config)#outer-mapmap-name[permit/deny][seuence-number]Router(config-rout