【技術實現步驟摘要】
基于中間件實現網關NAPT功能的方法及裝置
本專利技術實施例涉及通信技術,尤其涉及一種基于中間件實現網關NAPT功能的方法及裝置。
技術介紹
網絡地址端口轉換(Network Address Port Translation,簡稱 NAPT)是一種將多個私有內部IP地址映射為一個合法公網IP地址的轉換技術,也就是〈內部地址+內部端口〉與〈外部地址+外部端口〉之間的轉換。接入網關設備一般具備這種NAPT功能,以用于局域網與廣域網之間的互聯互通。現有的實現NAPT功能的方法主要分為三類:一是在內核態下對操作系統的協議棧進行相應修改來實現NAPT功能,具有處理速度快和可靠性高等優點;二是在用戶態下用代理軟件來實現NAPT功能;三是在底層驅動中實現NAPT功能。第一種和第三種方法的缺陷在于NAPT功能與操作系統和底層驅動的耦合度大,第二種方法的缺陷在于NAPT功能擴展性差。現有技術中缺乏一種能夠同時克服內核態下、用戶態下和底層驅動中實現NAPT功能不足之處的基于中間件實現網關NAPT功能的方法。
技術實現思路
本專利技術提供一種基于中間件實現網關NAPT功能的方法及裝置,以克服內核態下、用戶態下和底層驅動中實現NAPT功能不足之處。本專利技術的一個方面是提供一種基于中間件實現網關NAPT功能的方法,包括:中間件獲取數據包,并判斷所述數據包是否為IP數據包;若所述數據包是IP數據包,且所述IP數據包攜帶有TCP報文或UDP報文,則所述中間件查詢NAPT表中是否存在所述IP數據包攜帶的源IP與源端口號的對應關系;若所述NAPT表中不存在所述IP數據包攜帶的源I ...
【技術保護點】
一種基于中間件實現網關NAPT功能的方法,其特征在于,包括:中間件獲取數據包,并判斷所述數據包是否為IP數據包;若所述數據包是IP數據包,且所述IP數據包攜帶有TCP報文或UDP報文,則所述中間件查詢NAPT表中是否存在所述IP數據包攜帶的源IP與源端口號的對應關系;若所述NAPT表中不存在所述IP數據包攜帶的源IP與源端口號的對應關系,則所述中間件分別修改所述IP數據包中的源IP與源端口號,以使修改后的源IP為所述中間件當前所處裝置的IP,修改后的源端口號與所述NAPT表中存在的修改后的源端口號均不相同,以實現將所述修改后的數據包發送給外網設備;所述中間件將所述源IP、所述源端口號、所述修改后的源IP和所述修改后的源端口號的對應關系存儲到所述NAPT表中。
【技術特征摘要】
1.一種基于中間件實現網關NAPT功能的方法,其特征在于,包括: 中間件獲取數據包,并判斷所述數據包是否為IP數據包; 若所述數據包是IP數據包,且所述IP數據包攜帶有TCP報文或UDP報文,則所述中間件查詢NAPT表中是否存在所述IP數據包攜帶的源IP與源端口號的對應關系;若所述NAPT表中不存在所述IP數據包攜帶的源IP與源端口號的對應關系,則所述中間件分別修改所述IP數據包中的源IP與源端口號,以使修改后的源IP為所述中間件當前所處裝置的IP,修改后的源端口號與所述NAPT表中存在的修改后的源端口號均不相同,以實現將所述修改后的數據包發送給外網設備; 所述中間件將所述源IP、所述源端口號、所述修改后的源IP和所述修改后的源端口號的對應關系存儲到所述NAPT表中。2.根據權利要求1所述的方法,其特征在于,還包括: 若所述NAPT表中存在所述IP數據包攜帶的源IP與源端口號的對應關系,則所述中間件從所述NAPT表中,獲取與所述源IP與源端口號對應的修改后的源IP和修改后的源端口號,并將所述IP數據包攜帶的所述源IP與源端口號分別修改為所述修改后的源IP和修改后的源端口號。3.根據權利要求1所述的方法,其特征在于,還包括: 若所述數據包是IP數據包,且所述IP數據包攜帶有ICMP報文,則所述中間件查詢ICMP表中是否有所述IP數據包攜帶的源IP ; 若所述ICMP表中沒有所述IP數據包攜帶的源IP,則所述中間件修改所述ICMP報文攜帶的主題查詢ID號,并將所述IP數據包攜帶的源IP存儲到所述ICMP表中; 若所述ICMP表中有所述IP數據包攜帶的源IP,則所述中間件修改所述ICMP報文攜帶的主題查詢ID號。4.根據權利要求3所述的方法,其特征在于,所述中間件修改所述ICMP報文攜帶的主題查詢ID號包括: 所述中間件將所述ICMP報文攜帶的主題查詢ID號修改為所述IP數據包攜帶的源IP的最后一個字節。5.根據權利要求1所述的方法,其特征在于,所述中間件獲取數據包,并判斷所述數據包是否為IP數據包之后,還包括: 若所述數據包是IP數據包,所述中間件將所述IP數據包對應的源MAC地址修改為包含所述中間件的設備的MAC,將所述IP數據包對應的目的MAC修改為下一跳接收設備的MAC ; 若所述數據 包是ARP數據包,則所述中間件將所述ARP數據包攜帶的源IP和源MAC,及對應關系存儲到ARP表中。6.根據權利要求1-5任一項所述的方法,其特征在于,還包括: 所述中間件對修改后的所述IP數據包進行校驗更正,并轉發所述修改后的所述IP數據包。7.—種中間件,其特征在于,包括...
【專利技術屬性】
技術研發人員:劉鋒,陳旭,陳凌鵬,徐楨,劉凱,
申請(專利權)人:北京航空航天大學,
類型:發明
國別省市:北京;11
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。