《一种基于多角色主机的报文传输方法和设备.pdf》由会员分享,可在线阅读,更多相关《一种基于多角色主机的报文传输方法和设备.pdf(14页珍藏版)》请在专利查询网上搜索。
1、10申请公布号CN104253751A43申请公布日20141231CN104253751A21申请号201410448834922申请日20140904H04L12/723201301H04L12/741201301H04L12/4620060171申请人杭州华三通信技术有限公司地址310052浙江省杭州市滨江区长河路466号72发明人郭威74专利代理机构北京鑫媛睿博知识产权代理有限公司11297代理人龚家骅54发明名称一种基于多角色主机的报文传输方法和设备57摘要本发明公开了一种基于多角色主机的报文传输方法和设备,该方法包括当在第一PE上为第一主机配置静态路由时,第一PE确定对应的虚拟映射。
2、IP地址,并记录所述虚拟映射IP地址、目的IP地址、出接口之间的对应关系;第一PE以所述虚拟映射IP地址发布静态路由给第二PE,由所述第二PE学习所述虚拟映射IP地址;第一PE在收到来自第一主机的第一报文时,利用所述对应关系,将所述第一报文的源IP地址修改为对应的虚拟映射IP地址,并发送所述第一报文;第一PE在收到目的IP地址为虚拟映射IP地址的第二报文时,将所述第二报文的目的IP地址修改为对应的目的IP地址,并利用对应的出接口发送所述第二报文。本发明实施例中,可以避免报文传输错误。51INTCL权利要求书2页说明书8页附图3页19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明。
3、书8页附图3页10申请公布号CN104253751ACN104253751A1/2页21一种基于多角色主机的报文传输方法,其特征在于,所述方法包括当在第一服务提供商网络边缘设备PE上配置第二虚拟专用网络VPN下以第一VPN中第一主机IP地址为目地IP地址的静态路由时,所述第一PE确定对应的虚拟映射IP地址,并记录该目的IP地址、所述虚拟映射IP地址、所述第一主机在所述第一PE上的第一VPN下的出接口之间的对应关系;所述第一PE以所述虚拟映射IP地址发布该静态路由给第二PE,由所述第二PE在第二主机对应的第二VPN的路由表内学习所述虚拟映射IP地址;所述第一PE在收到来自所述第一主机的第一报文,。
4、在所述第二VPN的路由表内查找对应的路由时,利用所述对应关系,将所述第一报文的源IP地址修改为对应的虚拟映射IP地址,并发送所述第一报文;所述第一PE在收到来自第二PE的目的IP地址为虚拟映射IP地址的第二报文时,利用所述对应关系,将所述第二报文的目的IP地址修改为所述虚拟映射IP地址对应的目的IP地址,并通过对应的出接口发送所述第二报文。2如权利要求1所述的方法,其特征在于,所述方法进一步包括所述第一PE接收所述第二PE向本第一PE发布的所述第二主机的路由,并在所述第二VPN的路由表内学习所述第二主机的路由;所述第一PE为所述出接口配置策略路由,所述策略路由用于使第一PE在从所述出接口收到报。
5、文时,如果所述第一VPN的路由表内没有所述报文对应的路由,则在所述第二VPN的路由表内查找所述报文对应的路由。3如权利要求1所述的方法,其特征在于,所述第一PE在确定对应的虚拟映射IP地址的过程中,所述方法进一步包括所述第一PE从IP地址段内选择可用的IP地址作为所述目的IP地址对应的虚拟映射IP地址,并将所述虚拟映射IP地址标记为不可用的IP地址。4如权利要求1所述的方法,其特征在于,所述方法进一步包括所述第一PE在以所述虚拟映射IP地址发布该静态路由给所述第二PE之后,如果发现所述虚拟映射IP地址发生冲突,则所述第一PE重新确定所述目的IP地址对应的虚拟映射IP地址,并撤销之前以所述虚拟映。
6、射IP地址向所述第二PE发布的静态路由,并重新以当前重新确定的虚拟映射IP地址向所述第二PE发布静态路由。5如权利要求14任一项所述的方法,其特征在于,所述方法应用于多协议标签交换三层虚拟专用网络MPLSL3VPN中;所述第一PE上分别配置第二VPN下以多个主机IP地址为目地IP地址的静态路由;其中,所述多个主机的VPN为第二VPN之外的其它VPN,所述多个主机的VPN各不相同,且所述多个主机的IP地址相同。6一种服务提供商网络边缘设备PE,作为第一PE应用于包括所述第一PE和第二PE的网络中,其特征在于,所述第一PE具体包括维护模块,用于在所述第一PE上配置第二虚拟专用网络VPN下以第一VP。
7、N中第一主机IP地址为目地IP地址的静态路由时,确定对应的虚拟映射IP地址,并记录该目的IP地址、所述虚拟映射IP地址、所述第一主机在所述第一PE上的第一VPN下的出接口之间的对应关系;权利要求书CN104253751A2/2页3路由处理模块,用于以所述虚拟映射IP地址发布该静态路由给第二PE,由第二PE在第二主机对应的第二VPN的路由表内学习所述虚拟映射IP地址;报文处理模块,用于在收到来自所述第一主机的第一报文,在所述第二VPN的路由表内查找对应的路由时,利用所述对应关系,将所述第一报文的源IP地址修改为对应的虚拟映射IP地址,并发送所述第一报文;在收到来自第二PE的目的IP地址为虚拟映射。
8、IP地址的第二报文时,利用所述对应关系,将所述第二报文的目的IP地址修改为所述虚拟映射IP地址对应的目的IP地址,并通过对应的出接口发送所述第二报文。7如权利要求6所述的PE,其特征在于,所述路由处理模块,还用于接收所述第二PE向所述第一PE发布的所述第二主机的路由,并在所述第二VPN的路由表内学习所述第二主机的路由;为所述出接口配置策略路由,所述策略路由用于使所述第一PE在从所述出接口收到报文时,如果所述第一VPN的路由表内没有所述报文对应的路由,则在所述第二VPN的路由表内查找所述报文对应的路由。8如权利要求6所述的PE,其特征在于,所述维护模块,具体用于在确定对应的虚拟映射IP地址的过程。
9、中,从IP地址段内选择可用的IP地址作为所述目的IP地址对应的虚拟映射IP地址,并将所述虚拟映射IP地址标记为不可用的IP地址。9如权利要求6所述的PE,其特征在于,所述路由处理模块,还用于在以所述虚拟映射IP地址发布该静态路由给所述第二PE之后,如果发现所述虚拟映射IP地址发生冲突,则重新确定所述目的IP地址对应的虚拟映射IP地址,并撤销之前以所述虚拟映射IP地址向所述第二PE发布的静态路由,并重新以当前重新确定的虚拟映射IP地址向所述第二PE发布静态路由。10如权利要求69任一项所述的PE,其特征在于,所述第一PE应用于多协议标签交换三层虚拟专用网络MPLSL3VPN中;所述第一PE上分别。
10、配置第二VPN下以多个主机IP地址为目地IP地址的静态路由;其中,所述多个主机的VPN为第二VPN之外的其它VPN,所述多个主机的VPN各不相同,且所述多个主机的IP地址相同。权利要求书CN104253751A1/8页4一种基于多角色主机的报文传输方法和设备技术领域0001本发明涉及通信技术领域,尤其是涉及一种基于多角色主机的报文传输方法和设备,特别是一种基于MPLSL3VPN技术的报文传输方法和设备。背景技术0002MPLSMULTIPROTOCOLLABELSWITCHING,多协议标签交换L3VPNLAYER3VIRTUALPRIVATENETWORK,三层虚拟专用网络是三层VPN技术,。
11、使用BGPBORDERGATEWAYPROTOCOL,边界网关协议在服务提供商骨干网上发布用户主机的私网路由,使用MPLS在服务提供商骨干网上转发用户主机的私网报文,以通过服务提供商骨干网连接属于同一个VPN、位于不同地理位置的用户主机。在MPLSL3VPN中,不同VPN之间的路由隔离通过VPN实例实现,每个VPN实例都有相对独立的IP路由表、LFIBLABELFORWARDINGINFORMATIONBASE,标签转发信息库、与VPN实例关联的接口、以及VPN实例的管理信息等内容。0003在一般情况下,一个VPN下的主机只能访问该VPN下的其它主机,而无法访问其它VPN下的主机。但是,基于实。
12、际需要,多角色主机需要能够访问多个VPN下的主机。如图1所示,为基于多角色主机的MPLSL3VPN的组网示意图。假设VPN2下的主机C即多角色主机需要访问VPN1下的主机A,则需要在PE2上进行相关配置,以使VPN2与VPN1之间能够互访,VPN2与VPN3之间无法互访,VPN2与VPN4之间无法互访,即主机C可以访问主机A,但是无法访问主机B和主机D。主机C在访问主机A时,采用地址为120212。0004为了实现多角色主机的访问过程,则相应的处理流程包括以下步骤0005步骤1、在CE1CUSTOMEREDGE,用户网络边缘设备上配置静态默认路由,其出接口为S/2/1/0,在CE2上配置静态默。
13、认路由,其出接口为S/2/1/0,在CE3上配置静态默认路由,其出接口为S/2/1/1,在CE4上配置静态默认路由,其出接口为S/3/1/1。进一步的,在PE1PROVIDEREDGE,服务提供商网络边缘设备上创建VPN1,在PE2上创建VPN1,VPN2,VPN3,VPN4。0006步骤2、CE1将主机A的路由发送给PE1,PE1通过BGP将主机A的路由作为VPN1的私网路由发布给PE2,并分配私网标签1000。PE2在VPN1对应的路由表内学习到主机A的私网路由为100112,其私网出标签为1000。0007步骤3、在PE2上为VPN1对应的路由表配置静态路由,该静态路由的目的地址为主机C。
14、的IP地址120212,且该静态路由的下一跳为VPN2下的3111。进一步的,PE2通过BGP将静态路由作为VPN1的私网路由发布给PE1,并分配私网标签2000。之后,PE1在VPN1对应的路由表内学习到静态路由120212,其私网出标签为2000。0008步骤4、为PE2上连接CE2的接口配置策略路由,该策略路由用于使PE2在VPN2对应的路由表内无法查找到报文对应的路由时,在VPN1对应的路由表内查找报文对应的路由。进一步的,在PE2上为该策略路由进行源IP地址限制,以使得只允许源IP地址为120212的报文使用该策略路由。说明书CN104253751A2/8页50009基于上述处理,P。
15、E1在收到来自主机A的报文时,基于VPN1对应的路由表内学习到的静态路由120212,PE1将报文发送给PE2。PE2在收到报文后,通过下一跳VPN2下的3111发送报文,使报文发送给主机C。PE2在收到主机C发送给主机A的报文时,由于源IP地址为120212,VPN2对应的路由表内无法查找到报文对应的路由,因此,PE2在VPN1对应的路由表内查找报文对应的路由,基于VPN1对应的路由表内学习到的主机A的私网路由为100112,PE2将报文发送给PE1。PE1在收到报文后,通过CE1将报文发送给主机A。0010经过上述处理,可以使VPN2下的多角色主机访问VPN1下的主机。0011在实际应用中。
16、,假设主机B主机D的IP地址与主机C的IP地址相同,且VPN4下的主机B即多角色主机也需要访问VPN1下的主机A。则PE2上将在VPN1对应的路由表内配置两条静态路由,这两条静态路由的目的地址均为120212,一条静态路由的下一跳为VPN2下的3111,另一条静态路由的下一跳为VPN4下的5111。在此情况下,这两条静态路由将形成等价路由。进一步的,针对主机B和主机C,PE1在VPN1对应的路由表内只学习到静态路由120212,其私网出标签为2000。对于主机A发送给主机B或主机C的报文,在VPN1对应的路由表将对应于相同的路由。PE2在收到报文后,通过查询VPN1对应的路由表,PE2不知道将。
17、该报文发送给主机B,还是发送给主机C。发明内容0012本发明实施例提供一种基于多角色主机的报文传输方法,所述方法包括0013当在第一服务提供商网络边缘设备PE上配置第二虚拟专用网络VPN下以第一VPN中第一主机IP地址为目地IP地址的静态路由时,所述第一PE确定对应的虚拟映射IP地址,并记录该目的IP地址、所述虚拟映射IP地址、所述第一主机在所述第一PE上的第一VPN下的出接口之间的对应关系;0014所述第一PE以所述虚拟映射IP地址发布该静态路由给第二PE,由所述第二PE在第二主机对应的第二VPN的路由表内学习所述虚拟映射IP地址;0015所述第一PE在收到来自所述第一主机的第一报文,在所述。
18、第二VPN的路由表内查找对应的路由时,利用所述对应关系,将所述第一报文的源IP地址修改为对应的虚拟映射IP地址,并发送所述第一报文;0016所述第一PE在收到来自第二PE的目的IP地址为虚拟映射IP地址的第二报文时,利用所述对应关系,将所述第二报文的目的IP地址修改为所述虚拟映射IP地址对应的目的IP地址,并通过对应的出接口发送所述第二报文。0017所述方法进一步包括所述第一PE接收所述第二PE向本第一PE发布的所述第二主机的路由,并在所述第二VPN的路由表内学习所述第二主机的路由;所述第一PE为所述出接口配置策略路由,所述策略路由用于使第一PE在从所述出接口收到报文时,如果所述第一VPN的路。
19、由表内没有所述报文对应的路由,则在所述第二VPN的路由表内查找所述报文对应的路由。0018所述第一PE在确定对应的虚拟映射IP地址的过程中,所述方法进一步包括所述第一PE从IP地址段内选择可用的IP地址作为所述目的IP地址对应的虚拟映射IP地址,并将所述虚拟映射IP地址标记为不可用的IP地址。说明书CN104253751A3/8页60019所述方法进一步包括所述第一PE在以所述虚拟映射IP地址发布该静态路由给所述第二PE之后,如果发现所述虚拟映射IP地址发生冲突,则所述第一PE重新确定所述目的IP地址对应的虚拟映射IP地址,并撤销之前以所述虚拟映射IP地址向所述第二PE发布的静态路由,并重新以。
20、当前重新确定的虚拟映射IP地址向所述第二PE发布静态路由。0020所述方法应用于多协议标签交换三层虚拟专用网络MPLSL3VPN中;0021所述第一PE上分别配置第二VPN下以多个主机IP地址为目地IP地址的静态路由;其中,所述多个主机的VPN为第二VPN之外的其它VPN,所述多个主机的VPN各不相同,且所述多个主机的IP地址相同。0022本发明实施例提供一种服务提供商网络边缘设备PE,作为第一PE应用于包括所述第一PE和第二PE的网络中,所述第一PE具体包括0023维护模块,用于在所述第一PE上配置第二虚拟专用网络VPN下以第一VPN中第一主机IP地址为目地IP地址的静态路由时,确定对应的虚。
21、拟映射IP地址,并记录该目的IP地址、所述虚拟映射IP地址、所述第一主机在所述第一PE上的第一VPN下的出接口之间的对应关系;0024路由处理模块,用于以所述虚拟映射IP地址发布该静态路由给第二PE,由第二PE在第二主机对应的第二VPN的路由表内学习所述虚拟映射IP地址;0025报文处理模块,用于在收到来自所述第一主机的第一报文,在所述第二VPN的路由表内查找对应的路由时,利用所述对应关系,将所述第一报文的源IP地址修改为对应的虚拟映射IP地址,并发送所述第一报文;0026在收到来自第二PE的目的IP地址为虚拟映射IP地址的第二报文时,利用所述对应关系,将所述第二报文的目的IP地址修改为所述虚。
22、拟映射IP地址对应的目的IP地址,并通过对应的出接口发送所述第二报文。0027所述路由处理模块,还用于接收所述第二PE向所述第一PE发布的所述第二主机的路由,并在所述第二VPN的路由表内学习所述第二主机的路由;0028为所述出接口配置策略路由,所述策略路由用于使所述第一PE在从所述出接口收到报文时,如果所述第一VPN的路由表内没有所述报文对应的路由,则在所述第二VPN的路由表内查找所述报文对应的路由。0029所述维护模块,具体用于在确定对应的虚拟映射IP地址的过程中,从IP地址段内选择可用的IP地址作为所述目的IP地址对应的虚拟映射IP地址,并将所述虚拟映射IP地址标记为不可用的IP地址。00。
23、30所述路由处理模块,还用于在以所述虚拟映射IP地址发布该静态路由给所述第二PE之后,如果发现所述虚拟映射IP地址发生冲突,则重新确定所述目的IP地址对应的虚拟映射IP地址,并撤销之前以所述虚拟映射IP地址向所述第二PE发布的静态路由,并重新以当前重新确定的虚拟映射IP地址向所述第二PE发布静态路由。0031所述第一PE应用于多协议标签交换三层虚拟专用网络MPLSL3VPN中;0032所述第一PE上分别配置第二VPN下以多个主机IP地址为目地IP地址的静态路由;其中,所述多个主机的VPN为第二VPN之外的其它VPN,所述多个主机的VPN各不相同,且所述多个主机的IP地址相同。0033基于上述技。
24、术方案,本发明实施例中,通过在PE上维护虚拟映射IP地址、目的IP说明书CN104253751A4/8页7地址和出接口之间的对应关系,从而在多个具有相同IP地址的多角色主机均需要访问某主机时,能够区分这多个具有相同IP地址的多角色主机,使这多个具有相同IP地址的多角色主机的访问互不干扰,互相隔离,并保证PE能够准确的将报文发送给相应的多角色主机,避免报文传输错误。附图说明0034图1是一种基于多角色主机的MPLSL3VPN的组网示意图;0035图2是本发明实施例提供的一种基于多角色主机的报文传输方法流程图;0036图3是本发明实施例提供的一种服务提供商网络边缘设备PE的结构图。具体实施方式00。
25、37针对现有技术中存在的问题,本发明实施例提供一种基于多角色主机的报文传输方法,该方法应用于包括第一PE和第二PE的MPLSL3VPN中,第一PE下的第一主机需要访问第二PE下的第二主机,且第一主机对应的第一VPN与第二主机对应的第二VPN不同。以图1为本发明实施例的应用场景示意图,PE2为第一PE,PE1为第二PE。PE2下的主机C为第一主机,主机C对应的第一VPN为VPN2,PE1下的主机A为第二主机,主机A对应的第二VPN为VPN1,且VPN2与VPN1之间能够互访。PE2下的主机B为第一主机,主机B对应的第一VPN为VPN4,PE1下的主机A为第二主机,主机A对应的第二VPN为VPN1。
26、,且VPN4与VPN1之间能够互访。PE2下的主机D为第一主机,主机D对应的第一VPN为VPN3,PE1下的主机A为第二主机,主机A对应的第二VPN为VPN1,且VPN3与VPN1之间能够互访。0038本发明实施例中,假设主机B、主机C和主机D具有相同的IP地址如120212,且主机B即多角色主机需要访问主机A、主机C即多角色主机需要访问主机A、主机D即多角色主机需要访问主机A。0039在上述图1所示的应用场景下,本发明实施例中,如图2所示,上述基于多角色主机的报文传输方法,具体可以包括以下步骤0040步骤201,在第一PE上配置第二VPN下以第一VPN中第一主机IP地址为目地IP地址的静态路。
27、由。例如,在PE2上为VPN1对应的路由表配置静态路由,该静态路由的目的地址为主机C的IP地址120212。0041本发明实施例中,需要在第一PE上分别配置第二VPN下以多个主机IP地址为目地IP地址的静态路由;其中,这多个主机的IP地址相同,且这多个主机对应的VPN各不相同,并且这多个主机对应的VPN与第二VPN不同,即多个主机的VPN为第二VPN之外的其它VPN。例如,在PE2上为VPN1对应的路由表配置静态路由,该静态路由的目的地址为主机C的IP地址120212,下一跳为VPN2的3111。在PE2上为VPN1对应的路由表配置静态路由,该静态路由的目的地址为主机B的IP地址120212,。
28、下一跳为VPN4的5111。在PE2上为VPN1对应的路由表配置静态路由,该静态路由的目的地址为主机D的IP地址120212,下一跳为VPN3的4111。0042基于此,VPN1对应的路由表中有目的地址为120212的三条静态路由,且这三条静态路由的下一跳分别为3111、4111、5111。0043本发明实施例中,第一PE还会接收第二PE向本第一PE发布的第二主机的路由,说明书CN104253751A5/8页8并在第二主机对应的第二VPN的路由表内学习第二主机的路由。0044在本步骤201之前,在PE1上创建VPN1,在PE2上创建VPN1,VPN2,VPN3,VPN4。进一步的,在CE1上配。
29、置静态默认路由,其出接口为S/2/1/0,在CE2上配置静态默认路由,其出接口为S/2/1/0,在CE3上配置静态默认路由,其出接口为S/2/1/1,在CE4上配置静态默认路由,其出接口为S/3/1/1。之后,CE1将主机A的路由发送给PE1,PE1通过BGP将主机A的路由作为VPN1的私网路由发布给PE2,并分配私网标签1000。之后,PE2在VPN1对应的路由表内学习到主机A的私网路由为100112,其私网出标签为1000。0045步骤202,在配置第二VPN下以第一VPN中第一主机IP地址为目地IP地址的静态路由时,第一PE确定对应的虚拟映射IP地址,并记录虚拟映射IP地址、目的IP地址。
30、、第一主机在第一PE上的第一VPN下的出接口之间的对应关系。0046本发明实施例中,第一PE上会提供可以作为虚拟映射IP地址的IP地址段。基于此IP地址段,第一PE在确定对应的虚拟映射IP地址的过程中,第一PE从该IP地址段内选择可用的IP地址作为目的IP地址对应的虚拟映射IP地址,并将当前选择的虚拟映射IP地址标记为不可用的IP地址。0047例如,PE2上提供作为虚拟映射IP地址的IP地址段200000/32。在配置第二VPN下以第一VPN中第一主机IP地址主机C的IP地址120212为目地IP地址的静态路由时,PE2确定虚拟映射IP地址为200000/32,并在关联组中记录200000/3。
31、2、120212和主机C在PE2上的出接口S2/1/1之间的对应关系,即关联组为200000/32,120212,S2/1/1。在配置第二VPN下以第一VPN中第一主机IP地址主机B的IP地址120212为目地IP地址的静态路由时,PE2确定虚拟映射IP地址为200001/32,并在关联组中记录200001/32、120212和主机B在PE2上的出接口S2/1/3之间的对应关系,即关联组为200001/32,120212,S2/1/3。在配置第二VPN下以第一VPN中第一主机IP地址主机D的IP地址120212为目地IP地址的静态路由时,PE2确定虚拟映射IP地址为200002/32,并在关联。
32、组中记录200002/32、120212和主机D在PE2上的出接口S2/1/2之间的对应关系,即关联组为200002/32,120212,S2/1/2。0048本发明实施例中,在引入静态路由的VPN内配置虚拟IP映射能力,即在第二VPN内配置虚拟IP映射能力。基于此,在虚拟IP映射能力被使能的情况下,当配置第二VPN下以第一VPN中第一主机IP地址为目地IP地址的静态路由时,第一PE会去确定对应的虚拟映射IP地址。其中,第一PE确定虚拟映射IP地址的方式可以为动态方式或者静态方式。在动态方式下,由第一PE从IP地址段内动态选择可用的IP地址作为虚拟映射IP地址,并保证第一PE选择出无冲突的虚拟。
33、映射IP地址。之后,第一PE记录虚拟映射IP地址、目的IP地址、出接口之间的对应关系。在静态方式下,由用户在第一PE上手工配置虚拟映射IP地址,并由第一PE接收用户配置的虚拟映射IP地址。之后,第一PE记录虚拟映射IP地址、目的IP地址、出接口之间的对应关系。0049步骤203,第一PE以虚拟映射IP地址发布静态路由给第二PE,由第二PE在第二主机对应的第二VPN的路由表内学习虚拟映射IP地址。0050例如,PE2通过BGP将虚拟映射IP地址200000/32作为VPN1的私网路由即上述静态路由发布给PE1,并分配私网标签为2000;之后,PE1在VPN1对应的路由表内学说明书CN104253。
34、751A6/8页9习到虚拟映射IP地址200000/32,其私网出标签为2000。PE2通过BGP将虚拟映射IP地址200001/32作为VPN1的私网路由即上述静态路由发布给PE1,并分配私网标签为2001;之后,PE1在VPN1对应的路由表内学习到虚拟映射IP地址200001/32,其私网出标签为2001。PE2通过BGP将虚拟映射IP地址200002/32作为VPN1的私网路由即上述静态路由发布给PE1,并分配私网标签为2002;之后,PE1在VPN1对应的路由表内学习到虚拟映射IP地址200002/32,其私网出标签为2002。0051本发明实施例中,第一PE在以虚拟映射IP地址发布静。
35、态路由给第二PE之后,如果发现虚拟映射IP地址发生冲突,第一PE重新确定目的IP地址对应的虚拟映射IP地址,并撤销之前以该虚拟映射IP地址向第二PE发布的静态路由器,并重新以当前重新确定的虚拟映射IP地址向第二PE发布静态路由。例如,PE2将虚拟映射IP地址200000/32作为VPN1的私网路由发布给PE1之后,如果发现200000/32发生冲突,则PE2重新确定虚拟映射IP地址为200003/32,并撤销之前以该虚拟映射IP地址200000/32向PE1发布的VPN1的私网路由,并通过BGP将虚拟映射IP地址200003/32作为VPN1的私网路由发布给PE1,并分配私网标签为2000。0。
36、052其中,虚拟映射IP地址发生冲突的情况包括但不限于第一PE从IP地址段内选择可用的IP地址作为目的IP地址对应的虚拟映射IP地址后,如果选择的虚拟映射IP地址被其它主机使用,则说明该虚拟映射IP地址发生冲突。0053步骤204,第一PE在收到来自第一主机的第一报文,在第二VPN的路由表内查找对应的路由时,利用对应关系即虚拟映射IP地址、目的IP地址、出接口之间的对应关系,将第一报文的源IP地址修改为对应的虚拟映射IP地址,并发送第一报文。其中,第一PE在收到来自第一主机的第一报文时,首先在第一主机对应的第一VPN的路由表内查找对应的路由,如果第一VPN的路由表内没有对应的路由,则在第二VP。
37、N的路由表内查找对应的路由,并利用第二VPN的路由表内查找到的路由发送第一报文。0054为了实现上述过程,本发明实施例中,第一PE为出接口配置策略路由,该策略路由用于使第一PE在从出接口收到报文时,如果第一VPN的路由表内没有报文对应的路由,则在第二VPN的路由表内查找报文对应的路由。例如,为PE2上连接CE2的接口配置策略路由,该策略路由用于使PE2在VPN2对应的路由表内无法查找到报文对应的路由时,在VPN1对应的路由表内查找报文对应的路由;在PE2上为该策略路由进行源IP地址限制,以使得只允许源IP地址为120212的报文使用该策略路由。为PE2上连接CE4的接口配置策略路由,该策略路由。
38、用于使PE2在VPN4对应的路由表内无法查找到报文对应的路由时,在VPN1对应的路由表内查找报文对应的路由;在PE2上为该策略路由进行源IP地址限制,以使得只允许源IP地址为120212的报文使用该策略路由。为PE2上连接CE3的接口配置策略路由,该策略路由用于使PE2在VPN3对应的路由表内无法查找到报文对应的路由时,在VPN1对应的路由表内查找报文对应的路由;在PE2上为该策略路由进行源IP地址限制,以使得只允许源IP地址为120212的报文使用该策略路由。0055PE2在接收到主机C发送给主机A的报文目的地址为100112,源IP地址为120212时,PE2首先在VPN2对应的路由表内查。
39、找目的地址为100112的路由,由于VPN2对应的路由表内没有目的地址为100112的路由,因此,PE2在VPN1对应的路由表内查找目的地址为100112的路由,由于VPN1对应的路由表内存在目的地址为说明书CN104253751A7/8页10100112的路由,因此,PE2将基于VPN1对应的路由表内学习到的主机A的私网路由为100112发送报文。进一步的,由于源IP地址为120212,且PE2从接口S2/1/1上接收到该报文,因此,基于关联组200000/32,120212,S2/1/1记录的对应关系,PE2确定虚拟映射IP地址为200000/32,并将报文的源IP地址由120212修改为。
40、虚拟映射IP地址200000/32。之后,PE2将报文发送给PE1,该报文的源IP地址为200000/32,该报文的目的地址为100112,且私网标签为1000。PE1在接收到报文后,弹出私网标签1000,并通过CE1将报文发送给主机A。0056步骤205,第一PE在接收到来自第二PE的目的IP地址为虚拟映射IP地址的第二报文时,利用对应关系即虚拟映射IP地址、目的IP地址、出接口之间的对应关系,将第二报文的目的IP地址修改为虚拟映射IP地址对应的目的IP地址,并通过对应的出接口发送第二报文。其中,步骤204与步骤205之间没有顺序关系,步骤205也可以在步骤204之前执行。0057PE1在接。
41、收到来自主机A的报文目的地址为200000,源IP地址为100112时,基于VPN1对应的路由表内学习到的虚拟映射IP地址200000/32,PE1将报文发送给PE2,其私网标签2000。PE2在接收到报文后,弹出私网标签2000,基于关联组200000/32,120212,S2/1/1记录的对应关系,PE2将报文的目的IP地址由虚拟映射IP地址200000/32修改为虚拟映射IP地址200000/32对应的目的地址120212,并通过虚拟映射IP地址200000/32对应的出接口S2/1/1发送该报文,使报文发送给主机C。0058基于上述处理,可以实现主机A与主机C多角色主机的互访。基于同样。
42、的处理方式,可以实现主机A与主机B多角色主机的互访,可以实现主机A与主机D多角色主机的互访,本发明实施例对此不再详加赘述。0059基于上述技术方案,本发明实施例中,通过在PE上维护虚拟映射IP地址、目的IP地址和出接口之间的对应关系,从而在多个具有相同IP地址的多角色主机均需要访问某主机时,能够区分这多个具有相同IP地址的多角色主机,使这多个具有相同IP地址的多角色主机的访问互不干扰,互相隔离,并保证PE能够准确的将报文发送给相应的多角色主机,避免报文传输错误。0060如图1所示,对于主机A发送给主机C的报文,PE2可以通过关联组200000/32,120212,S2/1/1,将报文准确的发送。
43、给主机C。对于主机A发送给主机B的报文,PE2可以通过关联组200001/32,120212,S2/1/3,将报文准确的发送给主机B。对于主机A发送给主机D的报文,PE2可以通过关联组200002/32,120212,S2/1/2,将报文准确的发送给主机D。0061基于与上述方法同样的发明构思,本发明实施例中还提供了一种服务提供商网络边缘设备PE,作为第一PE应用于包括所述第一PE和第二PE的网络中,如图3所示,所述第一PE具体包括0062维护模块11,用于在所述第一PE上配置第二虚拟专用网络VPN下以第一VPN中第一主机IP地址为目地IP地址的静态路由时,确定对应的虚拟映射IP地址,并记录该。
44、目的IP地址、所述虚拟映射IP地址、所述第一主机在所述第一PE上的第一VPN下的出接口之间的对应关系;说明书CN104253751A108/8页110063路由处理模块12,用于以所述虚拟映射IP地址发布该静态路由给第二PE,由第二PE在第二主机对应的第二VPN的路由表内学习所述虚拟映射IP地址;0064报文处理模块13,用于在收到来自所述第一主机的第一报文,在所述第二VPN的路由表内查找对应的路由时,利用所述对应关系,将所述第一报文的源IP地址修改为对应的虚拟映射IP地址,并发送所述第一报文;0065在收到来自第二PE的目的IP地址为虚拟映射IP地址的第二报文时,利用所述对应关系,将所述第二。
45、报文的目的IP地址修改为所述虚拟映射IP地址对应的目的IP地址,并通过对应的出接口发送所述第二报文。0066所述路由处理模块12,还用于接收所述第二PE向所述第一PE发布的所述第二主机的路由,并在所述第二VPN的路由表内学习所述第二主机的路由;0067为所述出接口配置策略路由,所述策略路由用于使所述第一PE在从所述出接口收到报文时,如果所述第一VPN的路由表内没有所述报文对应的路由,则在所述第二VPN的路由表内查找所述报文对应的路由。0068所述维护模块11,具体用于在确定对应的虚拟映射IP地址的过程中,从IP地址段内选择可用的IP地址作为所述目的IP地址对应的虚拟映射IP地址,并将所述虚拟映。
46、射IP地址标记为不可用的IP地址。0069所述路由处理模块12,还用于在以所述虚拟映射IP地址发布该静态路由给所述第二PE之后,如果发现所述虚拟映射IP地址发生冲突,则重新确定所述目的IP地址对应的虚拟映射IP地址,并撤销之前以所述虚拟映射IP地址向所述第二PE发布的静态路由,并重新以当前重新确定的虚拟映射IP地址向所述第二PE发布静态路由。0070本发明实施例中,所述第一PE应用于多协议标签交换三层虚拟专用网络MPLSL3VPN中;所述第一PE上分别配置第二VPN下以多个主机IP地址为目地IP地址的静态路由;其中,所述多个主机的VPN为第二VPN之外的其它VPN,所述多个主机的VPN各不相同。
47、,且所述多个主机的IP地址相同。0071其中,本发明装置的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。0072通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备可以是个人计算机,服务器,或者网络设备等执行本发明各个实施例所述的方法。本领域技术人员可以理解附图只是一。
48、个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。说明书CN104253751A111/3页12图1说明书附图CN104253751A122/3页13图2说明书附图CN104253751A133/3页14图3说明书附图CN104253751A14。