專利名稱:基于IPv6地址結(jié)構(gòu)實(shí)現(xiàn)虛擬專用網(wǎng)的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域,尤其涉及一種基于IPv6地址結(jié)構(gòu)實(shí)現(xiàn)虛擬專用網(wǎng) 的方法。
背景技術(shù):
IPv6的地址長(zhǎng)度的增加,使IPV6的地址可被更清晰的層次化,例如以下 劃分策略
IPv6地址被劃分為多個(gè)全球路由等級(jí),在等級(jí)的最上層,由lntemet地址 授權(quán)機(jī)構(gòu)分配地址塊給頂級(jí)集聚(TLA),這些TLA地址可以分配給永久的 lnternet服務(wù)提供者和電信運(yùn)營(yíng)商。TLA再分配地址塊給下 一 級(jí)集聚 (NLA) , NLA分配給大的lnternet服務(wù)提供者和一些全球性的互聯(lián)網(wǎng)絡(luò)機(jī) 構(gòu)。NLA (提供者)可以將其地址再往下分給它的定購(gòu)者。由于在相同TLA 下的NLA地址有相同的TLA前綴,所以,路由很有效率。具有相同提供者的 定購(gòu)者有著同樣的NLA地址前綴。
基于集聚的分配方案是基于一定數(shù)量的高層次的交換節(jié)點(diǎn),永久的 lnternet服務(wù)提供者和電信運(yùn)營(yíng)商通過(guò)這些節(jié)點(diǎn)互聯(lián)。因?yàn)樾畔⒔粨Q是全球性 的,所以這些具有IPv6地址等級(jí)的交換節(jié)點(diǎn)有一定的地理分布。通常,這些 節(jié)點(diǎn)被提供給大的運(yùn)行商。
基于IPV6的地址聚合結(jié)構(gòu)中,頭3個(gè)地址為單播或多播等的地址類型。 接下來(lái)的13位分配給世界上不同的TLA。接下來(lái)的32位分配給下一層的提供 者和定購(gòu)者。
下一層的集聚可以再劃分NLA地址域來(lái)創(chuàng)建她們自己的等級(jí),比如可以 將NLA地址映射到現(xiàn)有的較大的ISP,下面再劃分給較小的ISP,等等。
由于目前骨干路由器很缺乏,因此隨著lnternet繼續(xù)擴(kuò)張,IPv6的等級(jí)路
由的應(yīng)用是使得骨干路由器控制路由表的唯一辦法。通過(guò)基于集聚的地址等 級(jí),定購(gòu)者的內(nèi)部網(wǎng)段可以通過(guò)高級(jí)集聚點(diǎn)來(lái)訪問(wèn),這使得骨干路由器通過(guò) TLA地址前綴來(lái)匯總路由表。
高一等級(jí)(層次)的路由器可以只查看TLA地址前綴來(lái)快速計(jì)算路由。 IPv6的巨大等級(jí)地址空間允許進(jìn)行更為分散的地址分配。
基于集聚的地址只是IP v6地址空間的 一 部分,其它的地址范圍在多播 時(shí),或只需要在一個(gè)有限范圍內(nèi)具有一個(gè)唯一的地址時(shí)分配給站點(diǎn)本地地址 和鏈路本地地址。據(jù)IETF,站點(diǎn)本地地址是過(guò)時(shí)了的概念, 一些特殊的地址 概念在IPV6的地址空間中可以使用,如下所示
1、 鏈路本地地址供企業(yè)內(nèi)部使用,不被公共的注冊(cè)^/L構(gòu)使用。鏈路本 地地址用于一個(gè)鏈路范圍內(nèi)的應(yīng)用,也可以作為在一些站點(diǎn)得到全球單播地 址前的臨時(shí)的、"過(guò)渡的"("bootstrapping")站點(diǎn)地址。
2、 站點(diǎn)本地地址在站點(diǎn)內(nèi)使用的地址,類似于IPv4的私網(wǎng)地址。
3、 多播地址定義一組接口。發(fā)給一個(gè)多播地址的數(shù)據(jù)包將被發(fā)往多播 組的所有接口,在IPV6中沒有廣播地址。廣播地址由多播地址所取代。
4、 多播地址描述
ffx1 :節(jié)點(diǎn)本地范圍,不會(huì)轉(zhuǎn)發(fā)出該節(jié)點(diǎn)。
ffx2:鏈路本地范圍,不會(huì)由路由器轉(zhuǎn)發(fā)。(用于鏈路范圍)
ffx5:站點(diǎn)本地地址,不會(huì)轉(zhuǎn)發(fā)出該站點(diǎn)。
ffx8:組織本地地址,不會(huì)轉(zhuǎn)發(fā)出該組織。該類地址由路由協(xié)議控制。 ffxe:全球范圍。
5、 任播地址用于一組接口。但是轉(zhuǎn)發(fā)到任播地址的數(shù)據(jù)包將凈皮路由 到具備該地址的一組接口中最近的接口。任播地址和仝球地址在同一個(gè)范 圍。
6、 嵌入IPv4地址的IPv6地址IPv6過(guò)渡機(jī)制提供一種技術(shù),可以通 過(guò)IPv4的路由結(jié)構(gòu)將IPv6的包以隧道的方式傳輸。使用這種技術(shù)的IPv6節(jié) 點(diǎn)被分配給特殊的IPv6單播地址,這種地址的低32位是IPv4的地址。稱這 種地址為"與IPv4兼容的IPv6地址,,,格式如下
80 bits
16 bits
32 bits
用于"IPv4兼容的IPv6地址"必須是一個(gè)唯一的全球單播IPv4地址。 另夕卜,定義了一種嵌入IPv4地址的IPv6地址。這種地址用IPv6的地址來(lái)表 示IPv4節(jié)點(diǎn)。該地址被稱為"映射IPv4的IPv6地址",格式如下
80 bits
16 bite
32 bits
0000000..............................................0000000
FFFF
IPV4 address
與本發(fā)明有關(guān)的現(xiàn)有技術(shù)是IPv6 over BGP/MPLS VPN技術(shù)。
現(xiàn)有技術(shù)存在如下缺陷
1、 采用MPLS封裝IPv6報(bào)文,帶來(lái)附加開銷;
2、 要求骨干網(wǎng)必須支持MPLS,必須運(yùn)行某種標(biāo)簽分發(fā)協(xié)議,如LDP協(xié) 議,帶來(lái)附加開銷;
3、 跨越自治系統(tǒng)的方法復(fù)雜,開銷大;
4、 訪問(wèn)lnternet的方法復(fù)雜;
5、不能用于IPv4site,通過(guò)IPv6網(wǎng)絡(luò)的互連,形成VPN。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種基于IPv6地址結(jié)構(gòu)實(shí)現(xiàn)虛擬專用網(wǎng)的方法,本 發(fā)明利用IPv6地址容納VPN信息,而且統(tǒng)一VPN報(bào)文與普通IP報(bào)文的轉(zhuǎn)發(fā)流 程,可在純IPv6網(wǎng)絡(luò)上承載VPN流量,解決了現(xiàn)有技術(shù)骨干網(wǎng)必須支持 MPLS,以及采用MPLS封裝IPv6報(bào)文帶來(lái)附加開銷問(wèn)題。
本發(fā)明的目的是通過(guò)以下技術(shù)方案實(shí)現(xiàn)的
本發(fā)明提供一種基于IPv6地址結(jié)構(gòu)實(shí)現(xiàn)虛擬專用網(wǎng)的方法,其包括
A、 基于IPv6地址結(jié)構(gòu)設(shè)置虛擬專用網(wǎng)VPN內(nèi)各個(gè)站點(diǎn)的VPN本地地址 和VPN全局地址;
B、 根據(jù)所述設(shè)置的本地地址和全局地址建立所述VPN中各站點(diǎn)的路由 信息,并根據(jù)所述路由信息,通過(guò)VPN內(nèi)各站點(diǎn)傳輸VPN報(bào)文。
其中,所述步驟A具體包括
A1、基于IPv6地址結(jié)構(gòu)設(shè)置VPN內(nèi)各個(gè)站點(diǎn)的VPN本地地址和VPN全局
地址;
A2 、建立所述VPN本地地址和VPN全局地址間的映射關(guān)系。 其中,所述步驟B具體包括
B1、根據(jù)所述設(shè)置的本地地址和全局地址,在VPN內(nèi)的PE設(shè)備上配置 所述VPN中各站點(diǎn)的路由信息;
B2、在每個(gè)站點(diǎn)上配置所述站點(diǎn)與與其相關(guān)聯(lián)的站點(diǎn)間的路由信息; B3、根據(jù)所述路由信息,通過(guò)VPN內(nèi)各站點(diǎn)傳輸VPN報(bào)文。 其中,所述步驟B1具體包括
B11、在初始化時(shí),在PE設(shè)備中配置VPN site,并為其賦予VPN site
ID;
B12、當(dāng)VPN內(nèi)有單播報(bào)文時(shí),PE設(shè)備根據(jù)所述VPN site ID生成VPN內(nèi) 各個(gè)站點(diǎn)的IPv6聚合路由;
B13、所述PE設(shè)備通過(guò)路由協(xié)議將所述IPv6聚合路由發(fā)布給VPN的P設(shè) 備和/或目的PE;
B14、所述P設(shè)備和/或目的PE根據(jù)所述VPN site ID中包含的VPN ID信 息,與本地配置的VPN sitelD中的VPN ID進(jìn)行比較,若相同,則保存此路 由;否則丟棄所述路由;
或,
B15、在初始化時(shí),在PE設(shè)備中配置VPN site,并為其分配VPN group ID信息;
B16、當(dāng)VPN內(nèi)有組播報(bào)文時(shí),通過(guò)組播路由協(xié)議,將所述分配的VPN group ID信息加入到組4番組中的各個(gè)VPN site中;
或,
B17、在初始化時(shí),通過(guò)VPN的PE設(shè)備配置VPN內(nèi)各個(gè)site,并為所述 各個(gè)site分別分配VPN site ID信息、入口路由目標(biāo)RT信息和出口 RT信息;
B18、當(dāng)VPN內(nèi)有單播報(bào)文時(shí),PE設(shè)備根據(jù)所述VPN site ID信息、入口 RT信息和出口RT信息生成IPv6聚合路由信息,并在所述IPv6聚合路由信息 中添加出口 RT信息中包含的RT擴(kuò)展團(tuán)體屬性,然后通過(guò)路由協(xié)議將其發(fā)布 給VPN的P設(shè)備和/或目的PE;
B19、所述P設(shè)備和/或目的PE根據(jù)所述VPN路由中的RT擴(kuò)展團(tuán)體屬性信 息,與本地配置的入口RT信息中的RT擴(kuò)展團(tuán)體屬性信息進(jìn)行比較,若至少 有一個(gè)RT擴(kuò)展團(tuán)體屬性信息相同,則保存此路由;否則丟棄所述路由。
其中,所述步驟B2具體包括
B21、在各個(gè)VPN站點(diǎn)上靜態(tài)配置其與與其相關(guān)聯(lián)的站點(diǎn)間的路由信
息;
成,
B22、在各個(gè)VPN站點(diǎn)上通過(guò)在PE設(shè)備與PE設(shè)備間運(yùn)行路由協(xié)議,獲得 與所述site相關(guān)聯(lián)的站點(diǎn)的路由信息。 其中,所述步驟B22具體包括
B221、通過(guò)在本地PE設(shè)備上設(shè)置的站點(diǎn)發(fā)布VPN路由信息給目標(biāo)PE設(shè) 備,所述VPN路由信息攜帶所述站點(diǎn)的VPN site ID信息;
B222、所述目標(biāo)PE接收到所述VPN路由信息時(shí),根據(jù)所述VPN site ID 信息檢查其內(nèi)是否存在與本地PE上設(shè)置的站點(diǎn)屬于同一VPN的站點(diǎn),若存在 屬于同一個(gè)VPN的站點(diǎn),則將所述站點(diǎn)的信息加入到本地PE上設(shè)置的站點(diǎn)的 路由信息中。
其中,當(dāng)在VPN內(nèi)部的各個(gè)站點(diǎn)之間轉(zhuǎn)發(fā)報(bào)文時(shí),所述步驟B3具體包
括
B31 、根據(jù)所述設(shè)置的VPN內(nèi)各個(gè)站點(diǎn)的VPN本地地址構(gòu)造VPN報(bào)文的 源地址和目的地址;
B32、根據(jù)所述站點(diǎn)上配置的路由信息,采用標(biāo)準(zhǔn)的單/組播轉(zhuǎn)發(fā)機(jī)制, 將所述VPN報(bào)文轉(zhuǎn)發(fā)給所述目的地址對(duì)應(yīng)的站點(diǎn)。
其中,當(dāng)在入口PE設(shè)備轉(zhuǎn)發(fā)報(bào)文時(shí),所述步驟B3具體包括
B33、所述入口PE對(duì)接收到的報(bào)文進(jìn)行分析,得到所述報(bào)文的源地址對(duì) 應(yīng)的site;
B34、為所述報(bào)文添加所述源地址對(duì)應(yīng)的site的VPNsitelD信息,并將源 地址轉(zhuǎn)換為源VPN全局地址;
B35、根據(jù)所述報(bào)文攜帶的目的地址查找相應(yīng)的目的site的路由信息,獲 得目的VPN site ID信息;
B36、根據(jù)所述獲得的目的VPN site ID將所述報(bào)文攜帶的目的地址轉(zhuǎn)換 為目的VPN全局地址,并4艮據(jù)所述目的VPN site ID信息將所述才艮文轉(zhuǎn)發(fā)給對(duì)
應(yīng)的site;
或,
B37、所述入口PE對(duì)接收到的報(bào)文進(jìn)行分析,得到所述報(bào)文的源地址對(duì) 應(yīng)的site;
B38、通過(guò)添加對(duì)應(yīng)的site的VPN site ID信息,將源地址轉(zhuǎn)換為源VPN 全局地址;
B39、通過(guò)添加VPN group ID信息,將所述報(bào)文攜帶的目的地址轉(zhuǎn)換為 目的VPN全局組播地址;
B310、根據(jù)所述VPN group ID信息查找在PE設(shè)備上保存的組播路由信 息,獲得相應(yīng)的目的VPNsitelD信息,并根據(jù)所述目的VPNsitelD信息將所 述報(bào)文組播給對(duì)應(yīng)的site。
其中,當(dāng)通過(guò)P設(shè)備轉(zhuǎn)發(fā)報(bào)文時(shí),所述步驟B3具體包括
B311、所述P設(shè)備接收到單播報(bào)文時(shí),根據(jù)獲得的目的site的聚合路 由,采用標(biāo)準(zhǔn)的IPv6路由方式將所述報(bào)文轉(zhuǎn)發(fā)給出口PE;
或,
B312、所述P設(shè)備接收到組播報(bào)文時(shí),根據(jù)所述報(bào)文中攜帶的VPN全局 組播地址中的VPN group ID信息,查找組播路由信息,得到相應(yīng)的多播組中 的各個(gè)site的site ID信息;
B313、根據(jù)所述得到的各個(gè)site ID信息將所述組播報(bào)文組播給相應(yīng)的多 播組中的各個(gè)site。
其中,當(dāng)在出口PE設(shè)備轉(zhuǎn)發(fā)報(bào)文時(shí),所述步驟B3具體包括
B314、當(dāng)出口PE設(shè)備接收到單播報(bào)文時(shí),將所述報(bào)文的源、目的全局 地址轉(zhuǎn)換為VPN內(nèi)部的單播本地地址;
B315、根據(jù)目的全局地址中的VPN site ID信息查找并獲得對(duì)應(yīng)的site的 本地路由4言息;
B316 、根據(jù)所述獲得的本地路由信息轉(zhuǎn)發(fā)所述報(bào)文;
或,
B317、當(dāng)出口PE設(shè)備接收到組播報(bào)文時(shí),將所述報(bào)文的源全局地址轉(zhuǎn) 換為VPN內(nèi)部的本地地址;
B318、根據(jù)報(bào)文攜帶的目的地址中的VPN group ID信息查找并獲得對(duì)應(yīng) 的site的本地路由信息并根據(jù)所述獲得的本地路由信息將目的全局地址地址 轉(zhuǎn)換為VPN內(nèi)部的組播本地地址;
B319、根據(jù)轉(zhuǎn)換后的VPN內(nèi)部的組播本地地址中的group ID信息轉(zhuǎn)發(fā)所 述報(bào)文。
其中,當(dāng)所述VPNsite訪問(wèn)因特網(wǎng)時(shí),所述步驟B3具體包括
B320、所述VPN site根據(jù)VPN site ID信息將VPN內(nèi)site的源本地地址轉(zhuǎn)
換為源全局地址,并將目的本地地址轉(zhuǎn)換為因特網(wǎng)全局地址; B321、 #4居轉(zhuǎn)換后的因特網(wǎng)全局地址訪問(wèn)因特網(wǎng)。 其中,在所述步驟B3之前包括
在所述入口PE設(shè)備中配置其與VPN site連接的接口僅接收目的地址為 VPN本地地址以及l(fā)nternet全局地址的報(bào)文,并拒絕接收目的地址為VPN全局 i也址的才艮文;以及,
在所述P設(shè)備中配置拒絕接收源/目的地址為VPN本地地址的報(bào)文。
其中,在所述步驟B3之前還包括
B322、當(dāng)所述出口PE接收到報(bào)文后,提取所述報(bào)文中的源地址中的 VPN site隨息;
B323、根據(jù)所述VPN site ID信息,檢查所述報(bào)文進(jìn)入本出口 PE的接口 是否為獲得VPN site聚合路由的接口,若是,則通過(guò)出口PE轉(zhuǎn)發(fā)所述報(bào)文, 否則,丟棄所述報(bào)文。
其中,當(dāng)VPN內(nèi)存在IPv4站點(diǎn)時(shí),所述步驟B1還包括
在PE設(shè)備上為所述IPv4站點(diǎn)分配IPv4的VPN site ID,并根據(jù)所述分配的 IPv4 site ID信息,在PE設(shè)備上配置各個(gè)IPv4站點(diǎn)的IPv4路由信息;
或,
在PE設(shè)備上為所述IPv4站點(diǎn)分配IPv4的VPN group ID,并通過(guò)組播路由 協(xié)議,在PE設(shè)備上將所述分配的IPv4的VPN group ID信息加入到組播組中的 各個(gè)VPN site中。
其中,當(dāng)VPN內(nèi)存在IPv4站點(diǎn)時(shí),所述步驟B2還包括
在各個(gè)IPv4站點(diǎn)上為所述IPv4站點(diǎn)分配IPv4的VPN site ID信息,并根據(jù) 所述分配的IPv4 site ID信息,在各個(gè)IPv4站點(diǎn)上分別配置其與相關(guān)聯(lián)的IPv4 站點(diǎn)間IPv4路由信息;
或,
在各個(gè)IPv4站點(diǎn)上為所述IPv4站點(diǎn)分配IPv4的VPN group ID,并通過(guò)組 播路由協(xié)議,在各個(gè)IPv4站點(diǎn)上將所述分配的IPv4的VPN group ID信息加入 到組播組中的各個(gè)VPN site中。
其中,當(dāng)通過(guò)VPN內(nèi)IPv6骨干網(wǎng)轉(zhuǎn)發(fā)IPv4報(bào)文時(shí),所述步驟B3具體包
括;
B324、當(dāng)入口PE接收到IPv4單播報(bào)文時(shí),首先分析所述報(bào)文的源IPv4 地址,并根據(jù)所述源地址信息查找所述配置的IPv4路由信息,得到相應(yīng)的目 的IPv4地址信息,然后將所述源和目的IPv4地址轉(zhuǎn)換為內(nèi)嵌IPv4的IPv6單播 地址,并根據(jù)所述目的地址轉(zhuǎn)發(fā)所述IPv4報(bào)文;
B325、當(dāng)所述P設(shè)備接收到所述報(bào)文時(shí),根據(jù)所述IPv6聚合路由信息轉(zhuǎn) 發(fā)所述報(bào)文給出口 PE設(shè)備;
B326、出口PE設(shè)備根據(jù)所述報(bào)文中攜帶的IPv4的VPN site ID信息確定 所述報(bào)文的目的地址對(duì)應(yīng)的站點(diǎn)為IPv4站點(diǎn)時(shí),則查找IPv4路由信息,將所 述目的IPv6地址轉(zhuǎn)換為IPv4目的地址,并根據(jù)所述IPv4目的地址將所述報(bào)文
轉(zhuǎn)發(fā)給對(duì)應(yīng)的目的站點(diǎn); 或,
B327、當(dāng)入口PE接收到IPv4組播報(bào)文時(shí),首先分析所述報(bào)文的源IPv4 地址,并根據(jù)所述源地址信息查找所述配置的IPv4路由信息,得到相應(yīng)的目 的IPv4地址信息,然后將所述源和目的IPv4地址轉(zhuǎn)換為內(nèi)嵌IPv4的IPv6單播 地址,并根據(jù)所述目的地址在IPv6網(wǎng)中轉(zhuǎn)發(fā)所述IPv4報(bào)文;
B328、當(dāng)所述報(bào)文到達(dá)出口PE設(shè)備時(shí),出口PE設(shè)備根據(jù)所述報(bào)文中攜 帶的IPv4的VPN group ID信息確定所述報(bào)文的目的地址對(duì)應(yīng)的站點(diǎn)為IPv4站 點(diǎn)時(shí),則查找IPv4路由信息,將所述目的IPv6地址轉(zhuǎn)換為IPv4目的地址,并 根據(jù)所述IPv4目的地址將所述報(bào)文轉(zhuǎn)發(fā)給對(duì)應(yīng)的目的站點(diǎn)。
由上述本發(fā)明提供的技術(shù)方案可以看出,本發(fā)明基于IPv6地址結(jié)構(gòu)設(shè)置 虛擬專用網(wǎng)VPN內(nèi)各個(gè)站點(diǎn)的VPN本地地址和VPN全局地址;然后根據(jù)所述 設(shè)置的本地地址和全局地址建立所述VPN中各站點(diǎn)的路由信息,并根據(jù)所述 路由信息,通過(guò)VPN內(nèi)各站點(diǎn)傳輸VPN報(bào)文。本發(fā)明利用IPv6地址容納VPN 信息,而且統(tǒng)一VPN報(bào)文與普通IP報(bào)文的轉(zhuǎn)發(fā)流程,可在純IPv6網(wǎng)絡(luò)上承載 VPN流量,解決了現(xiàn)有技術(shù)骨干網(wǎng)必須支持MPLS,以及采用MPLS封裝IPv6 報(bào)文帶來(lái)的附加開銷問(wèn)題;
另外,本發(fā)明^4居目的地址前綴的區(qū)別,各個(gè)site可以同時(shí)訪問(wèn)Internet 和VPN,從而實(shí)現(xiàn)簡(jiǎn)便;在跨越自治系統(tǒng)時(shí),只需將VPN site、 VPN group 的路由發(fā)布到相鄰的自治系統(tǒng),無(wú)需自治系統(tǒng)邊界路由器存儲(chǔ)/轉(zhuǎn)發(fā)VPN路 由,也無(wú)需多層標(biāo)簽棧,從而實(shí)現(xiàn)比較簡(jiǎn)單;另外,通過(guò)本發(fā)明,VPN組成 關(guān)系清晰,VPN路由只需要攜帶固定長(zhǎng)度的site ID,便于處理;而且VPN site前綴由運(yùn)營(yíng)商PE添加,并且在入口PE作合法性檢查,在出口PE作RPF檢 查,保證了VPN的安全性。再者,IPv4 site無(wú)需升級(jí)到IPv6,即可通過(guò)IPv6 骨干網(wǎng)互連,形成VPN。
圖1為VPN結(jié)構(gòu)示意囝; 圖2為本發(fā)明的流程圖。
具體實(shí)施例方式
本發(fā)明提供一種基于IPv6地址結(jié)構(gòu)實(shí)現(xiàn)虛擬專用網(wǎng)的方法,其核心為 首先基于IPv6地址結(jié)構(gòu)設(shè)置虛擬專用網(wǎng)VPN內(nèi)各個(gè)站點(diǎn)的VPN本地地址和 VPN全局地址;然后根據(jù)所述設(shè)置的本地地址和全局地址建立所述VPN中各 站點(diǎn)的路由信息,并根據(jù)所述路由信息,通過(guò)VPN內(nèi)各站點(diǎn)傳輸VPN報(bào)文。
本發(fā)明提供的第一實(shí)施例,基于如圖1所示的傳統(tǒng)的運(yùn)營(yíng)商提供的VPN 結(jié)構(gòu),在所述VPN中,包括CE設(shè)備、入口PE設(shè)備、P設(shè)備和出口PE設(shè)備。 其中PE設(shè)備和P設(shè)備構(gòu)成VPN公網(wǎng),CE設(shè)備和PE設(shè)備構(gòu)成VPN內(nèi)網(wǎng)。在上 述設(shè)備中設(shè)置站點(diǎn)(Site),每個(gè)Site均有ID,內(nèi)部/全局各有一個(gè),分別稱 為VPN本地Site ID和全局Site ID,其中,全局Site ID可以與VPN公網(wǎng)地址的 SitelD相同,^f旦有不同的前綴。
其具體實(shí)現(xiàn)過(guò)程如圖2所示,包括
步驟100、基于IPv6地址結(jié)構(gòu)設(shè)置各個(gè)站點(diǎn)的虛擬專用網(wǎng)VPN本地地址 和VPN全局地址,并在所述VPN全局地址中使用site ID標(biāo)識(shí)各站點(diǎn)。 設(shè)置VPN本地地址的過(guò)程如下
類似鏈路本地地址和站點(diǎn)本地地址設(shè)置方法設(shè)置VPN本地地址,VPN本 地地址僅在VPN內(nèi)網(wǎng)有效,VPN內(nèi)網(wǎng)中各設(shè)備間互訪,均采用這種地址。 單播VPN本地地址結(jié)構(gòu)設(shè)置為如下所示的結(jié)構(gòu)
I 10 bits I 54-n bits | n bits | 64 bits |
+----------+--------------------------+----------------------------+
I prefix I reserved I subnet ID|interface ID |
+----------+--------------------------+----------------------------+
為了允許目前的主機(jī)、路由器不加修改即可使用VPN本地地址,采用與 站點(diǎn)本地地址相同的前綴類型,如11111"011設(shè)置VPN本地單接地址,如 下
I10 bits I 38 bits | 16 bits | 64 bits |
+----------+--------------------------+----------------------------+
UllllllOlli reserved | subnet ID|interface ID |
+----------+--------------------------+----------------------------+
組播VPN本地地址結(jié)構(gòu)設(shè)置為如下所示的結(jié)構(gòu)
8 I 4 I 4 I 112-n
|llllllll|figs I scop I reserved | group ID
+--------+----+----+-----------------------------------------
其中,flgs字段包含4個(gè)比特,如下
|0|V|0|T| +—+—+—+—+
將flgs字段中的V比特(第10位)設(shè)置為1,標(biāo)識(shí)其是VPN組播地址;為 了兼容RFC3306,將第11比特設(shè)置為0; T比特(第12位)設(shè)置為1 ,標(biāo)識(shí)所 述組播地址是非永久的。scop段(13-16位)為1000,表示VPN內(nèi)網(wǎng)中有效
的組播地址。如此設(shè)置后,形成如下的格式
i 8 i 4 | 4 | 80| 32 +--------+----+----+-----------------------------------------
11111111110101110001 reserved | group ID
+--------+----+----+-----------------------------------------
VPN全局地址用于在運(yùn)營(yíng)商網(wǎng)絡(luò),即VPN公網(wǎng)上對(duì)VPN內(nèi)的目的地址進(jìn) 行尋址。運(yùn)營(yíng)商只關(guān)心路由器如何到達(dá)一個(gè)VPN站點(diǎn),以及到達(dá)哪個(gè)VPN站 點(diǎn),而不關(guān)心如<可到達(dá)VPN內(nèi)部目的站點(diǎn)。
VPN全局地址不同于全局公網(wǎng)地址,路由器必須防止不同VPN的VPN全 局地址相互可達(dá)。
設(shè)置VPN全局地址的過(guò)程如下
單播VPN全局地址設(shè)置為如下結(jié)構(gòu)
I 48-n bits 1 n bits | 64 bits |
|vpn global routing prefix| subnet ID | interface ID |
為了在VPN公網(wǎng)中尋址到一個(gè)VPN Site,將所述vpn global routing prefix設(shè)置為包含一個(gè)前綴002,以及一個(gè)VPN Site ID的結(jié)構(gòu);Subnet ID和 interface ID僅用于保存VPN內(nèi)部單播地址,在VPN公網(wǎng)上尋址時(shí)被忽略。如 此設(shè)置后,形成如下結(jié)構(gòu)
I 3 I 45 bits I 16 bits | 64 bits i
+—+---------------------+-----------+----------------------------+
|002| VPN site ID | subnet ID | interface ID |
組播VPN全局地址設(shè)置為如下結(jié)構(gòu):
8 I4 I4 I 112-n-m Im In ---------+----+----+---------------+--------------+-------------
11111111ifigs I scop I reserved| VPN group ID | group ID
---------+----+----+---------------+--------------+-------------
其中,VPN group ID表示VPN的各個(gè)Site之間傳播組播報(bào)文的組播組。
當(dāng)scop字段設(shè)置為1110時(shí),表示所述地址為在全局有效的組播地址。group ID僅用于保存VPN內(nèi)部的組播地址,在公網(wǎng)上尋址時(shí)被忽略。如此設(shè)置后, 形成如下的結(jié)構(gòu)
i 8 i 4 I 4 I 48 I 32 | 32 | +--------+----+----+--------------+--------------+---------------+
Ulllllll|010l|lll0| reserved | VPN group ID I group ID |
+--------+----+----+---------------+--------------+---------------+
上述設(shè)置的單播VPN本地地址和VPN全局地址之間可互相映射,在映射 時(shí),所述lnterface ID、 subnet ID字段在映射時(shí)保持不變,處理其它字段時(shí), 根據(jù)全局/本地地址的結(jié)構(gòu)特征,添加不同的前綴,并添加或清除VPN site ID信息。
組播VPN全局地址由VPN本地地址映射而成,在映射時(shí),按照全局/本地 地址的特征設(shè)置scop字段,并添加或清除VPN group ID。
步驟200、建立各個(gè)site間的連接關(guān)系,即VPN的拓樸關(guān)系。 VPN拓樸關(guān)系的建立方法包括如下三種
第一種,使用單播VPN全局地址中的VPN Site ID字段中的部分字段標(biāo)識(shí) VPN,即VPN ID,如果一些Site屬于同一個(gè)VPN網(wǎng)絡(luò),則它們具備同樣的 VPNID。 VPN site ID格式如下
I 45_m bits Im bits |
i VPN ID ISite ID |
第二種方式,為單播VPN全局地址中的VPN site ID字段附加路由屬性來(lái) 表達(dá)VPN拓樸關(guān)系。這種路由屬性可采用BGP擴(kuò)展團(tuán)體屬性中的目標(biāo)路由 (Route Target; RT)的格式。
第三種方式,在VPN內(nèi)的PE設(shè)備上靜態(tài)配置一個(gè)site與其它相關(guān)聯(lián)的site 間的VPN關(guān)系,形成VPN拓樸關(guān)系。
步驟300、配置所述VPN內(nèi)各個(gè)site設(shè)備的路由屬性信息。 步驟300的具體實(shí)施過(guò)程如下
步驟310、在PE設(shè)備上配置VPN內(nèi)的各個(gè)site間的路由信息。
針對(duì)步驟200中的通過(guò)第一種方式形成的VPN拓樸關(guān)系,在初始化時(shí), PE設(shè)備配置VPN內(nèi)的各個(gè)site,并為其分配相應(yīng)的VPN site ID信息,PE設(shè)備 根據(jù)所述VPN site ID信息生成IPv6聚合路由,稱為VPN site路由,例如 002:VPN site ID::/48,并通過(guò)路由協(xié)議發(fā)布給VPN的P設(shè)備以及其它PE設(shè) 備。目的PE設(shè)備根據(jù)所述VPN site ID信息中包含的VPN ID信息,與本地配 置的VPN site ID中的VPN ID進(jìn)行匹配,如果相同,則保存這條路由,否則丟 棄。具體實(shí)時(shí)過(guò)程包括如下步驟
步驟311、在PE設(shè)備中設(shè)置VPN site,并為其賦予VPN site ID;
步驟312、 PE設(shè)備根據(jù)所述VPN site ID生成IPv6聚合路由,即VPN site 路由;
步驟313、所述PE設(shè)備通過(guò)路由協(xié)議將所述IPv6聚合路由發(fā)布給VPN的 P設(shè)備和/或目的PE;
步驟314、所述P設(shè)備和/或目的PE根據(jù)所述VPN site ID中包含的VPN ID 信息,與本地配置的VPN site ID中的VPN ID進(jìn)行比較,若相同,則保存此路 由;否則丟棄所述路由。
經(jīng)過(guò)上述過(guò)程后,屬于同一個(gè)VPN的各個(gè)Site之間可達(dá),不屬于同一個(gè) VPN的各個(gè)Site之間不可達(dá)。
如果VPN內(nèi)有組播報(bào)文,則當(dāng)PE設(shè)備配置VPN site時(shí),需要為所述VPN site分配VPN group ID信息,并通過(guò)組播路由協(xié)議,將其加入到組播組 (group)中的VPNsite中。
針對(duì)步驟200中通過(guò)第二種方式形成的VPN拓樸關(guān)系,當(dāng)VPN內(nèi)僅僅轉(zhuǎn) 發(fā)單播報(bào)文時(shí),通過(guò)初始化,在VPN的PE設(shè)備上配置VPN內(nèi)的各個(gè)site,并 為所述各個(gè)site分別分配VPN site ID、入口 RT列表和出口 RT列表。PE設(shè)備 根據(jù)這些信息生成一個(gè)IPv6聚合路由信息,例如002:VPN site ID::/48,并添 加出口RT列表中包含的RT擴(kuò)展團(tuán)體屬性,通過(guò)路由協(xié)議發(fā)布給P設(shè)備以及其 它PE設(shè)備。目的PE設(shè)備將VPN路由中的RT列表與本地入口RT列表進(jìn)行匹 配,如果至少有一個(gè)RT擴(kuò)展屬性相同,則保存這條路由,否則丟棄。這樣, 根據(jù)RT擴(kuò)展屬性的匹配關(guān)系,可構(gòu)造full mesh, hub-spoke請(qǐng)?zhí)峁┫鄳?yīng)的中 文等多種VPN拓樸形式,并可以構(gòu)造lntranet, Extranet請(qǐng)?zhí)峁┫鄳?yīng)的中文 等。具體實(shí)施過(guò)程包括如下步驟
步驟315、在初始化時(shí),通過(guò)VPN的PE設(shè)備配置VPN內(nèi)各個(gè)site,并為
所述各個(gè)site分別分配VPN site ID信息、入口路由目標(biāo)RT信息和出口RT信 自
步驟316、 PE設(shè)備根據(jù)所述VPN site ID信息、入口RT信息和出口RT信 息生成IPv6聚合路由信息;
步驟317、在所述IPv6聚合路由信息中添加出口RT信息中包含的RT擴(kuò)展 團(tuán)體屬性,并通過(guò)路由協(xié)議將其發(fā)布給VPN的P設(shè)備和/或目的PE;
步驟318、所述P設(shè)備和/或目的PE根據(jù)所述VPN路由中的RT擴(kuò)展團(tuán)體屬 性信息,與本地配置的入口RT信息中的RT擴(kuò)展團(tuán)體屬性信息進(jìn)行比較,若 至少有一個(gè)RT擴(kuò)展團(tuán)體屬性信息相同,則保存此路由;否則丟棄所述路由。
如果VPN內(nèi)有組播報(bào)文,則通過(guò)PE配置VPN內(nèi)各個(gè)site時(shí),為所述各個(gè) site分配VPN group ID信息,然后,PE設(shè)備通過(guò)組播路由協(xié)議,將所述VPN group ID4言息-力口入5iJ纟且才番纟且(group)的各個(gè)site。
經(jīng)過(guò)上述步驟后,無(wú)論哪種方式,最終在PE上為每個(gè)site形成一個(gè)路由 列表,在所述列表中包含了與所述site存在VPN關(guān)系的各個(gè)site的site ID信息。
步驟320、在各個(gè)site上配置所述site的路由信息。具體實(shí)施過(guò)程包括如 下步驟
步驟321、靜態(tài)配置各個(gè)site間的路由信息;
或,
步驟322、通過(guò)在PE設(shè)備與PE設(shè)備間運(yùn)行路由協(xié)議,獲得與所述site屬 于同一VPN的其它Site的路由信息。 步驟322的實(shí)施過(guò)程具體包括
首先,本地PE設(shè)備發(fā)布VPN路由信息給目標(biāo)PE設(shè)備,所述VPN路由信 息攜帶本地PE設(shè)備上設(shè)置的site的VPN site ID信息。
接著,所述目標(biāo)PE接收到所述VPN路由信息時(shí),根據(jù)所述VPN site ID 信息檢查其內(nèi)是否存在與本地PE上設(shè)置的Site屬于同一VPN的Site,若存在 屬于同一個(gè)VPN的Site,則將所述Site的信息加入到本地PE上設(shè)置的Site的路 由信息中。
所述Site的路由信息包含了所述site以及與所述site有VPN關(guān)系的全部site
的路由信息。
步驟400、基于上述設(shè)置的site路由信息實(shí)現(xiàn)VPN報(bào)文的傳輸。具體實(shí)施 過(guò)程如下
當(dāng)在VPN內(nèi)部的各個(gè)site之間轉(zhuǎn)發(fā)報(bào)文時(shí)
由于通過(guò)上述配置過(guò)程,在每個(gè)Site均已經(jīng)獲得到達(dá)其它site的路由,故 能夠采用標(biāo)準(zhǔn)的單/組播轉(zhuǎn)發(fā)機(jī)制。所述Site通過(guò)標(biāo)準(zhǔn)的單播/組播轉(zhuǎn)發(fā)機(jī)制轉(zhuǎn) 發(fā)VPN報(bào)文給VPN內(nèi)部的其它Site設(shè)備,所述報(bào)文攜帶的源/目的地址均采用 VPN內(nèi)部地址格式構(gòu)造。
當(dāng)需要通過(guò)入口 PE設(shè)備中的site轉(zhuǎn)發(fā)VPN報(bào)文時(shí)
由于通常全局VPN地址,包括源/目的地址只能由PE生成,為防止偽造的VPN報(bào)文進(jìn)入骨干網(wǎng),在PE設(shè)備上需要進(jìn)行入口檢查,即在PE設(shè)備連接 各個(gè)site的接口上,配置其僅接收目的地址為VPN本地地址以及l(fā)nternet全局 地址的報(bào)文,拒絕接收目的地址為VPN全局地址的報(bào)文。同時(shí)配置其它接口 不接收源/目的地址為VPN本地地址的報(bào)文。以及配置P設(shè)備不接收源/目的地 址為VPN本地地址的報(bào)文。
當(dāng)在入口PE設(shè)備轉(zhuǎn)發(fā)VPN報(bào)文時(shí),首先,要識(shí)別所述VPN報(bào)文屬于哪個(gè) Site, —般采用接口/子接口方式來(lái)識(shí)別,也可以根據(jù)IPv6三元組/IPv4五元組 A/LAN/DSCP等多種方式來(lái)進(jìn)行識(shí)別。 一旦識(shí)別之后,對(duì)于單播報(bào)文,在所 述報(bào)文攜帶的源地址結(jié)構(gòu)中增加VPN site ID信息,將源地址轉(zhuǎn)換為源VPN全 局地址,然后,根據(jù)目的地址,查找PE設(shè)備上保存的site路由信息,當(dāng)找到 對(duì)應(yīng)的目的site的site ID信息后,則根據(jù)所述目的site ID信息將報(bào)文中攜帶的 目的地址轉(zhuǎn)換為目的VPN全局地址,然后根據(jù)轉(zhuǎn)換后的目的VPN全局地址, 將所述VPN報(bào)文轉(zhuǎn)發(fā)到下一跳。對(duì)于組播報(bào)文,首先添加源VPN site ID,將 源地址轉(zhuǎn)換為源VPN全局地址;然后添加VPN group ID信息,將目的地址轉(zhuǎn) 換為目的VPN全局組播地址;然后根據(jù)所述VPN group ID信息在PE設(shè)備上保 存的組播路由信息中查找對(duì)應(yīng)的目的site ID信息,最后根據(jù)所述查找到的目 的site ID信息將所述VPN報(bào)文進(jìn)行轉(zhuǎn)發(fā)。具體實(shí)施過(guò)程如下
當(dāng)在入口 PE設(shè)備轉(zhuǎn)發(fā)單播報(bào)文時(shí),包括
步驟411、所述入口PE對(duì)接收到的報(bào)文進(jìn)行分析,得到所述報(bào)文的源地 址對(duì)應(yīng)的site;
步驟412、為所述報(bào)文添加所述源地址對(duì)應(yīng)的site的VPN site ID信息,并 將源地址轉(zhuǎn)換為源VPN全局地址;
步驟413、根據(jù)所述報(bào)文攜帶的目的地址查找相應(yīng)的目的site的路由信 息,獲得目的VPN site ID信息;
步驟414、根據(jù)所述獲得的目的VPN site ID將所述報(bào)文攜帶的目的地址
轉(zhuǎn)換為目的VPN全局地址,并根據(jù)所述目的VPN site ID信息將所述報(bào)文轉(zhuǎn)發(fā) 給對(duì)應(yīng)的site。
當(dāng)在入口 PE設(shè)備轉(zhuǎn)發(fā)組播報(bào)文時(shí),包括
步驟421、所述入口PE對(duì)接收到的報(bào)文進(jìn)行分析,得到所述報(bào)文的源地 址對(duì)應(yīng)的site;
步驟422、通過(guò)添加對(duì)應(yīng)的site的VPN site ID信息,將源地址轉(zhuǎn)換為源 VPN全局地址;
步驟423、通過(guò)添加VPN group ID信息,將所述報(bào)文攜帶的目的地址轉(zhuǎn) 換為目的VPN全局組播地址;此處的VPN group ID信息從哪里獲得?
步驟424、根據(jù)所述VPN group ID信息查找在PE設(shè)備上保存的組播路由 信息,獲得相應(yīng)的目的VPN site ID信息,并根據(jù)所述目的VPN site ID信息將 所述"t艮文組播給對(duì)應(yīng)的site。
當(dāng)需要在P設(shè)備轉(zhuǎn)發(fā)VPN報(bào)文時(shí)
對(duì)于單播報(bào)文,由于P設(shè)備已經(jīng)獲得了到達(dá)目的site的聚合路由,因此, 采用標(biāo)準(zhǔn)的IPv6路由轉(zhuǎn)發(fā)即可到達(dá)出口PE。對(duì)于組播報(bào)文,需要根據(jù)VPN全 局組播地址中的VPN group ID信息,查找組播路由信息,進(jìn)行轉(zhuǎn)發(fā)。其不同 于標(biāo)準(zhǔn)的組播轉(zhuǎn)發(fā)流程,而是按照最長(zhǎng)匹配的方式根據(jù)組播聚合路由進(jìn)行轉(zhuǎn) 發(fā),也稱為組播聚合路由轉(zhuǎn)發(fā)。具體實(shí)施過(guò)程如下
當(dāng)通過(guò)P設(shè)備轉(zhuǎn)發(fā)單播VPN報(bào)文時(shí),包括
步驟431、所述P設(shè)備接收到單播報(bào)文時(shí),根據(jù)獲得的目的site的聚合路 由,采用標(biāo)準(zhǔn)的IPv6路由方式將所述報(bào)文轉(zhuǎn)發(fā)給出口PE; 當(dāng)通過(guò)P設(shè)備轉(zhuǎn)發(fā)組播VPN報(bào)文時(shí),包括
步驟432、所述P設(shè)備接收到組播報(bào)文時(shí),根據(jù)所述報(bào)文中攜帶的VPN全 局組播地址中的VPN group ID信息,查找組播路由信息,得到相應(yīng)的多播組 中的各個(gè)site的site ID信息;
步驟433、根據(jù)所述得到的各個(gè)site ID信息將所述組播報(bào)文組播給相應(yīng) 的多播組中的各個(gè)site。
當(dāng)需要通過(guò)出口PE設(shè)備轉(zhuǎn)發(fā)VPN報(bào)文時(shí)
當(dāng)需要通過(guò)出口PE設(shè)備轉(zhuǎn)發(fā)報(bào)文時(shí),為防止入口PE上的誤配置或安全 檢查失效,在出口PE上,應(yīng)該防止進(jìn)入的報(bào)文設(shè)置了非法源site ID。方法 是當(dāng)所述出口PE接收到報(bào)文后,首先提取所述報(bào)文中的源地址中的VPN sitelD信息;然后,根據(jù)所述VPN site ID信息,檢查所述報(bào)文進(jìn)入本出口PE 的接口是否為獲得VPN site聚合路由的接口,若是,則通過(guò)所述出口PE轉(zhuǎn)發(fā) 所述報(bào)文,否則,丟棄所述報(bào)文。
在出口PE上轉(zhuǎn)發(fā)VPN報(bào)文時(shí),對(duì)于單播報(bào)文,首先將源、目的全局地址 轉(zhuǎn)換成VPN內(nèi)部的單播本地地址,然后根據(jù)轉(zhuǎn)換后的目的地址中的site ID信 息,查找對(duì)應(yīng)的本地site路由信息,并根據(jù)所述信息轉(zhuǎn)發(fā)所述VPN報(bào)文。對(duì) 于組播報(bào)文,將源地址轉(zhuǎn)換為VPN內(nèi)部的組播本地地址,并根據(jù)目的地址中 的VPN group ID信息,定位到本地site,將目的全局地址地址轉(zhuǎn)換為VPN內(nèi) 部的組播本地地址,然后根據(jù)轉(zhuǎn)換后的VPN內(nèi)部的組播本地地址中的group ID信息轉(zhuǎn)發(fā)所述^^文。具體實(shí)施過(guò)程如下
當(dāng)在出口PE設(shè)備轉(zhuǎn)發(fā)單播報(bào)文時(shí),包括
步驟451、當(dāng)出口PE設(shè)備接收到單播報(bào)文時(shí),將所述報(bào)文的源、目的全 局地址轉(zhuǎn)換為VPN內(nèi)部的單播本地地址;
步驟452、根據(jù)目的全局地址中的VPN site ID信息查找并獲得對(duì)應(yīng)的site 的本地路由信息;
步驟453 、根據(jù)所述獲得的本地路由信息轉(zhuǎn)發(fā)所述報(bào)文;
當(dāng)在出口 PE設(shè)備轉(zhuǎn)發(fā)組播報(bào)文時(shí),包括
步驟454、當(dāng)出口PE設(shè)備接收到組播報(bào)文時(shí),將所述報(bào)文的源全局地址 轉(zhuǎn)換為VPN內(nèi)部的本地地址;
步驟455、根據(jù)報(bào)文攜帶的目的地址中的VPN group ID信息查找并獲得 對(duì)應(yīng)的site的本地路由信息并根據(jù)所述獲得的本地路由信息將目的全局地址 地址轉(zhuǎn)換為VPN內(nèi)部的組播本地地址;
步驟456、根據(jù)轉(zhuǎn)換后的VPN內(nèi)部的組播本地地址中的group ID信息轉(zhuǎn)
發(fā)所述報(bào)文。
上述過(guò)程描述了VPN內(nèi)各個(gè)site之間互相訪問(wèn)的過(guò)程,VPN site除了訪問(wèn) VPN內(nèi)其它site外,還可以同時(shí)訪問(wèn)lnternet。
當(dāng)所述VPN site訪問(wèn)因特網(wǎng)時(shí),所述VPN site根據(jù)VPN site ID信息將 VPN內(nèi)site的本地地址轉(zhuǎn)換為因特網(wǎng)全局地址,并根據(jù)轉(zhuǎn)換后的因特網(wǎng)全局 地址訪問(wèn)因特網(wǎng)。
VPN內(nèi)部的本地地址轉(zhuǎn)換為lnternet全局地址的格式如下所示
|3| 45 bits I 16 bits | 64 bits |
10011 global routing prefix| subnet ID | interface ID |
+——+---------------------+------------+----------------------------+
上述格式為RFC3587標(biāo)準(zhǔn)格式,其中,global routing prefix可以通過(guò) VPN sitelD自動(dòng)生成。
通過(guò)本發(fā)明,可以看出,在轉(zhuǎn)發(fā)VPN報(bào)文時(shí),采用了標(biāo)準(zhǔn)的IPv6路由轉(zhuǎn) 發(fā)方式,因此在跨越自治系統(tǒng)時(shí),只需要將VPN內(nèi)各個(gè)site,或VPN內(nèi)的組 播組(group)的路由信息發(fā)布到相鄰的自治系統(tǒng),以及屬于同一個(gè)VPN網(wǎng) 絡(luò)的PE設(shè)備之間分發(fā)VPN內(nèi)各個(gè)site的路由即可。
通過(guò)本發(fā)明,還能夠?qū)崿F(xiàn)IPV4站點(diǎn)的互聯(lián),即通過(guò)IPv6骨干網(wǎng)絡(luò)將多個(gè) IPv4網(wǎng)絡(luò)互相連接起來(lái),或者接入采用IPv4地址的VPN用戶,此時(shí)對(duì)于單播 報(bào)文,VPN內(nèi)的PE設(shè)備對(duì)每個(gè)IPv4 site,仍然分配一個(gè)IPv6的VPN site ID; 對(duì)于組播報(bào)文,對(duì)每個(gè)IPv4 site仍然分配一個(gè)VPN group ID,同時(shí)維護(hù)IPv4 路由信息,并保存到IPv4路由信息中,但這種IPv4路由信息攜帶一個(gè)路由屬
29
性,包含IPv4所屬的VPNsitelD。
通過(guò)VPN拓樸發(fā)現(xiàn)過(guò)程,PE設(shè)備獲得site內(nèi)部的IPv4路由后,要增加 VPN site ID屬性,發(fā)布給其它PE設(shè)備,目的PE設(shè)備檢查這個(gè)site是否與本地 的某個(gè)site屬于同一個(gè)VPN,如果相同,則保存這條路由,否則丟棄。
從CE設(shè)備進(jìn)入PE設(shè)備的單播報(bào)文,根據(jù)入接口等信息確定它源自哪個(gè) site,然后查找IPv4路由表,確定相應(yīng)的目的site,然后將源/目的IPv4地址轉(zhuǎn) 換為內(nèi)嵌IPv4的IPv6 VPN單播地址,格式如下
I 3 I 45 bits I 32 I 16 I 32 bits I
+—+-------------------------------+--------+--------------------------+
10021 VPN site ID |reserved|FFFF| IPv4 address i
+——+-----------------------------+--------+----+---------------------+
然后根據(jù)目的site,找到下一跳進(jìn)行轉(zhuǎn)發(fā)。進(jìn)入P設(shè)備的單播報(bào)文,P設(shè) 備根據(jù)上述地址,查找VPN site的聚合路由,進(jìn)行轉(zhuǎn)發(fā)。到達(dá)出口PE時(shí),根 據(jù)VPN site ID,獲知其目的地址是一個(gè)IPv4 site,轉(zhuǎn)換為IPv4地址,查找 IPv4路由表轉(zhuǎn)發(fā)給CE。
從CE進(jìn)入PE的組播報(bào)文,首先根據(jù)入接口等信息確定它源自哪個(gè)site, 確定VPN group,然后將源地址轉(zhuǎn)換為內(nèi)嵌IPv4的IPv6 VPN單播地址,將目 的地址轉(zhuǎn)換為內(nèi)嵌IPv4的IPv6 VPN組播地址,格式如下
I 8 I 4 I 4 I 48 I32 | 32 !
|11111111|0101|1110| reserved | VPN group ID | IPv4 address |
+--------+----+----+---------------h------------------------------+
然后根據(jù)VPN group,在骨干網(wǎng)內(nèi)進(jìn)行轉(zhuǎn)發(fā)。到達(dá)出口PE時(shí),根據(jù)VPN group ID,知道其目的地是一個(gè)IPv4 site,轉(zhuǎn)換為IPv4組播地址,然后轉(zhuǎn)發(fā) 給CE。
由上述本發(fā)明的具體實(shí)施方案可以看出,本發(fā)明利用IPv6地址結(jié)構(gòu),無(wú)
需附加VPN前綴即可組成VPN地址,VPN網(wǎng)絡(luò)內(nèi)部本地地址的尋址和VPN報(bào) 文的封裝都基于IPv6地址結(jié)構(gòu),VPN網(wǎng)絡(luò)中站點(diǎn)的路由不需要采用特殊方 法,采用普通的IPv6路由即可實(shí)現(xiàn),也不需要采用特殊的隧道來(lái)封裝VPN報(bào) 文。而且在VPN骨干網(wǎng)內(nèi)部不需要保存、也不需要發(fā)布VPN內(nèi)部各個(gè)站點(diǎn)的 路由信息。因此,其存在如下顯著效果
1、 利用IPv6地址容納VPN信息,VPN報(bào)文無(wú)需附加的開銷;
2、 VPN報(bào)文與普通IP報(bào)文的轉(zhuǎn)發(fā)流程統(tǒng)一,可在純IPv6網(wǎng)絡(luò)上承載VPN 流量;
3、 P設(shè)備僅維護(hù)VPNsite聚合路由,開銷??;
4、 VPN組成關(guān)系清晰,VPN路由只需要攜帶固定長(zhǎng)度的site ID,便于處
理;
5、 根據(jù)目的地址前綴的區(qū)別,site可以同時(shí)訪問(wèn)lnternet和VPN,實(shí)現(xiàn)簡(jiǎn)
便;
6、 VPN site前綴由運(yùn)營(yíng)商PE添加,并且在入口PE作合法性檢查,在出 口PE作RPF檢查,保證了VPN的安全性;
7、 IPv4 site無(wú)需升級(jí)到IPv6,即可通過(guò)IPv6骨干網(wǎng)互連,形成VPN;
8、 跨越自治系統(tǒng)的方法實(shí)現(xiàn)簡(jiǎn)單,無(wú)需自治系統(tǒng)邊界路由器存儲(chǔ)/轉(zhuǎn)發(fā) VPN路由,也無(wú)需多層標(biāo)簽棧。
以上所述,僅為本發(fā)明較佳的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不 局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可 輕易想到的變化或替換,例如IPv4站點(diǎn)間的互聯(lián)的情況,都應(yīng)涵蓋在本發(fā)明 的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求的保護(hù)范圍為 準(zhǔn)。
權(quán)利要求
1、一種基于IPv6地址結(jié)構(gòu)實(shí)現(xiàn)虛擬專用網(wǎng)的方法,其特征在于,包括A、基于IPv6地址結(jié)構(gòu)設(shè)置虛擬專用網(wǎng)VPN內(nèi)各個(gè)站點(diǎn)的VPN本地地址和VPN全局地址;B、根據(jù)所述設(shè)置的本地地址和全局地址建立所述VPN中各站點(diǎn)的路由信息,并根據(jù)所述路由信息,通過(guò)VPN內(nèi)各站點(diǎn)傳輸VPN報(bào)文。
2、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟A具體包括A1、基于IPv6地址結(jié)構(gòu)設(shè)置VPN內(nèi)各個(gè)站點(diǎn)的VPN本地地址和VPN全局地址;A2、建立所述VPN本地地址和VPN全局地址間的映射關(guān)系。
3、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟B具體包括B1、根據(jù)所述設(shè)置的本地地址和全局地址,在VPN內(nèi)的PE設(shè)備上配置 所述VPN中各站點(diǎn)的路由信息;B2、在每個(gè)站點(diǎn)上配置所述站點(diǎn)與與其相關(guān)聯(lián)的站點(diǎn)間的路由信息; B3、根據(jù)所述路由信息,通過(guò)VPN內(nèi)各站點(diǎn)傳輸VPN報(bào)文。
4、 根據(jù)權(quán)利要求3所述的方法,其特征在于,所述步驟B1具體包括 B11、在初始化時(shí),在PE設(shè)備中配置VPN site,并為其賦予VPN siteID;B12、當(dāng)VPN內(nèi)有單播報(bào)文時(shí),PE設(shè)備根據(jù)所述VPN site ID生成VPN內(nèi) 各個(gè)站點(diǎn)的IPv6聚合路由;B13、所述PE設(shè)備通過(guò)路由協(xié)議將所述IPv6聚合路由發(fā)布給VPN的P設(shè) 備和/或目的PE;B14、所述P設(shè)備和/或目的PE根據(jù)所述VPN site ID中包含的VPN ID信 息,與本地配置的VPN site ID中的VPN ID進(jìn)行比較,若相同,則保存此路 由;否則丟棄所述路由; 或,B15、在初始化時(shí),在PE設(shè)備中配置VPN site,并為其分配VPN group ID信息;B16、當(dāng)VPN內(nèi)有組播報(bào)文時(shí),通過(guò)組播路由協(xié)議,將所述分配的VPN group ID信息加入到組播組中的各個(gè)VPN site中;或,B17、在初始化時(shí),通過(guò)VPN的PE設(shè)備配置VPN內(nèi)各個(gè)site,并為所述 各個(gè)site分別分配VPN site ID信息、入口路由目標(biāo)RT信息和出口 RT信息;B18、當(dāng)VPN內(nèi)有單播報(bào)文時(shí),PE設(shè)備根據(jù)所述VPN site ID信息、入口 RT信息和出口RT信息生成IPv6聚合路由信息,并在所述IPv6聚合路由信息 中添加出口 RT信息中包含的RT擴(kuò)展團(tuán)體屬性,然后通過(guò)路由協(xié)議將其發(fā)布 給VPN的P設(shè)備和/或目的PE;B19、所述P設(shè)備和/或目的PE根據(jù)所述VPN路由中的RT擴(kuò)展團(tuán)體屬性信 息,與本地配置的入口RT信息中的RT擴(kuò)展團(tuán)體屬性信息進(jìn)行比較,若至少 有一個(gè)RT擴(kuò)展團(tuán)體屬性信息相同,則保存此路由;否則丟棄所述路由。
5、 根據(jù)權(quán)利要求3所述的方法,其特征在于,所述步驟B2具體包括 B21、在各個(gè)VPN站點(diǎn)上靜態(tài)配置其與與其相關(guān)聯(lián)的站點(diǎn)間的路由信息;或,B22、在各個(gè)VPN站點(diǎn)上通過(guò)在PE設(shè)備與PE設(shè)備間運(yùn)行路由協(xié)議,獲得 與所迷site相關(guān)聯(lián)的站點(diǎn)的路由信息。
6、 根據(jù)權(quán)利要求5所述的方法,其特征在于,所述步驟B22具體包括 B221、通過(guò)在本地PE設(shè)備上設(shè)置的站點(diǎn)發(fā)布VPN路由信息給目標(biāo)PE設(shè)備,所述VPN路由信息攜帶所述站點(diǎn)的VPN site ID信息; B222、所迷目標(biāo)PE接收到所迷VPN路由信息時(shí),根據(jù)所迷VPN site ID 信息檢查其內(nèi)是否存在與本地PE上設(shè)置的站點(diǎn)屬于同一VPN的站點(diǎn),若存在 屬于同一個(gè)VPN的站點(diǎn),則將所述站點(diǎn)的信息加入到本地PE上設(shè)置的站點(diǎn)的 路由信息中。
7、 根據(jù)權(quán)利要求3所述的方法,其特征在于,當(dāng)在VPN內(nèi)部的各個(gè)站點(diǎn) 之間轉(zhuǎn)發(fā)報(bào)文時(shí),所述步驟B3具體包括B31、根據(jù)所述設(shè)置的VPN內(nèi)各個(gè)站點(diǎn)的VPN本地地址構(gòu)造VPN報(bào)文的 源i也址和目的i也址;B32、根據(jù)所述站點(diǎn)上配置的路由信息,采用標(biāo)準(zhǔn)的單/組播轉(zhuǎn)發(fā)機(jī)制, 將所述VPN報(bào)文轉(zhuǎn)發(fā)給所述目的地址對(duì)應(yīng)的站點(diǎn)。
8、 根據(jù)權(quán)利要求3所述的方法,其特征在于,當(dāng)在入口PE設(shè)備轉(zhuǎn)發(fā)報(bào)文 時(shí),所述步驟B3具體包括B33、所述入口PE對(duì)接收到的報(bào)文進(jìn)行分析,得到所述報(bào)文的源地址對(duì) 應(yīng)的site;B34、為所述報(bào)文添加所述源地址對(duì)應(yīng)的site的VPN site ID信息,并將源 地址轉(zhuǎn)換為源VPN全局地址;B35、根據(jù)所述報(bào)文攜帶的目的地址查找相應(yīng)的目的site的路由信息,獲 得目的VPN sitelD信息;B36、根據(jù)所述獲得的目的VPN site ID將所述報(bào)文攜帶的目的地址轉(zhuǎn)換 為目的VPN全局地址,并根據(jù)所述目的VPN site ID信息將所述報(bào)文轉(zhuǎn)發(fā)給對(duì) 應(yīng)的site;或,B37、所述入口PE對(duì)接收到的報(bào)文進(jìn)行分析,得到所述報(bào)文的源地址對(duì) 應(yīng)的site;B38、通過(guò)添加對(duì)應(yīng)的site的VPN site ID信息,將源地址轉(zhuǎn)換為源VPN 全局地址;B39、通過(guò)添加VPN group ID信息,將所述報(bào)文攜帶的目的地址轉(zhuǎn)換為 目的VPN全局組播地址;B310、根據(jù)所述VPN group ID信息查找在PE設(shè)備上保存的組播路由信 息,獲得相應(yīng)的目的VPN site ID信息,并根據(jù)所述目的VPN site ID信息將所 述報(bào)文組播給對(duì)應(yīng)的site。
9、 根據(jù)權(quán)利要求3所述的方法,其特征在于,當(dāng)通過(guò)P設(shè)備轉(zhuǎn)發(fā)報(bào)文 時(shí),所述步驟B3具體包括B311、所述P設(shè)備接收到單播報(bào)文時(shí),根據(jù)獲得的目的site的聚合路 由,采用標(biāo)準(zhǔn)的IPv6路由方式將所述報(bào)文轉(zhuǎn)發(fā)給出口PE; 或,B312、所述P設(shè)備接收到組播報(bào)文時(shí),根據(jù)所述報(bào)文中攜帶的VPN全局 組播地址中的VPN group ID信息,查找組播路由信息,得到相應(yīng)的多播組中 的各個(gè)site的site ID信息;B313、根據(jù)所述得到的各個(gè)site ID信息將所述組播報(bào)文組播給相應(yīng)的多 播組中的各個(gè)site。
10、 根據(jù)權(quán)利要求3所述的方法,其特征在于,當(dāng)在出口PE設(shè)備轉(zhuǎn)發(fā)報(bào) 文時(shí),所述步驟B3具體包括B314、當(dāng)出口PE設(shè)備接收到單播報(bào)文時(shí),將所述報(bào)文的源、目的全局 地址轉(zhuǎn)換為VPN內(nèi)部的單播本地地址;B315、根據(jù)目的全局地址中的VPN site ID信息查找并獲得對(duì)應(yīng)的site的 本地路由信息;B316、根據(jù)所述獲得的本地路由信息轉(zhuǎn)發(fā)所述報(bào)文;或,B317、當(dāng)出口PE設(shè)備接收到組播報(bào)文時(shí),將所述報(bào)文的源全局地址轉(zhuǎn)換為VPN內(nèi)部的本地地址;B318、根據(jù)報(bào)文攜帶的目的地址中的VPN group ID信息查找并獲得對(duì)應(yīng) 的site的本地路由信息并4艮據(jù)所述獲得的本地路由信息將目的全局地址地址 轉(zhuǎn)換為VPN內(nèi)部的組播本地地址;B319、根據(jù)轉(zhuǎn)換后的VPN內(nèi)部的組播本地地址中的group ID信息轉(zhuǎn)發(fā)所 述報(bào)文。
11、 根據(jù)權(quán)利要求3所述的方法,其特征在于,當(dāng)所述VPN site訪問(wèn)因 特網(wǎng)時(shí),所述步驟B3具體包括B320、所述VPN site根據(jù)VPN site ID信息將VPN內(nèi)site的源本地地址轉(zhuǎn)換為源全局地址,并將目的本地地址轉(zhuǎn)換為因特網(wǎng)全局地址; B321、根據(jù)轉(zhuǎn)換后的因特網(wǎng)全局地址訪問(wèn)因特網(wǎng)。
12、 根據(jù)權(quán)利要求8所述的方法,其特征在于,在所述步驟B3之前包括在所述入口PE設(shè)備中配置其與VPN site連接的接口僅接收目的地址為 VPN本地地址以及l(fā)nternet全局地址的報(bào)文,并拒絕接收目的地址為VPN全局 地址的報(bào)文;以及,在所述P設(shè)備中配置拒絕接收源/目的地址為VPN本地地址的報(bào)文。
13、 根據(jù)權(quán)利要求10所述的方法,其特征在于,在所述步驟B3之前還包括..B322、當(dāng)所述出口PE接收到報(bào)文后,提取所述報(bào)文中的源地址中的 VPNsitelD信息;B323、根據(jù)所述VPN site ID信息,檢查所述報(bào)文進(jìn)入本出口 PE的接口 是否為獲得VPN site聚合路由的接口,若是,則通過(guò)出口PE轉(zhuǎn)發(fā)所述報(bào)文, 否則,丟棄所述報(bào)文。
14、 根據(jù)權(quán)利要求3所述的方法,其特征在于,當(dāng)VPN內(nèi)存在IPv4站點(diǎn) 時(shí),所述步驟B1還包括在PE設(shè)備上為所述IPv4站點(diǎn)分配IPv4的VPN site ID,并根據(jù)所述分配的 IPv4 site ID信息,在PE設(shè)備上配置各個(gè)IPv4站點(diǎn)的IPv4路由信息;或,在PE設(shè)備上為所述IPv4站點(diǎn)分配IPv4的VPN group ID,并通過(guò)組播路由 協(xié)議,在PE設(shè)備上將所述分配的IPv4的VPN group ID信息加入到組播組中的 各個(gè)VPN site中。
15、 根據(jù)權(quán)利要求3所述的方法,其特征在于,當(dāng)VPN內(nèi)存在IPv4站點(diǎn) 時(shí),所述步驟B2還包括在各個(gè)IPv4站點(diǎn)上為所述IPv4站點(diǎn)分配IPv4的VPN site ID信息,并根據(jù) 所述分配的IPv4 site ID信息,在各個(gè)IPv4站點(diǎn)上分別配置其與相關(guān)聯(lián)的IPv4 站點(diǎn)間IPv4路由信息;或,在各個(gè)IPv4站點(diǎn)上為所述IPv4站點(diǎn)分配IPv4的VPN group ID,并通過(guò)組 播路由協(xié)議,在各個(gè)IPv4站點(diǎn)上將所述分配的IPv4的VPN group ID信息加入 到組播組中的各個(gè)VPN site中。
16、 根據(jù)權(quán)利要求3所述的方法,其特征在于,當(dāng)通過(guò)VPN內(nèi)IPv6骨干 網(wǎng)轉(zhuǎn)發(fā)IPv4報(bào)文時(shí),所述步驟B3具體包括;B324、當(dāng)入口PE接收到IPv4單播報(bào)文時(shí),首先分析所述報(bào)文的源IPv4 地址,并根據(jù)所述源地址信息查找所述配置的IPv4路由信息,得到相應(yīng)的目 的IPv4地址信息,然后將所述源和目的IPv4地址轉(zhuǎn)換為內(nèi)嵌IPv4的IPv6單播 地址,并根據(jù)所述目的地址轉(zhuǎn)發(fā)所述IPv4報(bào)文;B325、當(dāng)所述P設(shè)備接收到所述報(bào)文時(shí),根據(jù)所述IPv6聚合路由信息轉(zhuǎn) 發(fā)所述報(bào)文給出口PE設(shè)備;B326、出口PE設(shè)備根據(jù)所述報(bào)文中攜帶的IPv4的VPN site ID信息確定 所述報(bào)文的目的地址對(duì)應(yīng)的站點(diǎn)為IPv4站點(diǎn)時(shí),則查找IPv4路由信息,將所 迷目的IPv6地址轉(zhuǎn)換為IPv4目的地址,并根據(jù)所述IPv4目的地址將所述報(bào)文 轉(zhuǎn)發(fā)給對(duì)應(yīng)的目的站點(diǎn); 或,B327、當(dāng)入口PE接收到IPv4組播報(bào)文時(shí),首先分析所述報(bào)文的源IPv4 地址,并根據(jù)所述源地址信息查找所述配置的IPv4路由信息,得到相應(yīng)的目 的IPv4地址信息,然后將所述源和目的IPv4地址轉(zhuǎn)換為內(nèi)嵌IPv4的IPv6單播 地址,并根據(jù)所述目的地址在IPv6網(wǎng)中轉(zhuǎn)發(fā)所述IPv4報(bào)文;B328、當(dāng)所述報(bào)文到達(dá)出口PE設(shè)備時(shí),出口PE設(shè)備根據(jù)所述報(bào)文中攜 帶的IPv4的VPN group ID信息確定所述報(bào)文的目的地址對(duì)應(yīng)的站點(diǎn)為IPv4站 點(diǎn)時(shí),則查找IPv4路由信息,將所述目的IPv6地址轉(zhuǎn)換為IPv4目的地址,并 根據(jù)所述IPv4目的地址將所述報(bào)文轉(zhuǎn)發(fā)給對(duì)應(yīng)的目的站點(diǎn)。
全文摘要
本發(fā)明涉及一種基于IPv6地址結(jié)構(gòu)實(shí)現(xiàn)虛擬專用網(wǎng)的方法,其核心是首先基于IPv6地址結(jié)構(gòu)設(shè)置虛擬專用網(wǎng)VPN內(nèi)各個(gè)站點(diǎn)的VPN本地地址和VPN全局地址;然后根據(jù)所述設(shè)置的本地地址和全局地址建立所述VPN中各站點(diǎn)的路由信息,并根據(jù)所述路由信息,通過(guò)VPN內(nèi)各站點(diǎn)傳輸VPN報(bào)文。通過(guò)本發(fā)明,不僅能夠利用IPv6地址容納VPN信息,而且根據(jù)目的地址前綴的區(qū)別,各個(gè)站點(diǎn)site可以訪問(wèn)Internet和VPN,從而實(shí)現(xiàn)簡(jiǎn)便;在跨越自治系統(tǒng)時(shí),只需將VPN site、VPN group的路由發(fā)布到相鄰的自治系統(tǒng),無(wú)需自治系統(tǒng)邊界路由器存儲(chǔ)/轉(zhuǎn)發(fā)VPN路由,也無(wú)需多層標(biāo)簽棧,從而實(shí)現(xiàn)比較簡(jiǎn)單。
文檔編號(hào)H04L12/56GK101114971SQ20061010381
公開日2008年1月30日 申請(qǐng)日期2006年7月27日 優(yōu)先權(quán)日2006年7月27日
發(fā)明者斌 李 申請(qǐng)人:華為技術(shù)有限公司