一种实现网络增强隔离区的方法

文档序号:7958878阅读:311来源:国知局

专利名称::一种实现网络增强隔离区的方法
技术领域
:本发明涉及网络通信数据安全领域,特别涉及一种增强网络隔离区安全性能的方法。
背景技术
:在实际的网络应用中,有一些主机需要对外(如hternet)提供服务,如Web服务,E-mail服务。为了更好的对外提供服务,同时又要有效的保护内部网络的安全,就有必要将这些需要对外提供服务的主机和内部的众多网络设备分隔开来。如图1所示是一种典型的网络结构示意图,在该结构中,有两种终端,这两种终端分别是普通主机和DMZ主机,DMZ是DemilitarizedZone的缩写,即俗称的非军事区,也叫隔离区,与军事区和信任区相对应,其作用是把WEB,e-mail,等允许外部访问的服务器单独接在该区端口,使整个需要保护的内部网络接在信任区端口后,不允许任何访问,实现内外网分离,达到用户的安全需求。通过DMZ内部网络与外网联系。在这样的组网方式中,如果DMZ区域和外部网络不是同一网段,那么,作为带路由功能的通信终端,就需要对往来于DMZ和外部网络的数据包做NAPT(NetworkAddressPortTranslation,即网络端口地址转换)。但是目前,NAPT的性能不能满足用户的要求。如图2所示,为数据包正常转发流程,当数据通信终端,一般是带路由功能的通信终端接收到数据包后,通过mangle数据包头,然后经过NAT进行端口地址转换,进入路由决定由什么终端主机接收数据包,然后,根据接收到的数据包向外发送数据包,要经过FORWARD上的mangle与filter,和P0STR0UTING上的mangle与nat等才向外发送数据包。这里mangle、nat、filter等是Iinux的名词,其中nat表地址转换表filter表过滤表mangle表这个没得中文名称,只能把他的工作描述一下根据用户设置的iptables规则来操作数据包的ttl(timetolive)值,tos(typeofservice)值,以及mark值(这个值不会反映到离开本机后的数据包中,即仅在本机中使用)。这里iptables规则链就针对特定数据包的各种防火墙规则,按照顺序依次放入对应的链中。一共有五条链。INPUT,OUTPUT,FORWARD,PRER0UTING,P0STR0UTING;INPUT:当收到访问防火墙本地地址的数据包时,应用此链的规则;OUTPUT当防火墙本机向外发出数据时,应用此链的规则。FORWARD:当收到要通过防火墙发送给其他网络地址的数据包时,应用此链的规则。PRER0UTING:在对数据包做路由选择之前,应用此链的规则。P0STR0UTING:在对数据包做路由选择之后,应用此链的规则。在接收到的数据包进入防火墙内,PRER0UTING链中由路由判断之前,改变包的TTS、TOS或者Mark值,然后进行NAT,进行路由判断,FORWARD表示在最初的路由判断之后,紧后一次更改包的目的之间改变包的TTS、TOS或者Mark值,同时过所有不是本地产生并且目的地不是本地的包。在所有路由判断之后,更改包的目的之间改变包的TTS、TOS或者Mark值并且在包要防火墙之前改变其源地址。
发明内容本发明的目的是设计一种增强隔离区(Supper-DMZ),以满足用户的需要。本发明实现其发明目的所采用的技术方案是,一种实现网络增强隔离区的方法,隔离区主机通过带路由功能的通信终端与WAN相接,将所述的隔离区主机的IP地址设置与通信终端的WAN接口的IP地址相同。进一步的,上述的一种实现网络增强隔离区的方法中接收下行数据包时包括以下步骤步骤A、在下行数据包进入通信终端后,比较所述的下行数据包的目的MAC地址,如果目的MAC地址与通信终端WAN接口的MAC地址相同,接收该数据包;步骤B、如果该数据包的目的端口是DMZ主机上开放的服务的端口,在下行包刚刚到达防火墙时,mangle数据包并通过nat将数据包的目的端的MAC地址改成DMZ主机的MAC地址;步骤C、数据包被DMZ主机接收;发送上行数据包时包括以下步骤步骤D、比较所述的上行数据包的MAC地址,如果源地址与DMZ主机的MAC地址相同,则将所述的上行数据包的源地址修改为所述的通信终端WAN侧的MAC地址;步骤E、将所述的上行数据包向WAN发送。更进一步的,上述的一种实现网络增强隔离区的方法中在所述的步骤D之前,与LAN侧其它主机不在同一网段的DMZ主机需要一个代理ARP,包括以下步骤步骤DOl、DMZ主机发出的ARP解析请求;步骤D02、ARP代理解析后,不管DMZ主机的所要解析的IP地址是什么,ARP代理都反馈给DMZ主机arpreply,并且解析到的MAC地址就是通信终端LAN接口的MAC地址。本发明由于将DMZ主机的IP地址设置与通信终端的WAN接口的IP地址相同,使DMZ主机的数据包进出通信终端得以快速完成。下面结合附图和具体实施方式对本发明进行详细地说明。图1是内外网络的拓扑结构示意图。图2是数据包进出非DMZ主机的流程图。图3是数据包进出非DMZ主机和DMZ主机的流程图。具体实施例方式实施例1,如图3所示,本实施例是将DMZ主机的上行数据包和下行数据包的流程图,由于将DMZ主机的IP地址设置成与带路由功能的通信终端的WAN—侧的IP地址,使DMZ主机发送的上行数据直接向WAN发送,整个DMZ的数据包接收(下行数据包)和发送(上行数据包)包括以下步骤接收下行数据包时包括以下步骤步骤A、在下行数据包进入通信终端后,比较所述的下行数据包的目的MAC地址,如果目的MAC地址与通信终端WAN接口的MAC地址相同,接收该数据包;步骤B、如果该数据包的接收终端是DMZ主机上开放的服务的端口,则将数据包的目的端的MAC地址改成DMZ主机的MAC地址;步骤C、下行包被DMZ主机接收;发送上行数据包时包括以下步骤此时与LAN侧其它主机不在同一网段的DMZ主机需要一个代理ARP,步骤DOl、DMZ主机发出的ARP解析请求;步骤D02、ARP代理解析后,不管DMZ主机的所要解析的IP地址是什么,ARP代理都反馈给DMZ主机arpreply,并且解析到的MAC地址就是通信终端LAN接口的MAC地址。步骤D、比较所述的上行数据包的MAC地址,如果源地址与DMZ主机的MAC地址相同,则将所述的上行数据包的源地址修改为所述的通信终端WAN侧的MAC地址;步骤E、将所述的上行数据包向WAN发送。本实施例中,Supper-DMZ的最大特征就是DMZ主机的IP地址与通信终端的WAN接口的IP地址相同。整个实现由三个部分组成第一部分对下行数据包有条件的做目的MAC转换所谓下行数据,就是由internet发往通信终端的数据。在下行数据包进入通信终端后(在PRER0UTING链上),比较数据包的目的MAC地址,如果目的MAC地址与通信终端WAN接口的MAC地址相同,并且数据包的目的端口是DMZ主机上开放的服务的端口,那么就把数据包的目的MAC地址改成DMZ主机的MAC地址,并通过iptables命令的ROUTE这个target把数据包的出接口强制改成通信终端LAN侧的接口,并从LAN接口发送出去,从而到达DMZ主机(见图3)。否则,走数据包的正常转发流程(见图2)。第二部分对上行数据包有条件的做源MAC地址转换这里所谓上行数据包,就是指由DMZ主机发出,到达其他主机的数据包。以以太网为例,对于上行数据包,比较数据包(非arp包)的目的MAC地址,如果源MAC地址跟DMZ主机的MAC地址相同,就通过iptables命令的ROUTE这个target把数据包的源MAC地址改成通信终端的WAN接口的MAC地址,并把数据包从WAN接口发送出去。第三部分在通信终端的LAN侧做一个ARP代理由于DMZ主机是连接在通信终端的LAN侧的,但是DMZ主机的IP地址却是跟通信终端WAN接口的IP地址一样的,所以DMZ主机的IP不会跟通信终端的LAN口IP在通一个网段,因此,DMZ主机的默认网关就不可能是通信终端的LAN口的IP地址,这种情况下,对于DMZ主机IP所在的网段来说,DMZ主机是一台被孤立的主机,所以,在发包前,它所能做的就是试尝发送ARP解析请求,解析DMZ主机的默认网关,ARP解析成功,就把包发送出去,解析不成功,就不发包。所以为了让DMZ主机能把数据包发送出去,在通信终端的LAN侧就需要做一个ARP代理,这个ARP代理完成这样的功能只要是DMZ主机发出的ARP解析请求,不管所要解析的IP地址是什么,ARP代理都反馈给DMZ主机arpreply,reply的内容是,我就是你要解析的ip,你可以把包发送给我了。当包从DMZ主机发送到通信终端的LAN口后,再根据实际应用做进一步的处理。本实施例中需要用到的iptablesROUTEtarget可以直接采用内核2.6.21中的ipt_R0UTE.koxt_mac内核2.6.21中的xtjiiac只实现了根据源mac地址匹配,需要扩展支持目标mac地址匹配arp代理本实施例需要下的规则对于下行数据流当数据包从hternet来到通信终端的wan口,在Iinux的mangle表的PRER0UTING链中,如果符合规则,那么就会修改数据包的目的mac地址为DMZ主机的mac地址,并从Ian接口发送出去。需要加下面这样一条规则(本实施例中,假设通信终端Wan侧建立的虚设备是vnet_l,其mac地址是AA,Lan侧是brl,DMZ主机mac地址是EE)快速转发数据包的规则(并同时修改目的mac地址为EE,以DMZ主机开启了web服务为例)Iptables-tmangle-APRER0UTING-mmac-mac-destinationAA-ρtcp—dport80-jROUTE-oifbrl注意这条SuperDMZ规则添加在PRER0UTING链的末尾。对于上行数据流本实施例中,假设通信终端Wan侧建立的虚设备是vnet_l,其mac地址是AA,DMZ主机mac地址是EEiptables_tmangle—APRER0UTING-mmac—mac-sourceEE-jROUTE—oifvnet_l注意这条SuperDMZ规则添加在PRER0UTING链的末尾。2.3arp代理在上行的报文中可以看出,目标mac地址是U,显然,在CPE的桥上,是没有ZZ记录的,因此,需要加入arp代理功能。在内核2.6.21中的,建立了一个arp代理模块,模块处理的参数是SuperDMZ绑定的Lan侧DMZ主机的mac地址EE,简单来说,该arp的功能是,若发现包的源mac地址是EE,则回应brl的mac地址。权利要求1.一种实现网络增强隔离区的方法,DMZ主机通过带路由功能的通信终端与WAN相接,其特征在于将所述的DMZ主机的IP地址设置与通信终端的WAN接口的IP地址相同。2.根据权利要求1所述的一种实现网络增强隔离区的方法,其特征在于接收下行数据包时包括以下步骤步骤A、在下行数据包进入通信终端后,比较所述的下行数据包的目的MAC地址,如果目的MAC地址与通信终端WAN接口的MAC地址相同,接收该数据包;步骤B、如果该数据包的目的端口是DMZ主机上开放的服务的端口,在下行包刚刚到达防火墙时,mangle数据包并通过nat将数据包的目的MAC地址改成DMZ主机的MAC地址;步骤C、数据包被DMZ主机接收;发送上行数据包时包括以下步骤步骤D、比较所述的上行数据包的MAC地址,如果源地址与DMZ主机的MAC地址相同,则将所述的上行数据包的源地址修改为所述的通信终端WAN侧的MAC地址;步骤E、将所述的上行数据包向WAN发送。3.根据权利要求1所述的一种实现网络增强隔离区的方法,其特征在于在所述的步骤D之前,与LAN侧其它主机不在同一网段的DMZ主机需要一个代理ARP,包括以下步骤步骤DOl、DMZ主机发出的ARP解析请求;步骤D02、ARP代理解析后,不管DMZ主机的所要解析的IP地址是什么,ARP代理都反馈给DMZ主机arpreply,并且解析到的MAC地址就是通信终端LAN接口的MAC地址。全文摘要一种实现网络增强隔离区的方法,隔离区主机通过带路由功能的通信终端与WAN相接,将所述的DMZ主机的IP地址设置与通信终端的WAN接口的IP地址相同。本发明由于将DMZ主机的IP地址设置与通信终端的WAN接口的IP地址相同,使进出DMZ主机的数据包得以快速完成。文档编号H04L29/06GK102413124SQ201110340788公开日2012年4月11日申请日期2011年11月2日优先权日2011年11月2日发明者朱余浩,欧军和,汪澜,王志波申请人:深圳市共进电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1