虚拟路由器的数据处理方法、装置和虚拟路由器制造方法及图纸

技术编号:14770679 阅读:74 留言:0更新日期:2017-03-08 14:33
本发明专利技术公开了一种虚拟路由器的数据处理方法、装置和虚拟路由器。其中,该方法包括:以预设优先级在虚拟路由器中添加新增路由表,每个新增路由表中包含一个与虚拟路由器公网网关对应的路由规则;在待发送数据包的目标地址属于虚拟路由器公网的情况下,根据待发送数据包的源地址对应的新增路由表,将待发送数据包发送至目标地址;其中,预设优先级低于内网路由规则的优先级且高于默认路由规则的优先级。本发明专利技术解决了现有技术中使用不同的公网网段需要使用不同的虚拟路由器导致增加了使用虚拟路由器的复杂性的技术问题。

【技术实现步骤摘要】

本专利技术涉及网络通信领域,具体而言,涉及一种虚拟路由器的数据处理方法、装置和虚拟路由器
技术介绍
虚拟路由器通常应用于在IAAS云计算里,用于转发与之连接的各个子网(包括内网和公网)间的数据包,以及内网与公网间IP地址转换。目前公知的基于Linux的虚拟路由器的实现方法是:在运行Linux操作系统的物理服务器或虚拟服务器上,根据接入的子网在默认的路由表(main表)中设置转发路由规则及IP地址转换(NAT)规则。当虚拟路由器接收到数据包后,会按路由表里网络掩码长度从长到短的顺序,根据数据包里目的IP与路由表里的规则进行匹配,成功匹配后将数据包从匹配规则中的接口转发出去,匹配不成功则丢弃该数据包。目的IP地址为内网的数据包,根据明确的目的IP地址段从对应的接口转发出。因为虚拟路由器一般需要连接到公网(互联网),目的IP数量巨大,不可能为这些目的IP都设置1条路由规则,所以一般会设置1个默认路由,使数据包的目的IP地址在匹配不到其它路由表规则时,默认遵从该路由转发规则。默认路由规则与普通路由规则的区别在于:遵从默认路由规则时,数据包需转发到对应的网关(数据包目的mac改为网关的mac),由网关进行处理;遵从普通路由规则时,并没有对应的网关。例如,表一是某虚拟路由器的路由表(main表),若数据包目的IP为172.17.0.x(1-255),则该数据包从qr1转发出去;若数据包目的IP为172.18.0.x(1-255),则该数据包从qr2转发出去;若数据包目的IP为202.16.1.x(1-127),则该数据包从qg转发出去;其它数据包遵从默认路由规则,从qg转发至202.16.1.1。表一目前公知的基于Linux的虚拟路由器只使用了默认的main路由表,而main路由表只会有一个“默认”路由规则,对应1个网关;换言之,现有基于Linux的虚拟路由器只支持1个网关。图1是根据现有技术的一种虚拟路由器的路由表及main表路由规则的示意图。其中0、32766、32767表示路由表查找的优先级,数值越小优先级越高;local、main、default表示虚拟路由器里的路由表名称,local路由表里的路由规则是关于本地路由的,main是默认使用的路由表,default是默认路由规则的路由表。图2是根据现有技术的一种虚拟路由器将数据包发送至不同的公网网关的示意图,从图中可以看出,因为只使用了main路由表,源地址为172.17.0.10的数据包通过接口qr在路由表规则中匹配到优先级为32766的路由表,再将源地址好转换为对应的公网IP123.103.10.1,并通过qg接口将数据包发送至目标IP。源地址为172.17.0.11的数据包的传输过程与源地址为172.17.0.10的数据包的传输过程相同。由于现有技术的一个虚拟路由器里的数据包只能到达1个公网网关,因此若需求将数据包转发到2个公网网关,则需要使用2个虚拟路由器。在IAAS云计算中,有2种情况下会出现1个数据中心多个公网网关:1)在同一个数据中心里有不同的网络运营商,对应不同的运营商网关;2)公网网段通常是叠加申请的,用完一段公网IP再申请另一段,这样就会产生多个公网网段,每个公网网段对应1个虚拟路由器网关。上述1个虚拟路由器无法支持多个网关,导致使用不同的公网网段就要使用不同的虚拟路由器,增加了使用复杂性和管理工作量。针对现有技术中使用不同的公网网段需要使用不同的虚拟路由器导致增加了使用虚拟路由器的复杂性的问题,目前尚未提出有效的解决方案。
技术实现思路
本专利技术实施例提供了一种虚拟路由器的数据处理方法、装置和虚拟路由器,以至少解决现有技术中使用不同的公网网段需要使用不同的虚拟路由器导致增加了使用虚拟路由器的复杂性的技术问题。根据本专利技术实施例的一个方面,提供了一种虚拟路由器的数据处理方法,包括:以预设优先级在虚拟路由器中添加新增路由表,每个新增路由表中包含一个与虚拟路由器公网网关对应的路由规则;在待发送数据包的目标地址属于虚拟路由器公网的情况下,根据待发送数据包的源地址对应的新增路由表,将待发送数据包发送至目标地址;其中,预设优先级低于内网路由规则的优先级且高于默认路由规则的优先级。进一步地,根据待发送数据包的源地址在虚拟路由器的新增路由表中查找与源地址对应的新增路由表;匹配与源地址对应的新增路由表的路由规则;根据与源地址对应的新增路由表的路由规则将待发送数据包发送至目标地址。进一步地,将待发送数据包的源地址转换成对应的公网地址;确定公网地址对应的网关所属的路由表为源地址对应的新增路由表。进一步地,在待发送数据的目标地址属于虚拟路由器内网的情况下,通过内网的接口将待发送数据包转发至目标地址。进一步地,将所述虚拟路由器中的主表进行拆分,其中,所述主表包括:内网路由规则和默认路由规则;将拆分得到的默认路由规则移动至具有预设优先级的新路由表中。根据本专利技术实施例的另一方面,还提供了一种虚拟路由器的数据处理装置,包括:添加模块,用于以预设优先级在虚拟路由器中添加新增路由表,每个新增路由表中包含一个与虚拟路由器公网网关对应的路由规则;发送模块,用于在待发送数据包的目标地址属于虚拟路由器公网的情况下,根据待发送数据包的源地址对应的新增路由表,将待发送数据包发送至目标地址;其中,预设优先级低于内网路由规则的优先级且高于默认路由规则的优先级。进一步地,发送模块包括:查找子模块,用于根据待发送数据包的源地址在虚拟路由器的新增路由表中查找与源地址对应的新增路由表;匹配子模块,用于匹配与源地址对应的新增路由表的路由规则;发送子模块,用于根据与源地址对应的新增路由表的路由规则将待发送数据包发送至目标地址。进一步地,查找子模块包括:转换单元,用于将待发送数据包的源地址转换成对应的公网地址;确定单元,用于确定公网地址对应的网关所属的路由表为源地址对应的新增路由表。进一步地,在待发送数据的目标地址属于虚拟路由器内网的情况下,通过内网的接口将待发送数据包转发至目标地址。进一步地,拆分模块,用于将所述虚拟路由器中的主表进行拆分,其中,所述主表包括:内网路由规则和默认路由规则;移动模块,用于将拆分得到的默认路由规则移动至具有预设优先级的新路由表中。根据本专利技术实施例的又一方面,还提供了一种虚拟路由器,包括:上述实施例中的虚拟路由器的数据处理装置。在本专利技术实施例中,通过以低于内网路由规则且高于默认路由规则的优先级在虚拟路由器中添加新增路由表,在待发送的数据包需要发送至公网的情况下,根据新增路由表将数据包发送至目标地址。由于上述新增路由表中设置有对应于共往网关的路由规则,因此可以通过新增路由表的方式,将目标地址不同公网网关的数据由一个虚拟路由器发送,不需要部署多个虚拟路由器,从而解决了现有技术中使用不同的公网网段需要使用不同的虚拟路由器导致增加了使用虚拟路由器的复杂性的技术问题,达到了可以在多公网网关的情况下只使用一个虚拟路由器,降低了虚拟路由器使用的复杂性,减少了管理虚拟路由器的工作量。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1是根据现有技术的一种虚拟路由器的路由表及ma本文档来自技高网
...
虚拟路由器的数据处理方法、装置和虚拟路由器

