本發明專利技術公開基于網橋實現三層路由轉發的方法、系統及網關設備,其中,該方法包括:獲取網橋需要轉發的數據包,并獲取所述數據包的目的IP地址,其中,所述網橋為:配置在網關設備操作系統中的虛擬設備;對所述目的IP地址進行路由查詢,若有路由命中,則將所述數據包送入當前網橋所在的操作系統協議棧的網絡層。該系統采用上述方法,在網橋處理接收到的數據包時篩選出需要按IP地址進行路由轉發的數據包,并直接送入操作系統協議棧的網絡層,方便于在現有的網絡拓撲結構中快速部署新的網關設備。該網關設備內置有上述系統,在以網橋模式部署到現有網絡拓撲結構中時,無需手動添加靜態路由即可實現數據包的三層路由轉發,減少了網絡拓撲工作的作業量。
【技術實現步驟摘要】
基于網橋實現三層路由轉發的方法、系統及網關設備
本專利技術涉及網絡通信
,尤其涉及基于網橋實現三層路由轉發的方法、系統及網關設備。
技術介紹
在為企業、學校等機構添加某些網關設備(例如VPN網關)時,經常因為不能改變現有的網絡拓撲而必須以旁路模式部署,或以網橋模式插入到現有網絡中。但是,以旁路模式部署網關設備時,需要內網終端用戶手動添加靜態路由,將訪問相應網段的路由指向這臺旁路網關;而以網橋模式將網關設備插入到現有網絡中時,需要先基于網關設備的操作系統內核配置一個虛擬網橋設備,然后利用該虛擬網橋設備將網關部署到現有網絡拓撲結構中,這種部署方式中,請參閱圖1,雖然網橋能接收到內網終端的所有數據包,但卻不能對經過其的數據包進行三層(網絡層)路由轉發,進而無法實現網關在網絡層以上的網絡互連,這是因為網關的操作系統的協議棧對數據包的處理通常是分層進行的,即對接收到的數據包依次進行數據鏈路層、網絡層、傳輸層、應用層的解析和處理,而傳統的網橋僅工作在二層(即數據鏈路層),只能將數據包按MAC地址進行轉發,即:接收到來自內網從屬物理接口的數據包,并將該數據包轉發到外網從屬物理接口,以實現基于MAC地址的二層數據轉發,而無法將數據包按IP地址進行三層路由轉發。故而,將網關設備以網橋模式部署到現有網絡中時,也需要內網終端用戶手動添加靜態路由才能工作,不夠便捷。因此,如何基于工作在二層的網橋實現三層路由轉發,是在現有的網絡拓撲結構中快速部署新的網關設備時亟需解決的問題。
技術實現思路
本專利技術的目的在于提供基于網橋實現三層路由轉發的方法、系統及網關設備,在網橋處理接收到的數據包時篩選出需要按IP地址進行路由轉發的數據包,并將該數據包直接送入操作系統協議棧的網絡層,以減少網絡拓撲工作的作業量,方便于快速部署新的網關設備。為了實現上述目的,本專利技術提供如下技術方案:一種基于網橋實現三層路由轉發的方法,包括:獲取網橋需要轉發的數據包,并獲取所述數據包的目的IP地址,其中,所述網橋為:配置在網關設備操作系統中的虛擬設備;對所述目的IP地址進行路由查詢,若所述目的IP地址有路由命中,則將所述數據包送入當前網橋所在的操作系統協議棧的網絡層。優選地,通過網橋的內網從屬物理接口獲取網橋需要轉發的數據包。具體地,獲取所述數據包的目的IP地址的方法包括:判斷所述數據包中是否包含IP數據報;若包含IP數據報,則解析得到所述IP數據報中的目的IP地址;若不包含IP數據報,則將所述數據包送入當前網橋的操作系統協議棧的網絡層。進一步地,通過識別所述數據包的網絡層協議是否為IP協議,判斷所述數據包中是否包含IP數據報;通過解析所述IP數據報的報頭得到所述目的IP地址。較佳地,對所述目的IP地址進行路由查詢的方法包括但不限于:調用網橋所在的操作系統內核中的路由查詢API,并將所述目的IP作為路由查詢參數,查詢路由表;若所述路由查詢API返回有效的路由表項,則所述目的IP有路由命中,并將所述數據包送入當前網橋所在的操作系統協議棧的網絡層;否則,所述目的IP沒有路由命中,并將所述數據包送入當前網橋的操作系統協議棧的網絡層。優選地,將包含有路由命中的目的IP地址的數據包送入當前網橋所在的操作系統協議棧的網絡層的方法包括:將所述數據包中以太網幀的MAC地址修改為當前網橋的虛擬接口的MAC地址,同時將所述數據包的接收接口修改為當前網橋的虛擬接口;調用網橋的網卡數據包接收API,將修改后的數據包發送到網橋所在的操作系統協議棧的網絡層。一種基于網橋實現三層路由轉發的系統,內置于配置有虛擬網橋設備的網關設備的操作系統中,包括數據包獲取模塊和網絡層預處理模塊,其中,所述數據包獲取模塊用于獲取網橋需要轉發的數據包,并獲取所述數據包的目的IP地址,其中,所述網橋為:配置在網關設備操作系統中的虛擬設備;所述網絡層預處理模塊用于對所述目的IP地址進行路由查詢,若所述目的IP地有路由命中,則將所述數據包送入當前網橋所在的操作系統協議棧的網絡層;其中,所述網橋為通過網橋模式部署到網絡拓撲結構中的網關設備。一種網關設備,所述網關設備通過網橋模式部署到網絡拓撲結構中,所述網關設備的操作系統中配置有虛擬網橋設備,且所述網關設備的操作系統中內置有上述基于網橋實現三層路由轉發的系統。較好地,所述網關設備的操作系統包括但不限于Linux操作系統,并且所述網關設備支持IPv4和/或IPv6的三層路由轉發。一種計算機可讀存儲介質,具有存儲在其上的計算機可讀程序指令,所述計算機可讀程序指令用于執行上述基于網橋實現三層路由轉發的方法。與現有技術相比,本專利技術提供的基于網橋實現三層路由轉發的方法、系統及網關設備具有以下有益效果:本專利技術提供的基于網橋實現三層路由轉發的方法,首先獲取網橋需要轉發的數據包的目的IP地址,當數據包的目的IP地址有路由命中時,將數據包送回當前網橋的操作系統協議棧,則該數據包自動跳過數據鏈路層直接進入網絡層進行基于IP地址的路由轉發,無需手動為以網橋模式部署到現有網絡拓撲中的網關設備添加靜態路由即可實現數據包的三層路由轉發,方便于快速部署新的網關設備。本專利技術提供的基于網橋實現三層路由轉發的系統,采用上述方法,在網橋處理接收到的數據包時篩選出需要按IP地址進行路由轉發的數據包,并將該數據包直接送入操作系統協議棧的網絡層,以減少網絡拓撲工作的作業量,方便于在現有的網絡拓撲結構中快速部署新的網關設備。本專利技術提供的網關設備,內置有上述基于網橋實現三層路由轉發的系統,在以網橋模式部署到現有網絡拓撲結構中時,無需手動添加靜態路由即可實現數據包的三層路由轉發,減少了網絡拓撲工作的作業量。附圖說明此處所說明的附圖用來提供對本專利技術的進一步理解,構成本專利技術的一部分,本專利技術的示意性實施例及其說明用于解釋本專利技術,并不構成對本專利技術的不當限定。在附圖中:圖1為現有技術中網關設備以網橋模式部署到現有網絡拓撲結構中時轉發數據的執行過程示意圖;圖2為本專利技術實施例中基于網橋實現三層路由轉發的方法流程示意圖;圖3為本專利技術實施例中基于網橋實現三層路由轉發的方法執行過程示意圖。具體實施方式為使本專利技術的上述目的、特征和優點能夠更加明顯易懂,下面將結合本專利技術實施例中的附圖,對本專利技術實施例中的技術方案進行清楚、完整地描述。顯然,所描述的實施例僅僅是本專利技術一部分實施例,而不是全部的實施例。基于本專利技術中的實施例,本領域普通技術人員在沒有作出創造性勞動的前提下所獲得的所有其它實施例,均屬于本專利技術保護的范圍。實施例一請參閱圖2或圖3,一種基于網橋實現三層路由轉發的方法,包括:通過網橋的內網從屬物理接口獲取網橋需要轉發的數據包,并獲取該數據包的目的IP地址,其中,本實施例中的網橋為:配置在網關設備操作系統中的虛擬設備;對上述目的IP地址進行本文檔來自技高網...
【技術保護點】
1.一種基于網橋實現三層路由轉發的方法,其特征在于,包括:/n獲取網橋需要轉發的數據包,并獲取所述數據包的目的IP地址,其中,所述網橋為:配置在網關設備操作系統中的虛擬設備;/n對所述目的IP地址進行路由查詢,若所述目的IP地址有路由命中,則將所述數據包送入當前網橋所在的操作系統協議棧的網絡層。/n
【技術特征摘要】
1.一種基于網橋實現三層路由轉發的方法,其特征在于,包括:
獲取網橋需要轉發的數據包,并獲取所述數據包的目的IP地址,其中,所述網橋為:配置在網關設備操作系統中的虛擬設備;
對所述目的IP地址進行路由查詢,若所述目的IP地址有路由命中,則將所述數據包送入當前網橋所在的操作系統協議棧的網絡層。
2.根據權利要求1所述的基于網橋實現三層路由轉發的方法,其特征在于,通過網橋的內網從屬物理接口獲取網橋需要轉發的數據包。
3.根據權利要求1或2所述的基于網橋實現三層路由轉發的方法,其特征在于,獲取所述數據包的目的IP地址的方法包括:
判斷所述數據包中是否包含IP數據報;
若包含IP數據報,則解析得到所述IP數據報中的目的IP地址;
若不包含IP數據報,則將所述數據包轉發到當前網橋的外網從屬物理接口。
4.根據權利要求3所述的基于網橋實現三層路由轉發的方法,其特征在于,通過識別所述數據包的網絡層協議是否為IP協議,判斷所述數據包中是否包含IP數據報;
通過解析所述IP數據報的報頭得到所述目的IP地址。
5.根據權利要求1所述的基于網橋實現三層路由轉發的方法,其特征在于,對所述目的IP地址進行路由查詢的方法包括但不限于:
調用網橋所在的操作系統內核中的路由查詢API,并將所述目的IP作為路由查詢參數,查詢路由表;
若所述路由查詢API返回有效的路由表項,則所述目的IP有路由命中,并將所述數據包送入當前網橋所在的操作系統協議棧的網絡層;
否則,所述目的IP沒有路由命中,并將所述數據包轉發到當前網橋的外網從屬物理接口。
【專利技術屬性】
技術研發人員:劉劍英,王緊緊,
申請(專利權)人:全訊匯聚網絡科技北京有限公司,
類型:發明
國別省市:北京;11
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。