專利名稱:實現ipsec在ah模式下nat穿越的方法、設備及系統的制作方法
技術領域:
本發明涉及到通信領域,特別涉及到一種實現IPSEC在AH模式下NAT穿越的方法、設備及系統。
背景技術:
Internet 協議安全性(IPsec, Internet Protocol Security),是通過對 IP 協議 (互聯網協議)的分組進行加密和認證來保護IP協議的網絡傳輸協議族(一些相互關聯的協議的集合)。If3Sec基于IETF開發的標準,可以在一個公共IP網絡上確保數據通訊的可靠性和完整性。msec對于實現通用的安全策略所需要的基于標準的靈活的解決方案提供了一個必備的要素。IPsec 主要包括兩個安全協議 AH(Authentication Header)和 ESP (Encapsulating Security Payload)及密鑰管理協議 IKE (Internet Key Exchange)。 AH提供無連接的完整性、數據發起驗證和重放保護。ESP還可另外提供加密。密鑰管理協議IKE提供安全可靠的算法和密鑰協商。這些機制均獨立于算法,這種模塊化的設計允許只改變不同的算法而不影響實現的其它部分。協議的應用與具體加密算法的使用取決于用戶和應用程序的安全性要求。由于IPsec的AH模式(AH Tunnel/Transport Mode)會針對整個封包(包括 IP Header及Data Payload)做資料完整性的檢查,因此,當作完IPsec-AH、又再執行NAT 的源IP/源端口的轉換后,此封包在抵達遠端的目的終端時,AH的檢驗必定失敗,導致 IPsec-AH+NAT的結合方式將無法運作。
發明內容
本發明的主要目的為提供一種實現IPSEC在AH模式下NAT穿越的方法、設備及系統,實現II3Sec在AH模式下穿越NAT設備。本發明提出一種實現msec在AH模式下NAT穿越的方法,包括NAT設備對收到的AH報文進行NAT轉換后,發送至目的終端;目的終端根據通過NAT轉換建立的AH報文參數的映射關系表,還原NAT轉換前的 AH報文參數;對還原后的AH報文參數進行認證。優選地,所述NAT設備對收到的AH報文進行NAT轉換包括 根據NAT轉換表,將所述AH報文的第一參數替換為第二參數;所述第一參數包括第一源IP、第一源端口和第一檢驗和,所述第二參數包括第二源IP、第二源端口和第二檢驗和;所述NAT轉換表包括第一參數和第二參數的映射關系。優選地,在執行所述NAT設備對收到的AH報文進行NAT轉換之后,發送至目的終端之前,還包括NAT設備發送所述第一參數和第二參數至所述目的終端;
所述目的終端建立所述第一參數和第二參數的映射關系表。優選地,所述目的終端根據通過NAT轉換建立的AH報文參數的映射關系表,還原 NAT轉換前的AH報文參數包括查找所述映射關系表中第二參數對應的第一參數;將所述AH報文的第二參數替換為第一參數。本發明還提出一種NAT設備,包括接收模塊,用于接收AH報文;轉換模塊,用于將所述AH報文進行NAT轉換;發送模塊,用于將所述NAT轉換后的AH報文發送至目的終端;供目的終端根據通過NAT轉換建立的AH報文參數的映射關系表,還原NAT轉換前的AH報文參數;以及對還原后的AH報文參數進行認證。優選地,所述轉換模塊具體用于根據NAT轉換表,將所述AH報文的第一參數替換為第二參數;所述第一參數包括第一源IP、第一源端口和第一檢驗和,所述第二參數包括第二源IP、第二源端口和第二檢驗和;所述NAT轉換表包括第一參數和第二參數的映射關系。優選地,所述發送模塊還用于發送所述第一參數和第二參數至所述目的終端;供目的終端建立所述第一參數和第二參數的映射關系表。本發明還提出一種終端,包括接收模塊,用于接收NAT設備發送的AH報文;還原模塊,用于通過NAT轉換建立的AH報文參數的映射關系表,還原NAT轉換前的AH報文參數;認證模塊,用于對還原后的AH報文參數進行認證。優選地,所述終端還包括映射模塊,用于建立所述第一參數和第二參數的映射關系表;所述第一參數包括第一源IP、第一源端口和第一檢驗和,所述第二參數包括第二源IP、第二源端口和第二檢驗和。優選地,所述還原模塊包括查找單元,用于查找所述映射關系表中第二參數對應的第一參數;轉換單元,用于將所述AH報文的第二參數替換為第一參數。本發明還提出一種實現II^sec在AH模式下NAT穿越的系統,包括NAT設備和與所述NAT設備建立連接的終端,所述NAT設備包括接收模塊,用于接收AH報文;轉換模塊,用于將所述AH報文進行NAT轉換;發送模塊,用于將所述NAT轉換后的AH報文發送至目的終端;供目的終端根據通過NAT轉換建立的AH報文參數的映射關系表,還原NAT轉換前的AH報文參數;以及對還原后的AH報文參數進行認證。優選地,所述轉換模塊具體用于根據NAT轉換表,將所述AH報文的第一參數替換為第二參數;所述第一參數包括第一源IP、第一源端口和第一檢驗和,所述第二參數包括第二源IP、第二源端口和第二檢驗和;所述NAT轉換表包括第一參數和第二參數的映射關系。優選地,所述發送模塊還用于發送所述第一參數和第二參數至所述目的終端;供目的終端建立所述第一參數和第二參數的映射關系表。所述終端包括接收模塊,用于接收NAT設備發送的AH報文;還原模塊,用于通過NAT轉換建立的AH報文參數的映射關系表,還原NAT轉換前的AH報文參數;認證模塊,用于對還原后的AH報文參數進行認證。優選地,所述終端還包括映射模塊,用于建立所述第一參數和第二參數的映射關系表;所述第一參數包括第一源IP、第一源端口和第一檢驗和,所述第二參數包括第二源IP、第二源端口和第二檢驗和。優選地,所述還原模塊包括查找單元,用于查找所述映射關系表中第二參數對應的第一參數;轉換單元,用于將所述AH報文的第二參數替換為第一參數。本發明提出的一種實現II^sec在AH模式下NAT穿越的方法、設備及系統,通過對 AH報文參數的還原,可以實現AH模式下穿越NAT設備,改變現在AH模式下無法支持NAT轉換的不足。
圖1為本發明實現msec在AH模式下NAT穿越的方法一實施例的流程示意圖;圖2為圖1所示之AH報文在NAT轉換前后之變化示意圖;圖3為本發明實現msec在AH模式下NAT穿越的方法一實施例中還原的流程示意圖;圖4為本發明實現msec在AH模式下NAT穿越的方法又一實施例的流程示意圖;圖5為本發明NAT設備一實施例的結構示意圖;圖6為本發明終端一實施例的結構示意圖;圖7為本發明終端一實施例中還原模塊的結構示意圖;圖8為本發明終端又一實施例的結構示意圖;圖9為本發明實現msec在AH模式下NAT穿越的系統一實施例的流程示意圖。本發明目的的實現、功能特點及優點將結合實施例,參照附圖做進一步說明。
具體實施例方式應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。參照圖1,提出本發明實現msec在AH模式下NAT穿越的方法一實施例,包括步驟S10、NAT設備對收到的AH報文進行NAT轉換;步驟Sll、發送NAT轉換后的AH報文至目的終端;
步驟S12、目的終端根據通過NAT轉換建立的AH報文參數的映射關系表,還原NAT 轉換前的AH報文參數;步驟S13、對還原后的AH報文參數進行認證。當源終端發送AH報文到NAT設備后,NAT設備對該報文進行NAT轉換,AH報文參數發生變化,如圖2所示,左邊為源終端發送的AH報文內容,右邊為目的終端收到的AH報文內容,其中經過NAT設備后報文的源IP、檢驗和字段和TCP/UDP頭的源端口、檢驗和字段發生了變化。NAT設備將NAT轉換后的AH報文發送至該報文的目的終端。目的終端根據通過 NAT轉換建立的AH報文參數的映射關系表對AH報文參數進行還原并且重新計算校驗和,上述映射關系表保存有NAT轉換前后的AH報文參數的映射關系。還原后的AH報文和源終端發送出來的AH報文完全一樣的。目的終端對還原后的AH報文進行認證。本實施例中,通過對AH報文參數的還原,可以實現AH模式下穿越NAT設備,改變現在AH模式下無法支持NAT轉換的不足。在一實施例中,步驟SlO可包括根據NAT轉換表,將所述AH報文的第一參數替換為第二參數;所述第一參數包括第一源IP、第一源端口和第一檢驗和(即NAT轉換前的源 IP、源端口和檢驗和),所述第二參數包括第二源IP、第二源端口和第二檢驗和(即NAT轉換后的源IP、源端口和檢驗和);所述NAT轉換表包括第一參數和第二參數的映射關系。參照圖3,在上述實施例中,步驟S12可包括步驟S121、查找所述映射關系表中第二參數對應的第一參數;步驟S122、將所述AH報文的第二參數替換為第一參數。目的終端接收到NAT設備發送的已轉換的AH報文后,用報文中的源IP和源端口作為關鍵值在映射關系表內查找NAT轉換前的源IP和源端口,如果查找成功,則進行源IP 和源端口的轉換,轉換后做AH認證處理。如果映射關系表查找失敗,直接做AH認證處理。參照圖4,在上述實施例中,步驟SlO之后,步驟Sll之前,還包括步驟S14、NAT設備發送所述第一參數和第二參數至所述目的終端;步驟S15、所述目的終端建立所述第一參數和第二參數的映射關系表。在收到來自所述源終端的第一個AH報文時,需建立第一參數和第二參數的映射關系表,即建立AH報文參數在NAT轉換前和NAT轉換后的線性關系。NAT設備在收到第一個AH報文時,查找NAT轉換表,將第一參數(包括NAT轉換前的源IP、源端口、檢驗和)和第二參數(包括NAT轉換后的源IP、源端口、檢驗和)構造到一協議報文里,發送到目的終端。目的終端收到協議報文后,將報文里的第一參數和第二參數用鏈表的形式組織記錄到內存中。目的終端發送確認報文給NAT設備,確認收到。NAT設備收到確認報文后停止發送協議報文,否則每隔3秒鐘重新發送一次協議報文。參照圖5,提出本發明一種NAT設備100 —實施例,包括接收模塊10,用于接收AH報文;轉換模塊20,用于將所述AH報文進行NAT轉換;發送模塊30,用于將所述NAT轉換后的AH報文發送至目的終端;供目的終端根據通過NAT轉換建立的AH報文參數的映射關系表,還原NAT轉換前的AH報文參數;以及對還原后的AH報文參數進行認證。
當接收模塊10接收源終端發送的AH報文后,轉換模塊20對該報文進行NAT轉換,AH報文參數發生變化,如圖2所示,左邊為源終端發送的AH報文內容,右邊為目的終端收到的AH報文內容,其中經過NAT設備100后報文的源IP、檢驗和字段和TCP/UDP頭的源端口、檢驗和字段發生了變化。發送模塊30將NAT轉換后的AH報文發送至該報文的目的終端。目的終端根據通過NAT轉換建立的AH報文參數的映射關系表對AH報文參數進行還原并且重新計算校驗和,上述映射關系表保存有NAT轉換前后的AH報文參數的映射關系。還原后的AH報文和源終端發送出來的AH報文完全一樣的。目的終端對還原后的AH報文進行認證。本實施例中,通過對AH報文參數的轉換及還原,可以實現AH模式下穿越NAT設備 100,改變現在AH模式下無法支持NAT轉換的不足。在一實施例中,轉換模塊20具體用于根據NAT轉換表,將所述AH報文的第一參數替換為第二參數;所述第一參數包括第一源IP、第一源端口和第一檢驗和,所述第二參數包括第二源IP、第二源端口和第二檢驗和;所述NAT轉換表包括第一參數和第二參數的映射關系。在一實施例中,發送模塊30還用于發送所述第一參數和第二參數至所述目的終端;供目的終端建立所述第一參數和第二參數的映射關系表。在收到來自所述源終端的第一個AH報文時,需建立第一參數和第二參數的映射關系表,即建立AH報文參數在NAT轉換前和NAT轉換后的線性關系。NAT設備100在收到第一個AH報文時,查找NAT轉換表,將第一參數(包括NAT轉換前的源IP、源端口、檢驗和) 和第二參數(包括NAT轉換后的源IP、源端口、檢驗和)構造到一協議報文里,發送模塊30 發送到目的終端。目的終端收到協議報文后,將報文里的第一參數和第二參數用鏈表的形式組織記錄到內存中。目的終端發送確認報文給NAT設備100,確認收到。NAT設備100收到確認報文后停止發送協議報文,否則每隔3秒鐘重新發送一次協議報文。本實施例通過發送協議報文,供目的終端建立映射關系表,以便后續還原AH報文參數。參照圖6,提出本發明一種終端200 —實施例,包括接收模塊40,用于接收NAT設備發送的AH報文;還原模塊50,用于通過NAT轉換建立的AH報文參數的映射關系表,還原NAT轉換前的AH報文參數;認證模塊60,用于對還原后的AH報文參數進行認證。當源終端發送AH報文到NAT設備后,NAT設備對該報文進行NAT轉換,AH報文參數發生變化,如圖2所示,左邊為源終端發送的AH報文內容,右邊為接收模塊40收到的AH 報文內容,其中經過NAT設備后報文的源IP、檢驗和字段和TCP/UDP頭的源端口、檢驗和字段發生了變化。NAT設備將NAT轉換后的AH報文發送至終端200。還原模塊50根據通過NAT轉換建立的AH報文參數的映射關系表對AH報文參數進行還原并且重新計算校驗和,上述映射關系表保存有NAT轉換前后的AH報文參數的映射關系。還原后的AH報文和源終端發送出來的AH報文完全一樣的。認證模塊60對還原后的AH報文進行認證。本實施例中,通過對AH報文參數的還原,可以實現AH模式下穿越NAT設備,改變現在AH模式下無法支持NAT轉換的不足。參照圖7,在一實施例中,還原模塊50包括查找單元51,用于查找所述映射關系表中第二參數對應的第一參數;轉換單元52,用于將所述AH報文的第二參數替換為第一參數。參照圖8,提出本發明一種終端200又一實施例,在上述實施例中,還包括映射模塊70,用于建立所述第一參數和第二參數的映射關系表;所述第一參數包括第一源IP、第一源端口和第一檢驗和,所述第二參數包括第二源IP、第二源端口和第二檢驗和。在收到來自所述源終端的第一個AH報文時,映射模塊70需建立第一參數和第二參數的映射關系表,即建立AH報文參數在NAT轉換前和NAT轉換后的線性關系。NAT設備在收到第一個AH報文時,查找NAT轉換表,將第一參數(包括NAT轉換前的源IP、源端口、 檢驗和)和第二參數(包括NAT轉換后的源IP、源端口、檢驗和)構造到一協議報文里,發送到終端200的接收模塊40。接收模塊40收到協議報文后,映射模塊70將報文里的第一參數和第二參數用鏈表的形式組織記錄到內存中。終端200發送確認報文給NAT設備,確認收到。參照圖9,提出本發明實現II^sec在AH模式下NAT穿越的系統一實施例,包括NAT 設備100和與所述NAT設備100建立連接的終端200。NAT設備100的結構和工作原理與圖5所示之NAT設備100 —致,終端200的結構和工作原理與圖6至圖8所示之終端200 一致,此處不再贅述。以上所述僅為本發明的優選實施例,并非因此限制本發明的專利范圍,凡是利用本發明說明書及附圖內容所作的等效結構或等效流程變換,或直接或間接運用在其他相關的技術領域,均同理包括在本發明的專利保護范圍內。
權利要求
1.一種實現If3Sec在AH模式下NAT穿越的方法,其特征在于,包括NAT設備對收到的AH報文進行NAT轉換后,發送至目的終端;目的終端根據通過NAT轉換建立的AH報文參數的映射關系表,還原NAT轉換前的AH 報文參數;對還原后的AH報文參數進行認證。
2.如權利要求1所述的方法,其特征在于,所述NAT設備對收到的AH報文進行NAT轉換包括根據NAT轉換表,將所述AH報文的第一參數替換為第二參數;所述第一參數包括第一源IP、第一源端口和第一檢驗和,所述第二參數包括第二源IP、第二源端口和第二檢驗和; 所述NAT轉換表包括第一參數和第二參數的映射關系。
3.如權利要求2所述的方法,其特征在于,在執行所述NAT設備對收到的AH報文進行 NAT轉換之后,發送至目的終端之前,還包括NAT設備發送所述第一參數和第二參數至所述目的終端;所述目的終端建立所述第一參數和第二參數的映射關系表。
4.如權利要求2或3所述的方法,其特征在于,所述目的終端根據通過NAT轉換建立的 AH報文參數的映射關系表,還原NAT轉換前的AH報文參數包括查找所述映射關系表中第二參數對應的第一參數;將所述AH報文的第二參數替換為第一參數。
5.一種NAT設備,其特征在于,包括接收模塊,用于接收AH報文;轉換模塊,用于將所述AH報文進行NAT轉換;發送模塊,用于將所述NAT轉換后的AH報文發送至目的終端;供目的終端根據通過 NAT轉換建立的AH報文參數的映射關系表,還原NAT轉換前的AH報文參數;以及對還原后的AH報文參數進行認證。
6.如權利要求5所述的NAT設備,其特征在于,所述轉換模塊具體用于根據NAT轉換表,將所述AH報文的第一參數替換為第二參數;所述第一參數包括第一源IP、第一源端口和第一檢驗和,所述第二參數包括第二源IP、第二源端口和第二檢驗和; 所述NAT轉換表包括第一參數和第二參數的映射關系。
7.如權利要求5或6所述的NAT設備,其特征在于,所述發送模塊還用于發送所述第一參數和第二參數至所述目的終端;供目的終端建立所述第一參數和第二參數的映射關系表。
8.—種終端,其特征在于,包括接收模塊,用于接收NAT設備發送的AH報文;還原模塊,用于通過NAT轉換建立的AH報文參數的映射關系表,還原NAT轉換前的AH 報文參數;認證模塊,用于對還原后的AH報文參數進行認證。
9.如權利要求8所述的終端,其特征在于,還包括映射模塊,用于建立所述第一參數和第二參數的映射關系表;所述第一參數包括第一源IP、第一源端口和第一檢驗和,所述第二參數包括第二源IP、第二源端口和第二檢驗和。
10.如權利要求8或9所述的終端,其特征在于,所述還原模塊包括 查找單元,用于查找所述映射關系表中第二參數對應的第一參數; 轉換單元,用于將所述AH報文的第二參數替換為第一參數。
11.一種實現If3Sec在AH模式下NAT穿越的系統,其特征在于,包括NAT設備和與所述 NAT設備建立連接的終端,所述NAT設備為權利要求5至7中任一項所述的NAT設備,所述終端為權利要求8至10中任一項所述的終端。
全文摘要
本發明揭示了一種實現IPSEC在AH模式下NAT穿越的方法,包括NAT設備對收到的AH報文進行NAT轉換后,發送至目的終端;目的終端根據通過NAT轉換建立的AH報文參數的映射關系表,還原NAT轉換前的AH報文參數;對還原后的AH報文參數進行認證。本發明還提出了對應的設備和系統。本發明的主要目的為提供一種實現IPSEC在AH模式下NAT穿越的方法、設備及系統,實現IPsec在AH模式下穿越NAT設備。
文檔編號H04L29/06GK102202108SQ201110160968
公開日2011年9月28日 申請日期2011年6月15日 優先權日2011年6月15日
發明者鐘鋒巖 申請人:中興通訊股份有限公司