【技术保护点】
一种虚拟路由器的数据处理方法,其特征在于,包括:以预设优先级在所述虚拟路由器中添加新增路由表,每个所述新增路由表中包含一个与所述虚拟路由器公网网关对应的路由规则;在待发送数据包的目标地址属于所述虚拟路由器公网的情况下,根据待发送数据包的源地址对应的新增路由表,将所述待发送数据包发送至所述目标地址;其中,所述预设优先级低于内网路由规则的优先级且高于默认路由规则的优先级。

【技术特征摘要】
1.一种虚拟路由器的数据处理方法,其特征在于,包括:以预设优先级在所述虚拟路由器中添加新增路由表,每个所述新增路由表中包含一个与所述虚拟路由器公网网关对应的路由规则;在待发送数据包的目标地址属于所述虚拟路由器公网的情况下,根据待发送数据包的源地址对应的新增路由表,将所述待发送数据包发送至所述目标地址;其中,所述预设优先级低于内网路由规则的优先级且高于默认路由规则的优先级。2.根据权利要求1所述的方法,其特征在于,根据待发送数据包的源地址对应的新增路由表,将所述待发送数据包发送至所述目标地址,包括:根据待发送数据包的源地址在所述虚拟路由器的新增路由表中查找与所述源地址对应的新增路由表;匹配与所述源地址对应的新增路由表的路由规则;根据所述与所述源地址对应的新增路由表的路由规则将所述待发送数据包发送至所述目标地址。3.根据权利要求2所述的方法,其特征在于,根据待发送数据包的源地址在所述虚拟路由器的新增路由表中查找与所述源地址对应的新增路由表,包括:将所述待发送数据包的源地址转换成对应的公网地址;确定所述公网地址对应的网关所属的路由表为所述源地址对应的新增路由表。4.根据权利要求1所述的方法,其特征在于,在所述待发送数据的目标地址属于所述虚拟路由器内网的情况下,通过所述内网的接口将所述待发送数据包转发至所述目标地址。5.根据权利要求1所述的方法,其特征在于,在以预设优先级在所述虚拟路由器中添加新增路由表,每个所述新增路由表中包含一个与所述虚拟路由器公网网关对应的路由规则之前,所述方法还包括:将所述虚拟路由器中的主表进行拆分,其中,所述主表包括:内网路由规则和默认路由规则;将拆分得到的默认路由规则移动至具有预设优先...

【专利技术属性】
技术研发人员:洪珂林观康
申请(专利权)人:网宿科技股份有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1