摘要:通信專業考試互聯網技術HA對數據包的處理:HA為MN截獲數據包,然后用隧道傳給MN。為了實現這些,HA必須在MN的家鄉鏈路上以MN的名義發送鄰居通告報文,
1.互聯網技術HA對數據包的處理
HA對數據包的處理可以分為以下幾種情況。
(1)為MN截獲數據包
HA為MN截獲數據包,然后用隧道傳給MN。為了實現這些,HA必須在MN的家鄉鏈路上以MN的名義發送鄰居通告報文,步驟如下:
①HA檢查BU的S位,如果為1,則只為BU中指定的IP地址執行第②步的操作,否則HA為MN所有的IP地址執行第②步的操作:
②HA代表MN的地址在家鄉鏈路上發送鄰居通告報文,告知HA的鏈路足地址和MN的IP地址。
家鄉鏈路上的任何節點收到這個鄰居通告后,更新各自的鄰居緩存,將MN的IP地址和HA的鏈路層地址結合起來,使以后發往MN的數據包都被轉送給HA。因為鄰居通告沒有可靠性機制,所以HA要按照最大鄰居通告次數重復發送鄰居通告信息以增加可靠性,即使這樣,還是會有節點沒有收到通告,只能在后來通告發送鄰居不可達監測時才能發現MN的鏈路戻地址發生了變化。
當某個節點為一些MN充當HA時,HA使用IPv6鄰居發現接收來截獲發往MN的數據包。為了實現這個目的,HA必須充當MN的代理,并代替MN回復所有的鄰居請求,它要檢査鄰居請求中的目標地址是否與自己的綁定緩存中的某個條0匹配。如果有一個條H匹配,HA必須發送一個鄰居通告,把自己的鏈路層地址作為MN的鏈路層地址遞交上去,R位要置0。這樣所有發往MN的數據包就會被發到HA處。
(2)隧道數據包至MN
HA截獲發往MN的數據包,通過隧道傳給MN的主轉交地址,再通過路由頭傳遞到MN的家鄉地址。在隧道中傳輸要用到IPv6封裝,封裝頭源地址為HA的IP地址,目的地址為MN的主轉交地址。MN接到這個包,解封裝通過路由頭傳遞給MN的家鄉地址。使用隧道時葙注意以下幾點:
①發往MN鏈路本地地址的包不要通過隧道傳送給MN,這種包應丟棄并返回一個ICMP目的地不可達報文,代碼為3(如果包的源地址不是一個單播地址,則不發送這個ICMP報文);
②發往MN站點本地的包,畎認情況是要轉發至MN,但我們必須人為地將它配置成不能轉發,因為這里所說的“站點”、站點本地地址與IPv6定義得不完全相同:
③鏈路本地范圍內的多播包不能傳給MN,應丟棄。范圍大于鏈路本地但小于全球的多播包默認情況下是可以發給MN的,但我們必須人為地配置成不許轉發,以防將來會對這些范圍有影響。
(3)處理從MN來的逆隧道包
除非MN和CN之間己經進行了綁定,否則MN與CN之間的通信要通過逆隧道進行:
①逆隧道至HA要經過IPv6封裝:
②隧道的入口點為注冊的主轉交地址,出口點為HA的地址:
③HA在解封裝時要檢査IP頭源地址足主轉交地址(防止別的節點旨充):
④HA要驗證AH和ESP頭的正確性。
(4)保護返回可路由包
為了保護HoTI和HoT報文的機密性,HA必須支持隧道模式下IPSec的ESP,要支持一個非0的加密傳輸和驗證算法。如果MN的轉交地址發生了變化,那么HA和MN之間的安全聯盟的B的地址也要相應地變化,以保證驗證的一致性。
以上保護對所有的MN都適用,這些保護是在IPSec的安全策略數據庫中定義的。BU、BA報文和返回可路出報文一樣需要保護,它們都使用相同的安全策略數據庫來保護。
返回目錄
編輯特別推薦
通信工程師備考資料免費領取
去領取
專注在線職業教育25年