一种基于单台网关使用软件构造多台独立网关的方法与流程

文档序号:11234539阅读:355来源:国知局
本发明涉及一种基于单台网关使用软件构造多台独立网关的方法,具体与linux网络协议、vlan设置、路由策略的使用有关。
背景技术
::实际生产、工作中,有些应用场景需要同时使用多台网关,如果使用多台网关进行组合使用,会造成安装和使用成本增加的问题。另外,网关没有充分利用硬件资源,造成了资源的浪费。技术实现要素:本发明提供一种基于单台网关使用软件构造多台独立网关的方法,实现基于linux系统的vlan技术对lan口的隔离和iptbales对数据流的控制,使数据流约束在指定的网络接口分组并且按照预先设定的路由策略进行传输,实现各个网络接口分组之间的数据流隔离,逻辑上构造出多个独立工作的网关。这些网关有自己独立的网络数据接口和路由策略,同时复用cpu、内存、存储器等硬件资源,使硬件资源得到充分的利用。为了达到发明目的,本发明采用如下技术方案:一种基于单台网关使用软件构造多台独立网关的方法,使数据流约束在指定的网络接口分组里传输,逻辑上构造出多台独立网关;所述基于单台网关使用软件构造多台独立网关,根据实际使用需求对网关硬件系统的网络接口(如wan口、3g/4g接口、lan口等)进行分组,使用iptbales对数据流的路由策略进行设定,使数据流约束在规定的网络接口分组里传输,从而在单台网关上软件构造出相互独立的多台网关。这些网关有自己独立的网络数据接口和路由策略,同时复用cpu、内存、存储器等硬件资源。一种基于单台网关使用软件构造多台独立网关的方法,包括以下步骤:步骤一,根据实际需求,对网关硬件系统的网络接口进行分组,其中每一个分组至少包含一个wan口(或者一个3g/4g接口)和一个lan口;步骤二,根据步骤一的网络接口分组,使用vlan技术对lan口进行隔离设置;步骤三,获取每一个wan口、3g/4g网络接口的链路信息,如ip,subnet,gateway,ifname,dns等,然后手动为每一个网络接口分组创建路由表;步骤四,根据步骤一、步骤二的网络接口分组和步骤三的各分组路由表信息,使用iptables命令设定每一个数据接口分组的数据流的路由策略,实现不同分组之间的数据互不干扰,在逻辑上构造出多台网关。附图说明此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:图1为本发明方法的流程框图。具体实施方式为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。vlan技术可以实现lan口隔离,把分在同组的lan口划分在同一个广播域,实现不同lan口分组的数据流独立性。这是从逻辑上划分,而不是物理上划分,为自定义分组提供可操作性。iptables可灵活配置的表、链、规则,用于定义数据流的走向,哪个“lan口分组”的数据走“哪一条通信链路”,精确地指定了不同局域网的数据传输路径,同时达到网络数据流分组效果,从而在单台网关使用软件构造出多台网关。下面为一个硬件上具备1个wan口、1个3g接口、1个4g接口以及6个lan口的普通网关实施实例。(1)根据实际需求,对网关硬件的网络接口(wan口、3g/4g、lan口)进行分组,分组情况如下:a)组1:一个wan口,lan口1,lan口2;b)组2:一个3g接口,lan口3,lan口4;c)组3:一个4g接口,lan口5,lan口6。根据上述分组,组1网络接口用于构造网关1、组二网络接口用于构造网关2、组三网络接口用于构造网关3。(2)根据步骤(1)的网络接口分组,使用vlan技术对三个lan口分组进行隔离:a)lan口1、lan口2划分为vlan1,网段为192.168.1.0/24;b)lan口3、lan口4划分为vlan2,网段为192.168.2.0/24;c)lan口5、lan口6划分为vlan3,网段为192.168.3.0/24。(3)获取每一个wan口、3g/4g网络接口的链路信息,如:ip、subnet、gateway、ifname、dns等信息,并为三个网络接口分组建立各自的路由表,下面以组1的网络接口为例,手动创建创建路由表table1:a)wan口获取到的链路信息:ip地址为192.168.9.91,子网掩码为255.255.255.0,网关为192.168.9.1,网络接口为eth2.2,dns为114.114.114.114,vlan1的网段信息为192.168.1.0/24,局域网接口为br0,路由表名称为table1;b)建立wan口、lan口1、lan口2所在分组的路由表:iprouteadd192.168.9.1deveth2.2tabletable1iprouteadd192.168.9.0/24deveth2.2src192.168.9.91tabletable1iprouteadd192.168.1.0/24devbr0src192.168.1.1tabletable1iprouteadddefaultvia192.168.9.1deveth2.2tabletable1组2、组3路由表与组1路由表的建立方法相同。(4)根据步骤(1)、(2)的网络接口分组和步骤(3)的各组建立的路由表信息,使用iptables命令设定每一个数据接口分组的数据流传输的路由策略,实现不同分组之间的数据流独立性,下面以组1为例,设定路由策略:a)来源于vlan1,并且是已经存在的连接的数据包按照原来路径传输:iptables-tmangle-frestoreiptables-tmangle-xrestoreiptables-tmangle-nrestoreiptables-tmangle-arestore-jconnmark--restore-markb)来源于vlan1,并且是新的连接的数据包标记为0x90:iptables-tmangle-ftable1_markiptables-tmangle-xtable1_markiptables-tmangle-ntable1_markiptables-tmangle-dtable1_mark-jmark--set-mark0x90iptables-tmangle-atable1_mark-jmark--set-mark0x90iptables-tmangle-dtable1_mark-jconnmark--save-markiptables-tmangle-atable1_mark-jconnmark--save-markc)将标记为0x90的数据传送到路由表table1:ipruleaddfwmark0x90tabletable1d)设置eth2.2的snat功能:iptables-tnat-ipostrouting-oeth2.2-jmasquerade组2、组3的路由策略设置方法与组1相同。通过以上步骤,可以为网络接口组1、组2、组3分别创建了数据流策略路由,各个分组的数据流“各行其道”、彼此独立,从而在同一个网关硬件上,构造出3个独立工作的网关。这三个独立网关有自己独立的网络接口和路由策略,同时复用网关的cpu、内存、存储器等硬件资源,使资源得到充分的利用。本发明能够实现基于单台网关硬件上使用软件构造出多个网关的功能。上述说明示出并描述了本发明的优选实施例,如前所述,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1