本申請(qǐng)涉及通信技術(shù)領(lǐng)域,尤其涉及一種報(bào)文傳輸方法和裝置。
背景技術(shù):
SSL(Secure Sockets Layer,安全套接字層)VPN(Virtual Private Network,虛擬專用網(wǎng)絡(luò))是以SSL為基礎(chǔ)的VPN技術(shù),可以充分利用SSL協(xié)議提供的身份認(rèn)證、數(shù)據(jù)加密、消息完整性驗(yàn)證等機(jī)制,為應(yīng)用層的通信建立安全連接。
在部署了SSL VPN網(wǎng)關(guān)的網(wǎng)絡(luò)中,終端設(shè)備向SSL VPN網(wǎng)關(guān)發(fā)送會(huì)話協(xié)商請(qǐng)求報(bào)文,SSL VPN網(wǎng)關(guān)為終端設(shè)備分配認(rèn)證加密信息,并將認(rèn)證加密信息發(fā)送給終端設(shè)備。終端設(shè)備在發(fā)送數(shù)據(jù)報(bào)文時(shí),利用認(rèn)證加密信息對(duì)數(shù)據(jù)報(bào)文進(jìn)行加密等處理,SSL VPN網(wǎng)關(guān)在接收到數(shù)據(jù)報(bào)文后,對(duì)數(shù)據(jù)報(bào)文進(jìn)行解密等處理,并將數(shù)據(jù)報(bào)文發(fā)送給服務(wù)器。上述方式可以保證數(shù)據(jù)報(bào)文的傳輸安全性。
目前,若網(wǎng)絡(luò)中部署兩個(gè)以上的SSL VPN網(wǎng)關(guān),則不同的SSL VPN網(wǎng)關(guān)為不同終端設(shè)備提供服務(wù)。當(dāng)某個(gè)SSL VPN網(wǎng)關(guān)下線時(shí),接入該SSL VPN網(wǎng)關(guān)的終端設(shè)備會(huì)被強(qiáng)制下線,之后重新接入到其它SSL VPN網(wǎng)關(guān),從而影響了用戶使用體驗(yàn),且終端設(shè)備的業(yè)務(wù)會(huì)發(fā)生中斷。
技術(shù)實(shí)現(xiàn)要素:
本申請(qǐng)?zhí)峁┮环N報(bào)文傳輸方法,應(yīng)用于網(wǎng)關(guān)組內(nèi)的安全套接字層虛擬專用網(wǎng)絡(luò)SSL VPN網(wǎng)關(guān),所述網(wǎng)關(guān)組包括一個(gè)主SSL VPN網(wǎng)關(guān)和至少一個(gè)備SSL VPN網(wǎng)關(guān),所述網(wǎng)關(guān)組內(nèi)的各SSL VPN網(wǎng)關(guān)使用相同組地址,該方法包括:
向本SSL VPN網(wǎng)關(guān)的鄰居網(wǎng)絡(luò)設(shè)備發(fā)布攜帶所述組地址的路由,以使所述鄰居網(wǎng)絡(luò)設(shè)備將目的IP地址為所述組地址的報(bào)文,發(fā)送給所述網(wǎng)關(guān)組內(nèi)的SSL VPN網(wǎng)關(guān);
接收所述鄰居網(wǎng)絡(luò)設(shè)備發(fā)送的報(bào)文;
若所述報(bào)文為會(huì)話協(xié)商請(qǐng)求報(bào)文且本SSL VPN網(wǎng)關(guān)是備SSL VPN網(wǎng)關(guān),則將所述會(huì)話協(xié)商請(qǐng)求報(bào)文發(fā)送給主SSL VPN網(wǎng)關(guān);
若所述報(bào)文為會(huì)話協(xié)商請(qǐng)求報(bào)文且本SSL VPN網(wǎng)關(guān)是主SSL VPN網(wǎng)關(guān),則確定所述會(huì)話協(xié)商請(qǐng)求報(bào)文的源IP地址對(duì)應(yīng)的第一終端設(shè)備能夠訪問的服務(wù)器及所述第一終端設(shè)備對(duì)應(yīng)的加密認(rèn)證信息,并將攜帶所述服務(wù)器的IP地址及所述加密認(rèn)證信息的響應(yīng)報(bào)文發(fā)送給所述第一終端設(shè)備,將所述認(rèn)證加密信息發(fā)送給每個(gè)備SSL VPN網(wǎng)關(guān)。
本申請(qǐng)?zhí)峁┮环N報(bào)文傳輸裝置,應(yīng)用于網(wǎng)關(guān)組內(nèi)的安全套接字層虛擬專用網(wǎng)絡(luò)SSL VPN網(wǎng)關(guān),所述網(wǎng)關(guān)組包括一個(gè)主SSL VPN網(wǎng)關(guān)和至少一個(gè)備SSL VPN網(wǎng)關(guān),所述網(wǎng)關(guān)組內(nèi)的各SSL VPN網(wǎng)關(guān)使用相同組地址,所述裝置包括:
發(fā)送模塊,用于向本SSL VPN網(wǎng)關(guān)的鄰居網(wǎng)絡(luò)設(shè)備發(fā)布攜帶所述組地址的路由,以使所述鄰居網(wǎng)絡(luò)設(shè)備將目的IP地址為所述組地址的報(bào)文,發(fā)送給所述網(wǎng)關(guān)組內(nèi)的SSL VPN網(wǎng)關(guān);
接收模塊,用于接收所述鄰居網(wǎng)絡(luò)設(shè)備發(fā)送的報(bào)文;
所述發(fā)送模塊,還用于當(dāng)所述報(bào)文為會(huì)話協(xié)商請(qǐng)求報(bào)文且本SSL VPN網(wǎng)關(guān)是備SSL VPN網(wǎng)關(guān)時(shí),則將所述會(huì)話協(xié)商請(qǐng)求報(bào)文發(fā)送給主SSL VPN網(wǎng)關(guān);
確定模塊,用于當(dāng)所述報(bào)文為會(huì)話協(xié)商請(qǐng)求報(bào)文且本SSL VPN網(wǎng)關(guān)是主SSL VPN網(wǎng)關(guān)時(shí),則確定所述會(huì)話協(xié)商請(qǐng)求報(bào)文的源IP地址對(duì)應(yīng)的第一終端設(shè)備能夠訪問的服務(wù)器及所述第一終端設(shè)備對(duì)應(yīng)的加密認(rèn)證信息;
所述發(fā)送模塊,還用于當(dāng)本SSL VPN網(wǎng)關(guān)是主SSL VPN網(wǎng)關(guān)時(shí),將攜帶所述服務(wù)器的IP地址及所述加密認(rèn)證信息的響應(yīng)報(bào)文發(fā)送給所述第一終端設(shè)備,并將所述認(rèn)證加密信息發(fā)送給每個(gè)備SSL VPN網(wǎng)關(guān)。
基于上述技術(shù)方案,本申請(qǐng)實(shí)施例中,可以在網(wǎng)絡(luò)中部署至少兩個(gè)SSL VPN網(wǎng)關(guān),并在這至少兩個(gè)SSL VPN網(wǎng)關(guān)之間進(jìn)行負(fù)載分擔(dān),從而避免一個(gè)SSL VPN網(wǎng)關(guān)對(duì)大量終端設(shè)備提供服務(wù),提高SSL VPN網(wǎng)關(guān)的處理性能,SSL VPN網(wǎng)關(guān)不會(huì)成為性能瓶頸。而且,網(wǎng)關(guān)組內(nèi)的主SSL VPN網(wǎng)關(guān)和備SSL VPN網(wǎng)關(guān)均會(huì)向本SSL VPN網(wǎng)關(guān)的鄰居網(wǎng)絡(luò)設(shè)備發(fā)布攜帶組地址的路由,這樣,在鄰居網(wǎng)絡(luò)設(shè)備上,就會(huì)形成到達(dá)該組地址的等價(jià)路由。另外,主SSL VPN網(wǎng)關(guān)和備SSL VPN網(wǎng)關(guān)均存儲(chǔ)有終端設(shè)備對(duì)應(yīng)的加密認(rèn)證信息?;诖?,鄰居網(wǎng)絡(luò)設(shè)備在接收到來自終端設(shè)備的報(bào)文后,若該報(bào)文的目的IP地址為該組地址,則鄰居網(wǎng)絡(luò)設(shè)備就可以基于該等價(jià)路由,將該報(bào)文發(fā)送給網(wǎng)關(guān)組內(nèi)的任意一個(gè)SSL VPN網(wǎng)關(guān),從而使得一個(gè)終端設(shè)備的報(bào)文可以在不同SSL VPN網(wǎng)關(guān)上分擔(dān),而不是由一個(gè)SSL VPN網(wǎng)關(guān)對(duì)終端設(shè)備的報(bào)文進(jìn)行處理。這樣,當(dāng)某個(gè)SSL VPN網(wǎng)關(guān)下線時(shí),可以自動(dòng)進(jìn)行路由的收斂,將報(bào)文發(fā)送到剩余的SSL VPN網(wǎng)關(guān)上,即終端設(shè)備能夠無縫切換到其它SSL VPN網(wǎng)關(guān),可以及時(shí)的對(duì)業(yè)務(wù)進(jìn)行保護(hù),不會(huì)對(duì)用戶造成任何影響,提高用戶使用體驗(yàn),避免業(yè)務(wù)發(fā)生中斷,提升了用戶接入的可靠性和穩(wěn)定性,并實(shí)現(xiàn)了SSL VPN網(wǎng)關(guān)之間的及時(shí)流量保護(hù)。
附圖說明
為了更加清楚地說明本申請(qǐng)實(shí)施例或者現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)本申請(qǐng)實(shí)施例或者現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請(qǐng)中記載的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,還可以根據(jù)這些附圖獲得其他的附圖。
圖1是本申請(qǐng)一種實(shí)施方式中的報(bào)文傳輸方法的流程圖;
圖2是本申請(qǐng)一種實(shí)施方式中的應(yīng)用場景示意圖;
圖3是本申請(qǐng)一種實(shí)施方式中的SSL VPN網(wǎng)關(guān)的硬件結(jié)構(gòu)圖;
圖4是本申請(qǐng)一種實(shí)施方式中的報(bào)文傳輸裝置的結(jié)構(gòu)圖。
具體實(shí)施方式
在本申請(qǐng)使用的術(shù)語僅僅是出于描述特定實(shí)施例的目的,而非限制本申請(qǐng)。本申請(qǐng)和權(quán)利要求書中所使用的單數(shù)形式的“一種”、“所述”和“該”也旨在包括多數(shù)形式,除非上下文清楚地表示其它含義。還應(yīng)當(dāng)理解,本文中使用的術(shù)語“和/或”是指包含一個(gè)或多個(gè)相關(guān)聯(lián)的列出項(xiàng)目的任何或所有可能組合。
應(yīng)當(dāng)理解,盡管在本申請(qǐng)可能采用術(shù)語第一、第二、第三等來描述各種信息,但這些信息不應(yīng)限于這些術(shù)語。這些術(shù)語僅用來將同一類型的信息彼此區(qū)分開。例如,在不脫離本申請(qǐng)范圍的情況下,第一信息也可以被稱為第二信息,類似地,第二信息也可以被稱為第一信息。取決于語境,此外,所使用的詞語“如果”可以被解釋成為“在……時(shí)”或“當(dāng)……時(shí)”或“響應(yīng)于確定”。
本申請(qǐng)實(shí)施例中提出一種報(bào)文傳輸方法,該方法可以應(yīng)用于網(wǎng)關(guān)組內(nèi)的SSL VPN網(wǎng)關(guān)。該網(wǎng)關(guān)組可以包括一個(gè)主SSL VPN網(wǎng)關(guān)和至少一個(gè)備SSL VPN網(wǎng)關(guān),該網(wǎng)關(guān)組內(nèi)的各SSL VPN網(wǎng)關(guān)使用相同的組地址(即IP地址)。
在一個(gè)例子中,針對(duì)網(wǎng)關(guān)組內(nèi)的各SSL VPN網(wǎng)關(guān),可以配置一個(gè)SSL VPN網(wǎng)關(guān)為主SSL VPN網(wǎng)關(guān),并配置剩余的其它SSL VPN網(wǎng)關(guān)為備SSL VPN網(wǎng)關(guān)。主SSL VPN網(wǎng)關(guān)負(fù)責(zé)處理來自終端設(shè)備的會(huì)話協(xié)商請(qǐng)求報(bào)文,為終端設(shè)備執(zhí)行認(rèn)證和授權(quán)等操作。備SSL VPN網(wǎng)關(guān)不負(fù)責(zé)為終端設(shè)備執(zhí)行認(rèn)證和授權(quán)等操作,而是直接將自身收到的會(huì)話協(xié)商請(qǐng)求報(bào)文轉(zhuǎn)發(fā)給主SSL VPN網(wǎng)關(guān)。主SSL VPN網(wǎng)關(guān)和備SSL VPN網(wǎng)關(guān)均可以處理來自終端設(shè)備的數(shù)據(jù)報(bào)文。其中,當(dāng)主SSL VPN網(wǎng)關(guān)正常工作時(shí),備SSL VPN網(wǎng)關(guān)不為終端設(shè)備執(zhí)行認(rèn)證和授權(quán)等操作,當(dāng)主SSL VPN網(wǎng)關(guān)異常時(shí),備SSL VPN網(wǎng)關(guān)成為新的主SSL VPN網(wǎng)關(guān),并負(fù)責(zé)處理來自終端設(shè)備的會(huì)話協(xié)商請(qǐng)求報(bào)文,對(duì)終端設(shè)備執(zhí)行認(rèn)證和授權(quán)等操作。
參見圖1所示,為報(bào)文傳輸方法的流程圖,該方法可以應(yīng)用于網(wǎng)關(guān)組內(nèi)的SSL VPN網(wǎng)關(guān)(主SSL VPN網(wǎng)關(guān)或者備SSL VPN網(wǎng)關(guān)),該方法可以包括以下步驟:
步驟101,向本SSL VPN網(wǎng)關(guān)的鄰居網(wǎng)絡(luò)設(shè)備發(fā)布攜帶該組地址的路由,以使鄰居網(wǎng)絡(luò)設(shè)備將目的IP地址為該組地址的報(bào)文,發(fā)送給網(wǎng)關(guān)組內(nèi)的SSL VPN網(wǎng)關(guān),即發(fā)送給網(wǎng)關(guān)組內(nèi)的主SSL VPN網(wǎng)關(guān)或者任一備SSL VPN網(wǎng)關(guān)。
在一個(gè)例子中,當(dāng)存在多個(gè)SSL VPN網(wǎng)關(guān)時(shí),可以將這些SSL VPN網(wǎng)關(guān)組成一個(gè)網(wǎng)關(guān)組,該網(wǎng)關(guān)組內(nèi)的各SSL VPN網(wǎng)關(guān)使用相同的組地址。而且,終端設(shè)備不需要關(guān)注網(wǎng)關(guān)組內(nèi)的各SSL VPN網(wǎng)關(guān)的實(shí)際IP地址,只需要獲知該組地址(如用戶可以獲知該組地址,并將該組地址配置到終端設(shè)備上),就可以發(fā)送目的IP地址為該組地址的會(huì)話協(xié)商請(qǐng)求報(bào)文或者數(shù)據(jù)報(bào)文。
網(wǎng)關(guān)組內(nèi)的各SSL VPN網(wǎng)關(guān)可以向本SSL VPN網(wǎng)關(guān)的鄰居網(wǎng)絡(luò)設(shè)備發(fā)布攜帶該組地址的路由,這樣,在該鄰居網(wǎng)絡(luò)設(shè)備上,就會(huì)形成到達(dá)該組地址的等價(jià)路由。鄰居網(wǎng)絡(luò)設(shè)備在接收到來自終端設(shè)備的報(bào)文(如會(huì)話協(xié)商請(qǐng)求報(bào)文或者數(shù)據(jù)報(bào)文)后,若報(bào)文的目的IP地址為該組地址,則可以將該報(bào)文發(fā)送給網(wǎng)關(guān)組內(nèi)的任意一個(gè)SSL VPN網(wǎng)關(guān),如主SSL VPN網(wǎng)關(guān)或者備SSL VPN網(wǎng)關(guān)。
步驟102,接收鄰居網(wǎng)絡(luò)設(shè)備發(fā)送的報(bào)文,該報(bào)文可以為會(huì)話協(xié)商請(qǐng)求報(bào)文或者數(shù)據(jù)報(bào)文。若該報(bào)文為會(huì)話協(xié)商請(qǐng)求報(bào)文,則執(zhí)行步驟103。
步驟103,若本SSL VPN網(wǎng)關(guān)是備SSL VPN網(wǎng)關(guān),則將會(huì)話協(xié)商請(qǐng)求報(bào)文發(fā)送給主SSL VPN網(wǎng)關(guān)。若本SSL VPN網(wǎng)關(guān)是主SSL VPN網(wǎng)關(guān),則確定第一終端設(shè)備能夠訪問的服務(wù)器及該第一終端設(shè)備對(duì)應(yīng)的加密認(rèn)證信息。其中,該第一終端設(shè)備是指:該會(huì)話協(xié)商請(qǐng)求報(bào)文的源IP地址對(duì)應(yīng)的終端設(shè)備。
在一個(gè)例子中,主SSL VPN網(wǎng)關(guān)在接收到會(huì)話協(xié)商請(qǐng)求報(bào)文(第一終端設(shè)備直接發(fā)送給主SSL VPN網(wǎng)關(guān)的會(huì)話協(xié)商請(qǐng)求報(bào)文,或者備SSL VPN網(wǎng)關(guān)轉(zhuǎn)發(fā)給主SSL VPN網(wǎng)關(guān)的會(huì)話協(xié)商請(qǐng)求報(bào)文)后,從會(huì)話協(xié)商請(qǐng)求報(bào)文中解析出身份信息(如用戶名、密碼等),并利用身份信息對(duì)第一終端設(shè)備進(jìn)行認(rèn)證。若認(rèn)證成功,確定第一終端設(shè)備能夠訪問的服務(wù)器及第一終端設(shè)備對(duì)應(yīng)的加密認(rèn)證信息。若認(rèn)證失敗,則向第一終端設(shè)備發(fā)送認(rèn)證失敗的響應(yīng)報(bào)文。
在一個(gè)例子中,針對(duì)“確定第一終端設(shè)備能夠訪問的服務(wù)器”的過程,可以在主SSL VPN網(wǎng)關(guān)上配置身份信息與資源的映射關(guān)系,并在主SSL VPN網(wǎng)關(guān)上配置提供各資源的服務(wù)器的信息(如服務(wù)器的IP地址)。基于此,主SSL VPN網(wǎng)關(guān)從會(huì)話協(xié)商請(qǐng)求報(bào)文中解析出身份信息后,就可以得到該身份信息對(duì)應(yīng)的資源,并可以確定出提供該資源的服務(wù)器的IP地址。該資源可以為FTP(File Transfer Protocol,文件傳輸協(xié)議)資源、WEB資源、文件存儲(chǔ)資源等。
在一個(gè)例子中,對(duì)于確定的認(rèn)證加密信息,包括但不限于:加密算法、交換加密密鑰、消息完整性驗(yàn)證算法等信息,對(duì)此認(rèn)證加密信息不做限制。
步驟104,主SSL VPN網(wǎng)關(guān)將攜帶該服務(wù)器的IP地址及該加密認(rèn)證信息的響應(yīng)報(bào)文發(fā)送給第一終端設(shè)備,并將該認(rèn)證加密信息發(fā)送給每個(gè)備SSL VPN網(wǎng)關(guān),如可以將攜帶該認(rèn)證加密信息的通知報(bào)文發(fā)送給每個(gè)備SSL VPN網(wǎng)關(guān)。
第一終端設(shè)備在接收到該響應(yīng)報(bào)文后,可以從該響應(yīng)報(bào)文中解析出服務(wù)器的IP地址及加密認(rèn)證信息,并利用該IP地址及該加密認(rèn)證信息發(fā)送數(shù)據(jù)報(bào)文。
在一個(gè)例子中,針對(duì)各終端設(shè)備發(fā)送的數(shù)據(jù)報(bào)文,會(huì)被鄰居網(wǎng)絡(luò)設(shè)備發(fā)送給網(wǎng)關(guān)組內(nèi)的主SSL VPN網(wǎng)關(guān)或者備SSL VPN網(wǎng)關(guān)?;诖耍鱏SL VPN網(wǎng)關(guān)或者備SSL VPN網(wǎng)關(guān)在接收到鄰居網(wǎng)絡(luò)設(shè)備發(fā)送的報(bào)文后,若該報(bào)文為數(shù)據(jù)報(bào)文,利用第二終端設(shè)備對(duì)應(yīng)的認(rèn)證加密信息對(duì)該數(shù)據(jù)報(bào)文包括的內(nèi)層報(bào)文進(jìn)行解密處理,并將解密處理后的內(nèi)層報(bào)文發(fā)送給該內(nèi)層報(bào)文的目的IP地址對(duì)應(yīng)的服務(wù)器。第二終端設(shè)備為該數(shù)據(jù)報(bào)文的外層源IP地址對(duì)應(yīng)的終端設(shè)備。
在一個(gè)例子中,若報(bào)文為會(huì)話協(xié)商請(qǐng)求報(bào)文且本SSL VPN網(wǎng)關(guān)是主SSL VPN網(wǎng)關(guān),在將攜帶服務(wù)器的IP地址及加密認(rèn)證信息的響應(yīng)報(bào)文發(fā)送給第一終端設(shè)備之前,還可以為第一終端設(shè)備分配UDP(User Datagram Protocol,用戶數(shù)據(jù)報(bào)協(xié)議)端口標(biāo)識(shí),并將該UDP端口標(biāo)識(shí)發(fā)送給每個(gè)備SSL VPN網(wǎng)關(guān)。而且,上述響應(yīng)報(bào)文還攜帶該UDP端口標(biāo)識(shí),該UDP端口標(biāo)識(shí)用于使第一終端設(shè)備在發(fā)送數(shù)據(jù)報(bào)文時(shí),在外層報(bào)文頭中添加該UDP端口標(biāo)識(shí)。
在一個(gè)例子中,主SSL VPN網(wǎng)關(guān)或者備SSL VPN網(wǎng)關(guān)在接收到服務(wù)器發(fā)送的數(shù)據(jù)響應(yīng)報(bào)文后,可以利用第三終端設(shè)備對(duì)應(yīng)的認(rèn)證加密信息對(duì)該數(shù)據(jù)響應(yīng)報(bào)文進(jìn)行加密處理,得到加密數(shù)據(jù)報(bào)文。其中,第三終端設(shè)備為該數(shù)據(jù)響應(yīng)報(bào)文的目的IP地址對(duì)應(yīng)的終端設(shè)備。之后,對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行封裝,封裝后的加密數(shù)據(jù)報(bào)文的外層源IP地址為組地址,源端口為第三終端設(shè)備對(duì)應(yīng)的UDP端口標(biāo)識(shí)。之后,將封裝后的加密數(shù)據(jù)報(bào)文發(fā)送給第三終端設(shè)備。
基于上述技術(shù)方案,本申請(qǐng)實(shí)施例中,可以在網(wǎng)絡(luò)中部署至少兩個(gè)SSL VPN網(wǎng)關(guān),并在這至少兩個(gè)SSL VPN網(wǎng)關(guān)之間進(jìn)行負(fù)載分擔(dān),從而避免一個(gè)SSL VPN網(wǎng)關(guān)對(duì)大量終端設(shè)備提供服務(wù),提高SSL VPN網(wǎng)關(guān)的處理性能,SSL VPN網(wǎng)關(guān)不會(huì)成為性能瓶頸。而且,網(wǎng)關(guān)組內(nèi)的主SSL VPN網(wǎng)關(guān)和備SSL VPN網(wǎng)關(guān)均會(huì)向本SSL VPN網(wǎng)關(guān)的鄰居網(wǎng)絡(luò)設(shè)備發(fā)布攜帶組地址的路由,這樣,在鄰居網(wǎng)絡(luò)設(shè)備上,就會(huì)形成到達(dá)該組地址的等價(jià)路由。另外,主SSL VPN網(wǎng)關(guān)和備SSL VPN網(wǎng)關(guān)均存儲(chǔ)有終端設(shè)備對(duì)應(yīng)的加密認(rèn)證信息?;诖?,鄰居網(wǎng)絡(luò)設(shè)備在接收到來自終端設(shè)備的報(bào)文后,若該報(bào)文的目的IP地址為該組地址,則鄰居網(wǎng)絡(luò)設(shè)備就可以基于該等價(jià)路由,將該報(bào)文發(fā)送給網(wǎng)關(guān)組內(nèi)的任意一個(gè)SSL VPN網(wǎng)關(guān),從而使得一個(gè)終端設(shè)備的報(bào)文可以在不同SSL VPN網(wǎng)關(guān)上分擔(dān),而不是由一個(gè)SSL VPN網(wǎng)關(guān)對(duì)終端設(shè)備的報(bào)文進(jìn)行處理。這樣,當(dāng)某個(gè)SSL VPN網(wǎng)關(guān)下線時(shí),可以自動(dòng)進(jìn)行路由的收斂,將報(bào)文發(fā)送到剩余的SSL VPN網(wǎng)關(guān)上,即終端設(shè)備能夠無縫切換到其它SSL VPN網(wǎng)關(guān),可以及時(shí)的對(duì)業(yè)務(wù)進(jìn)行保護(hù),不會(huì)對(duì)用戶造成任何影響,提高用戶使用體驗(yàn),避免業(yè)務(wù)發(fā)生中斷,提升了用戶接入的可靠性和穩(wěn)定性,并實(shí)現(xiàn)了SSL VPN網(wǎng)關(guān)之間的及時(shí)流量保護(hù)。
以下結(jié)合圖2所示的應(yīng)用場景,對(duì)本申請(qǐng)實(shí)施例的上述過程進(jìn)行詳細(xì)說明。
在圖2中,可以包括終端設(shè)備、網(wǎng)絡(luò)設(shè)備R1、SSL VPN網(wǎng)關(guān)1、SSL VPN網(wǎng)關(guān)2、網(wǎng)絡(luò)設(shè)備R2、服務(wù)器1和服務(wù)器2等設(shè)備。其中,終端設(shè)備的IP地址為100.1.1.1,服務(wù)器1的IP地址為20.1.1.254,服務(wù)器2的IP地址為30.1.1.254。SSL VPN網(wǎng)關(guān)1和SSL VPN網(wǎng)關(guān)2位于同一個(gè)網(wǎng)關(guān)組,SSL VPN網(wǎng)關(guān)1為主SSL VPN網(wǎng)關(guān),SSL VPN網(wǎng)關(guān)2為備SSL VPN網(wǎng)關(guān),該網(wǎng)關(guān)組的組地址為1.1.1.254,該網(wǎng)關(guān)組的TCP端口標(biāo)識(shí)為TCP端口443(默認(rèn)TCP SSL端口)。
在上述應(yīng)用場景下,該報(bào)文傳輸方法可以包括以下步驟:
步驟1、SSL VPN網(wǎng)關(guān)1對(duì)外發(fā)布攜帶IP地址1.1.1.254和TCP端口443的路由;網(wǎng)絡(luò)設(shè)備R1、網(wǎng)絡(luò)設(shè)備R2可以學(xué)習(xí)到攜帶IP地址1.1.1.254和TCP端口443的路由。SSL VPN網(wǎng)關(guān)2對(duì)外發(fā)布攜帶IP地址1.1.1.254和TCP端口443的路由;網(wǎng)絡(luò)設(shè)備R1、網(wǎng)絡(luò)設(shè)備R2均可以學(xué)習(xí)到攜帶IP地址1.1.1.254和TCP端口443的路由。網(wǎng)絡(luò)設(shè)備R1、網(wǎng)絡(luò)設(shè)備R2可以學(xué)習(xí)到IP地址1.1.1.254的兩條路由,這兩條路由在網(wǎng)絡(luò)設(shè)備R1、網(wǎng)絡(luò)設(shè)備R2上,形成等價(jià)路由。
步驟2、用戶登陸SSL VPN頁面,并輸入用戶名、密碼等身份信息,并輸入SSL VPN網(wǎng)關(guān)的組地址1.1.1.254以及TCP端口443等信息。終端設(shè)備利用該身份信息、該組地址1.1.1.254、該TCP端口443生成會(huì)話協(xié)商請(qǐng)求報(bào)文,并發(fā)送該會(huì)話協(xié)商請(qǐng)求報(bào)文。其中,該會(huì)話協(xié)商請(qǐng)求報(bào)文的源IP地址可以為100.1.1.1,目的IP地址可以為1.1.1.254,目的TCP端口可以為443。
步驟3、網(wǎng)絡(luò)設(shè)備R1在接收到該會(huì)話協(xié)商請(qǐng)求報(bào)文后,由于本地存在目的IP地址1.1.1.254的兩條路由,SSL VPN網(wǎng)關(guān)1和VPN SSL網(wǎng)關(guān)2都是目的IP地址1.1.1.254對(duì)應(yīng)的下一跳,因此,可以將該會(huì)話協(xié)商請(qǐng)求報(bào)文發(fā)送給SSL VPN網(wǎng)關(guān)1或者SSL VPN網(wǎng)關(guān)2,以發(fā)送給SSL VPN網(wǎng)關(guān)2為例進(jìn)行說明。
步驟4、SSL VPN網(wǎng)關(guān)2在接收到會(huì)話協(xié)商請(qǐng)求報(bào)文后,由于本SSL VPN網(wǎng)關(guān)2是備SSL VPN網(wǎng)關(guān),因此將該會(huì)話協(xié)商請(qǐng)求報(bào)文發(fā)送給SSL VPN網(wǎng)關(guān)1。
步驟5、SSL VPN網(wǎng)關(guān)1在接收到會(huì)話協(xié)商請(qǐng)求報(bào)文后,從會(huì)話協(xié)商請(qǐng)求報(bào)文中解析出身份信息,并利用該身份信息對(duì)終端設(shè)備進(jìn)行認(rèn)證。若認(rèn)證成功,則執(zhí)行步驟6。若認(rèn)證失敗,則向終端設(shè)備發(fā)送認(rèn)證失敗的響應(yīng)報(bào)文,結(jié)束流程。
步驟6、SSL VPN網(wǎng)關(guān)1為該終端設(shè)備分配UDP端口標(biāo)識(shí)4430(如隨機(jī)選取一個(gè)UDP端口標(biāo)識(shí)),并為該終端設(shè)備分配虛擬接入IP地址10.1.1.1和虛擬接入MAC(Media Access Control,介質(zhì)訪問控制)地址(如虛擬MAC1)。
在一個(gè)例子中,可以在SSL VPN網(wǎng)關(guān)1上預(yù)先配置虛IP網(wǎng)段,如10.1.1.0/24,SSL VPN網(wǎng)關(guān)1在為終端設(shè)備分配虛擬接入IP地址時(shí),可以直接從該虛IP網(wǎng)段內(nèi)選擇一個(gè)可用的IP地址10.1.1.1,并標(biāo)記該IP地址不可用。同理,可以在SSL VPN網(wǎng)關(guān)1上預(yù)先配置虛MAC范圍,且SSL VPN網(wǎng)關(guān)1在為終端設(shè)備分配虛擬接入MAC地址時(shí),可以直接從虛MAC范圍內(nèi)選擇一個(gè)可用的MAC地址(如虛擬MAC1),并標(biāo)記該MAC地址不可用。而且,在服務(wù)器上也會(huì)預(yù)先配置該虛IP網(wǎng)段和該虛MAC范圍,且該服務(wù)器只會(huì)對(duì)源IP地址屬于該虛IP網(wǎng)段、源MAC地址屬于該虛MAC范圍的數(shù)據(jù)報(bào)文進(jìn)行處理。
步驟7、SSL VPN網(wǎng)關(guān)1確定該終端設(shè)備能夠訪問服務(wù)器1和服務(wù)器2,并確定服務(wù)器1的IP地址20.1.1.254和服務(wù)器2的IP地址30.1.1.254,并確定該終端設(shè)備對(duì)應(yīng)的認(rèn)證加密信息。該認(rèn)證加密信息可以包括但不限于:加密算法、交換加密密鑰、消息完整性驗(yàn)證算法等信息,對(duì)此認(rèn)證加密信息不做限制。
步驟8、SSL VPN網(wǎng)關(guān)1將攜帶UDP端口標(biāo)識(shí)4430、虛擬接入IP地址10.1.1.1、虛擬MAC1、服務(wù)器1的IP地址20.1.1.254、服務(wù)器2的IP地址30.1.1.254、認(rèn)證加密信息的響應(yīng)報(bào)文發(fā)送給終端設(shè)備,并將攜帶認(rèn)證加密信息、UDP端口標(biāo)識(shí)4430和IP地址100.1.1.1的通知報(bào)文發(fā)送給SSL VPN網(wǎng)關(guān)2。
步驟9、SSL VPN網(wǎng)關(guān)1和SSL VPN網(wǎng)關(guān)2在本地存儲(chǔ)介質(zhì)中,保存該認(rèn)證加密信息、該UDP端口標(biāo)識(shí)4430和該IP地址100.1.1.1。
步驟10、終端設(shè)備在接收到來自SSL VPN網(wǎng)關(guān)1的該響應(yīng)報(bào)文之后,從該響應(yīng)報(bào)文中解析出該UDP端口標(biāo)識(shí)4430、虛擬接入IP地址10.1.1.1、虛擬MAC1、服務(wù)器1的IP地址20.1.1.254、服務(wù)器2的IP地址30.1.1.254、以及認(rèn)證加密信息,并利用上述信息向服務(wù)器1或者服務(wù)器2發(fā)送數(shù)據(jù)報(bào)文。
在一個(gè)例子中,終端設(shè)備在向服務(wù)器1(IP地址為20.1.1.254)發(fā)送數(shù)據(jù)報(bào)文的過程中,可以先生成一個(gè)內(nèi)層報(bào)文,該內(nèi)層報(bào)文的源IP地址為虛擬接入IP地址10.1.1.1,目的IP地址為服務(wù)器1的IP地址20.1.1.254,源MAC地址為虛擬MAC1,目的MAC地址為任意MAC。之后,終端設(shè)備利用該認(rèn)證加密信息對(duì)該內(nèi)層報(bào)文進(jìn)行加密等處理,得到一個(gè)加密數(shù)據(jù)報(bào)文。之后,終端設(shè)備在該加密數(shù)據(jù)報(bào)文之前封裝外層報(bào)文頭,得到一個(gè)數(shù)據(jù)報(bào)文。其中,該外層報(bào)文頭的源IP地址為100.1.1.1,目的IP地址為SSL VPN網(wǎng)關(guān)的組地址1.1.1.254。
需要說明的是,與傳統(tǒng)方式不同的是,該數(shù)據(jù)報(bào)文并不是一個(gè)TCP類型的數(shù)據(jù)報(bào)文,而是一個(gè)UDP類型的數(shù)據(jù)報(bào)文。因此,該數(shù)據(jù)報(bào)文中未攜帶源TCP端口和目的TCP端口,而是攜帶源UDP端口和目的UDP端口。其中,該源UDP端口可以為任意的端口標(biāo)識(shí),目的UDP端口為上述UDP端口標(biāo)識(shí)4430。
同理,針對(duì)終端設(shè)備向服務(wù)器2(IP地址為30.1.1.254)發(fā)送數(shù)據(jù)報(bào)文的過程,與終端設(shè)備向服務(wù)器1發(fā)送數(shù)據(jù)報(bào)文的過程類似,在此不再重復(fù)贅述。
在一個(gè)例子中,對(duì)于數(shù)據(jù)報(bào)文采用UDP類型,而不是采用TCP類型的原因,將在本申請(qǐng)實(shí)施例的后續(xù)過程中進(jìn)行說明,在此不再詳見贅述。
步驟11、網(wǎng)絡(luò)設(shè)備R1在接收到數(shù)據(jù)報(bào)文之后,由于本地存在目的IP地址1.1.1.254的兩條路由,SSL VPN網(wǎng)關(guān)1和VPN SSL網(wǎng)關(guān)2都是目的IP地址1.1.1.254對(duì)應(yīng)的下一跳,因此,可以將該數(shù)據(jù)報(bào)文發(fā)送給SSL VPN網(wǎng)關(guān)1或者SSL VPN網(wǎng)關(guān)2,以將數(shù)據(jù)報(bào)文發(fā)送給SSL VPN網(wǎng)關(guān)1為例進(jìn)行說明。
在一個(gè)例子中,若SSL VPN網(wǎng)關(guān)1發(fā)生故障,即SSL VPN網(wǎng)關(guān)1不在線后,則網(wǎng)絡(luò)設(shè)備R1在檢測到SSL VPN網(wǎng)關(guān)1故障時(shí),會(huì)將SSL VPN網(wǎng)關(guān)1從1.1.1.254對(duì)應(yīng)的下一跳中刪除,這樣,網(wǎng)絡(luò)設(shè)備R1只會(huì)將目的IP地址1.1.1.254的數(shù)據(jù)報(bào)文發(fā)送給SSL VPN網(wǎng)關(guān)2。同理,若SSL VPN網(wǎng)關(guān)2發(fā)生故障,即SSL VPN網(wǎng)關(guān)2不在線后,則網(wǎng)絡(luò)設(shè)備R1在檢測到SSL VPN網(wǎng)關(guān)2故障時(shí),會(huì)將SSL VPN網(wǎng)關(guān)2從1.1.1.254對(duì)應(yīng)的下一跳中刪除,這樣,網(wǎng)絡(luò)設(shè)備R1只會(huì)將目的IP地址1.1.1.254的數(shù)據(jù)報(bào)文發(fā)送給SSL VPN網(wǎng)關(guān)1。
步驟12、SSL VPN網(wǎng)關(guān)1在接收到數(shù)據(jù)報(bào)文后,確定數(shù)據(jù)報(bào)文的外層源IP地址100.1.1.1對(duì)應(yīng)的認(rèn)證加密信息,并利用該認(rèn)證加密信息對(duì)該數(shù)據(jù)報(bào)文包括的內(nèi)層報(bào)文進(jìn)行解密處理。
步驟13、SSL VPN網(wǎng)關(guān)1將解密處理后的內(nèi)層報(bào)文發(fā)送給服務(wù)器1。該內(nèi)層報(bào)文的源IP地址為虛擬接入IP地址10.1.1.1,目的IP地址為服務(wù)器1的IP地址20.1.1.254,源MAC地址為虛擬MAC1,目的MAC地址為任意MAC。
步驟14、服務(wù)器1在接收到該內(nèi)層報(bào)文后,向終端設(shè)備返回?cái)?shù)據(jù)響應(yīng)報(bào)文。其中,該數(shù)據(jù)響應(yīng)報(bào)文的源IP地址可以為服務(wù)器1的IP地址20.1.1.254,目的IP地址可以為虛擬接入IP地址10.1.1.1,源MAC地址可以為服務(wù)器1的MAC地址,目的MAC地址可以為虛擬MAC1。
步驟15、網(wǎng)絡(luò)設(shè)備R2在接收到該數(shù)據(jù)響應(yīng)報(bào)文之后,進(jìn)行負(fù)載分擔(dān),將該數(shù)據(jù)響應(yīng)報(bào)文轉(zhuǎn)發(fā)給SSL VPN網(wǎng)關(guān)1或者SSL VPN網(wǎng)關(guān)2。為了方便描述,以網(wǎng)絡(luò)設(shè)備R2將該數(shù)據(jù)響應(yīng)報(bào)文轉(zhuǎn)發(fā)給SSL VPN網(wǎng)關(guān)2為例進(jìn)行說明。
在一個(gè)例子中,可以在SSL VPN網(wǎng)關(guān)1和SSL VPN網(wǎng)關(guān)2上預(yù)先配置虛IP網(wǎng)段,如10.1.1.0/24。而且,SSL VPN網(wǎng)關(guān)1可以對(duì)外發(fā)布攜帶該IP網(wǎng)段10.1.1.0/24的路由,網(wǎng)絡(luò)設(shè)備R2可以學(xué)習(xí)到攜帶該IP網(wǎng)段10.1.1.0/24的路由。SSL VPN網(wǎng)關(guān)2可以對(duì)外發(fā)布攜帶該IP網(wǎng)段10.1.1.0/24的路由,網(wǎng)絡(luò)設(shè)備R2可以學(xué)習(xí)到攜帶該IP網(wǎng)段10.1.1.0/24的路由。因此,網(wǎng)絡(luò)設(shè)備R2可以學(xué)習(xí)到IP網(wǎng)段10.1.1.0/24的兩條路由,這兩條路由在網(wǎng)絡(luò)設(shè)備R2上,可以形成等價(jià)路由。綜上所述,網(wǎng)絡(luò)設(shè)備R2在接收到數(shù)據(jù)響應(yīng)報(bào)文后,由于目的IP地址為IP地址10.1.1.1,該IP地址10.1.1.1可以匹配到IP網(wǎng)段10.1.1.0/24的兩條路由,因此,可以將該數(shù)據(jù)響應(yīng)報(bào)文轉(zhuǎn)發(fā)給SSL VPN網(wǎng)關(guān)1或者SSL VPN網(wǎng)關(guān)2。
步驟16、SSL VPN網(wǎng)關(guān)2接收到該數(shù)據(jù)響應(yīng)報(bào)文后,利用認(rèn)證加密信息對(duì)該數(shù)據(jù)響應(yīng)報(bào)文進(jìn)行加密處理,得到加密數(shù)據(jù)報(bào)文。對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行封裝,封裝后的加密數(shù)據(jù)報(bào)文的外層源IP地址為組地址1.1.1.254,源UDP端口為UDP端口標(biāo)識(shí)4430,目的IP地址為該終端設(shè)備的IP地址100.1.1.1,目的UDP端口為任意的端口標(biāo)識(shí)。發(fā)送封裝后的加密數(shù)據(jù)報(bào)文。
其中,SSL VPN網(wǎng)關(guān)2在接收到該數(shù)據(jù)響應(yīng)報(bào)文后,可以先基于目的IP地址(10.1.1.1)和目的MAC地址(虛擬MAC1)確定終端設(shè)備的IP地址100.1.1.1,然后找到該IP地址100.1.1.1對(duì)應(yīng)的認(rèn)證加密信息和UDP端口標(biāo)識(shí)4430,繼而使用該認(rèn)證加密信息對(duì)該數(shù)據(jù)響應(yīng)報(bào)文進(jìn)行加密處理,并在對(duì)加密數(shù)據(jù)報(bào)文進(jìn)行封裝處理時(shí),在封裝后的加密數(shù)據(jù)報(bào)文的外層源UDP端口中記錄UDP端口標(biāo)識(shí)4430。
需要說明的是,與傳統(tǒng)方式不同的是,封裝后的加密數(shù)據(jù)報(bào)文并不是一個(gè)TCP類型的報(bào)文,而是一個(gè)UDP類型的報(bào)文。因此,該報(bào)文中未攜帶源TCP端口和目的TCP端口,而是攜帶源UDP端口和目的UDP端口。其中,該源UDP端口可以為上述UDP端口標(biāo)識(shí)4430,目的UDP端口為任意的端口標(biāo)識(shí)。
在一個(gè)例子中,對(duì)于封裝后的加密數(shù)據(jù)報(bào)文采用UDP類型,而不是采用TCP類型的原因,將在本申請(qǐng)實(shí)施例的后續(xù)過程中進(jìn)行說明,在此不再贅述。
步驟17、網(wǎng)絡(luò)設(shè)備R1在接收到封裝后的加密數(shù)據(jù)報(bào)文后,將封裝后的加密數(shù)據(jù)報(bào)文發(fā)送給終端設(shè)備。終端設(shè)備從封裝后的加密數(shù)據(jù)報(bào)文中剝掉外層報(bào)文頭,得到一個(gè)加密數(shù)據(jù)報(bào)文,并利用認(rèn)證加密信息對(duì)該加密數(shù)據(jù)報(bào)文進(jìn)行解密等處理,得到數(shù)據(jù)響應(yīng)報(bào)文,即服務(wù)器返回的數(shù)據(jù)響應(yīng)報(bào)文。
至此,完成了終端設(shè)備訪問VPN網(wǎng)絡(luò)內(nèi)的服務(wù)器資源的過程。
以下對(duì)報(bào)文采用UDP類型的原因進(jìn)行詳細(xì)說明。
若終端設(shè)備向SSL VPN網(wǎng)關(guān)1發(fā)送TCP類型的數(shù)據(jù)報(bào)文(即外層報(bào)文頭攜帶的是TCP端口的信息),只有SSL VPN網(wǎng)關(guān)1返回的響應(yīng)報(bào)文,終端設(shè)備才認(rèn)為是上述數(shù)據(jù)報(bào)文的響應(yīng)報(bào)文,可以繼續(xù)發(fā)送數(shù)據(jù)報(bào)文,而對(duì)于SSL VPN網(wǎng)關(guān)2返回的響應(yīng)報(bào)文,終端設(shè)備不認(rèn)為是上述數(shù)據(jù)報(bào)文的響應(yīng)報(bào)文,因此會(huì)丟棄該響應(yīng)報(bào)文,繼續(xù)等待響應(yīng)報(bào)文,從而導(dǎo)致傳輸異常。
實(shí)際上,無論是網(wǎng)絡(luò)設(shè)備R1向SSL VPN網(wǎng)關(guān)1或者SSL VPN網(wǎng)關(guān)2發(fā)送數(shù)據(jù)報(bào)文,還是網(wǎng)絡(luò)設(shè)備R2向SSL VPN網(wǎng)關(guān)1或者SSL VPN網(wǎng)關(guān)2發(fā)送響應(yīng)報(bào)文,為了實(shí)現(xiàn)負(fù)載分擔(dān)功能,均會(huì)將數(shù)據(jù)報(bào)文/響應(yīng)報(bào)文發(fā)送給SSL VPN網(wǎng)關(guān)1或者SSL VPN網(wǎng)關(guān)2,因此會(huì)存在上述傳輸異常的問題。
與此不同的是,若終端設(shè)備向SSL VPN網(wǎng)關(guān)1發(fā)送UDP類型的數(shù)據(jù)報(bào)文(即外層報(bào)文頭攜帶的是UDP端口的信息),則無論是SSL VPN網(wǎng)關(guān)1返回的響應(yīng)報(bào)文,還是SSL VPN網(wǎng)關(guān)2返回的響應(yīng)報(bào)文,終端設(shè)備均認(rèn)為是上述數(shù)據(jù)報(bào)文的響應(yīng)報(bào)文,終端設(shè)備可以繼續(xù)發(fā)送數(shù)據(jù)報(bào)文,避免傳輸異常?;诖?,本申請(qǐng)實(shí)施例中,終端設(shè)備向SSL VPN網(wǎng)關(guān)發(fā)送UDP類型的數(shù)據(jù)報(bào)文(即外層報(bào)文頭攜帶UDP端口標(biāo)識(shí)4430),SSL VPN網(wǎng)關(guān)向終端設(shè)備發(fā)送UDP類型的響應(yīng)報(bào)文(即外層報(bào)文頭攜帶UDP端口標(biāo)識(shí)4430)。
基于與上述方法同樣的申請(qǐng)構(gòu)思,本申請(qǐng)實(shí)施例中還提供了一種報(bào)文傳輸裝置,應(yīng)用于網(wǎng)關(guān)組內(nèi)的SSL VPN網(wǎng)關(guān),所述網(wǎng)關(guān)組包括一個(gè)主SSL VPN網(wǎng)關(guān)和至少一個(gè)備SSL VPN網(wǎng)關(guān),所述網(wǎng)關(guān)組內(nèi)的各SSL VPN網(wǎng)關(guān)使用相同組地址。其中,該報(bào)文傳輸裝置可以通過軟件實(shí)現(xiàn),也可以通過硬件或者軟硬件結(jié)合的方式實(shí)現(xiàn)。以軟件實(shí)現(xiàn)為例,作為一個(gè)邏輯意義上的裝置,是通過其所在的SSL VPN網(wǎng)關(guān)的處理器,讀取非易失性存儲(chǔ)器中對(duì)應(yīng)的計(jì)算機(jī)程序指令形成的。從硬件層面而言,如圖3所示,為本申請(qǐng)?zhí)岢龅膱?bào)文傳輸裝置所在的SSL VPN網(wǎng)關(guān)的一種硬件結(jié)構(gòu)圖,除了圖3所示的處理器、非易失性存儲(chǔ)器外,該SSL VPN網(wǎng)關(guān)還可以包括其他硬件,如負(fù)責(zé)處理報(bào)文的轉(zhuǎn)發(fā)芯片、網(wǎng)絡(luò)接口、內(nèi)存等;從硬件結(jié)構(gòu)上來講,該SSL VPN網(wǎng)關(guān)還可能是分布式設(shè)備,可能包括多個(gè)接口卡,以便在硬件層面進(jìn)行報(bào)文處理的擴(kuò)展。
如圖4所示,為本申請(qǐng)?zhí)岢龅膱?bào)文傳輸裝置的結(jié)構(gòu)圖,包括:
發(fā)送模塊11,用于向本SSL VPN網(wǎng)關(guān)的鄰居網(wǎng)絡(luò)設(shè)備發(fā)布攜帶所述組地址的路由,以使所述鄰居網(wǎng)絡(luò)設(shè)備將目的IP地址為所述組地址的報(bào)文,發(fā)送給所述網(wǎng)關(guān)組內(nèi)的SSL VPN網(wǎng)關(guān);
接收模塊12,用于接收所述鄰居網(wǎng)絡(luò)設(shè)備發(fā)送的報(bào)文;
所述發(fā)送模塊11,還用于當(dāng)所述報(bào)文為會(huì)話協(xié)商請(qǐng)求報(bào)文且本SSL VPN網(wǎng)關(guān)是備SSL VPN網(wǎng)關(guān)時(shí),將所述會(huì)話協(xié)商請(qǐng)求報(bào)文發(fā)送給主SSL VPN網(wǎng)關(guān);
確定模塊13,用于當(dāng)所述報(bào)文為會(huì)話協(xié)商請(qǐng)求報(bào)文且本SSL VPN網(wǎng)關(guān)是主SSL VPN網(wǎng)關(guān)時(shí),則確定所述會(huì)話協(xié)商請(qǐng)求報(bào)文的源IP地址對(duì)應(yīng)的第一終端設(shè)備能夠訪問的服務(wù)器及所述第一終端設(shè)備對(duì)應(yīng)的加密認(rèn)證信息;
所述發(fā)送模塊11,還用于當(dāng)本SSL VPN網(wǎng)關(guān)是主SSL VPN網(wǎng)關(guān)時(shí),將攜帶所述服務(wù)器的IP地址及所述加密認(rèn)證信息的響應(yīng)報(bào)文發(fā)送給所述第一終端設(shè)備,并將所述認(rèn)證加密信息發(fā)送給每個(gè)備SSL VPN網(wǎng)關(guān)。
在所述接收模塊12接收所述鄰居網(wǎng)絡(luò)設(shè)備發(fā)送的報(bào)文之后;
所述發(fā)送模塊11,還用于當(dāng)所述報(bào)文為數(shù)據(jù)報(bào)文時(shí),則利用第二終端設(shè)備對(duì)應(yīng)的認(rèn)證加密信息對(duì)所述數(shù)據(jù)報(bào)文包括的內(nèi)層報(bào)文進(jìn)行解密處理;其中,所述第二終端設(shè)備為所述數(shù)據(jù)報(bào)文的外層源IP地址對(duì)應(yīng)的終端設(shè)備;將解密處理后的內(nèi)層報(bào)文發(fā)送給所述內(nèi)層報(bào)文的目的IP地址對(duì)應(yīng)的服務(wù)器。
若所述報(bào)文為會(huì)話協(xié)商請(qǐng)求報(bào)文且本SSL VPN網(wǎng)關(guān)是主SSL VPN網(wǎng)關(guān);所述確定模塊13,還用于從所述會(huì)話協(xié)商請(qǐng)求報(bào)文中解析出身份信息,并利用所述身份信息對(duì)所述第一終端設(shè)備進(jìn)行認(rèn)證;若認(rèn)證成功,則確定所述第一終端設(shè)備能夠訪問的服務(wù)器及所述第一終端設(shè)備對(duì)應(yīng)的加密認(rèn)證信息。
若所述報(bào)文為會(huì)話協(xié)商請(qǐng)求報(bào)文且本SSL VPN網(wǎng)關(guān)是主SSL VPN網(wǎng)關(guān);所述確定模塊13,還用于為所述第一終端設(shè)備分配用戶數(shù)據(jù)報(bào)協(xié)議UDP端口標(biāo)識(shí);所述發(fā)送模塊12,還用于將所述UDP端口標(biāo)識(shí)發(fā)送給每個(gè)備SSL VPN網(wǎng)關(guān);所述響應(yīng)報(bào)文還攜帶所述UDP端口標(biāo)識(shí),所述UDP端口標(biāo)識(shí)用于使所述第一終端設(shè)備在發(fā)送數(shù)據(jù)報(bào)文時(shí),在外層報(bào)文頭中添加所述UDP端口標(biāo)識(shí)。
所述發(fā)送模塊11,還用于在接收到服務(wù)器發(fā)送的數(shù)據(jù)響應(yīng)報(bào)文后,利用第三終端設(shè)備對(duì)應(yīng)的認(rèn)證加密信息對(duì)所述數(shù)據(jù)響應(yīng)報(bào)文進(jìn)行加密處理,得到加密數(shù)據(jù)報(bào)文;其中,所述第三終端設(shè)備為所述數(shù)據(jù)響應(yīng)報(bào)文的目的IP地址對(duì)應(yīng)的終端設(shè)備;對(duì)所述加密數(shù)據(jù)報(bào)文進(jìn)行封裝,封裝后的加密數(shù)據(jù)報(bào)文的外層源IP地址為所述組地址,源端口為所述第三終端設(shè)備對(duì)應(yīng)的UDP端口標(biāo)識(shí);將封裝后的加密數(shù)據(jù)報(bào)文發(fā)送給所述第三終端設(shè)備。
其中,本申請(qǐng)裝置的各個(gè)模塊可以集成于一體,也可以分離部署。上述模塊可以合并為一個(gè)模塊,也可以進(jìn)一步拆分成多個(gè)子模塊。
通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本申請(qǐng)可借助軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實(shí)施方式?;谶@樣的理解,本申請(qǐng)的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本申請(qǐng)各個(gè)實(shí)施例所述的方法。本領(lǐng)域技術(shù)人員可以理解附圖只是一個(gè)優(yōu)選實(shí)施例的示意圖,附圖中的模塊或流程并不一定是實(shí)施本申請(qǐng)所必須的。
本領(lǐng)域技術(shù)人員可以理解實(shí)施例中的裝置中的模塊可以按照實(shí)施例描述進(jìn)行分布于實(shí)施例的裝置中,也可以進(jìn)行相應(yīng)變化位于不同于本實(shí)施例的一個(gè)或多個(gè)裝置中。上述實(shí)施例的模塊可以合并為一個(gè)模塊,也可進(jìn)一步拆分成多個(gè)子模塊。上述本申請(qǐng)實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
以上公開的僅為本申請(qǐng)的幾個(gè)具體實(shí)施例,但是,本申請(qǐng)并非局限于此,任何本領(lǐng)域的技術(shù)人員能思之的變化都應(yīng)落入本申請(qǐng)的保護(hù)范圍。