isatap掃盲

isatap
簡介
 
  ISATAP ( Intra-Site Automatic Tunnel Addressing Protocol,站內自動隧道尋址協議)是一種地址分配和主機到主機、主機到路由器和路由器到主機的自動隧道技術,它爲IPv6主機之間提供了跨越IPv4內部網絡的單播IPv6連通性 ISATAP一般用於IPv4網絡中的IPv6/IPv4節點間的通信。ISATAP使用本地管理的接口標識符::0:5EFE:w.x.y.z,其中: 0: 5EFE部分是由Internet號碼分配中心(IANA)所分配的機構單元標識符 (00-00-5E)和表示內嵌的IPv4地址類型的類型號(FE)組合而成的。 w.x.y.z部分是任意的單播IPv4地址,既可以是私有地址,也可以是公共地址。
特徵
 

  任何有效的IPv6單播地址的64位前綴都可以和ISATAP接口標識符相結 合,它們包括鏈路本地地址前綴(FE80::/64)、全球前綴(包括6to4前綴)和 站點本地前綴。

  ISATAP地址中也包含了一個內嵌的IPv4地址,這一點與IPv4映射地址、6over4地址和6to4地址類似。內嵌的IPv4地址的作用是:在發往ISATAP地址的IPv6通信流通過隧道跨越了IPv4網絡後,可用它來確定IPv4報頭中的源IPv4地址或目標IPv4地址。

技術原理http://imgsrc.baidu.com/baike/abpic/item/95afee1fbce0d699e1fe0b13.jpg

 ISATAP過渡技術基本原理。
  雙棧主機在與其他主機或路由器通信之前,首先要獲得一個ISATAP地址。雙棧主機先向ISATAP服務器發送路由請求,得到一個64位的IPv6地址前綴,然後再加上64位的接口標識符∷0:5EFE:X.X.X.X(這裏的X.X.X.X是雙棧主機的IPv4單播地址),這樣就構成一個ISATAP地址。雙棧主機配置了ISATAP地址後,就成了一個ISATAP客戶機,進而就可以在IPv4域內和其他的ISATAP客戶機進行通信了。一般來說,ISATAP地址的配置既支持無狀態地址自動配置方式,也支持手工配置方式。
  1.同一個IPv4域內ISATAP主機間的通信過程
  在同一個IPv4域內,兩臺ISATAP客戶機的通信過程如下:
  ①雙棧主機1獲得雙棧主機2的ISATAP地址後,將需要發送的數據包交給ISATAP接口進行發送;
  ②ISATAP從該數據包的IPv6源地址和目的地址中提取出相應的IPv4源和目的地址,並對該數據包用IPv4頭部進行封裝;
  ③封裝後的數據包按照其IPv4目的地址被髮送到雙棧主機2;
  ④雙棧主機2接收到該數據包後對其解封裝,得到原始IPv6數據包;
  ⑤雙棧主機2通過與上述過程類似的過程將應答數據返回給雙棧主機1。
  從上面的通信過程中我們可以看出,ISATAP實際上是將IPv4網絡作爲一個承載平臺,通過在其上面建立一個IPv6-in-IPv4自動隧道來完成IPv6通信的。
 2. ISATAP主機與其他網絡之間的通信過程
  ISATAP主機除了可以在ISATAP域內與其他ISATAP主機通信外,還可以通過ISATAP路由器實現與其他網絡的通信。比如,ISATAP主機就可以通過ISATAP路由器與IPv6網絡中的IPv6服務器進行通信,其通信原理如圖2所示,通信過程如下:
  圖2 ISATAP主機與IPv6網絡中的IPv6服務器之間的通信過程
  ①ISATAP主機獲得ISATAP地址(站點本地地址),並將下一跳躍點­next hop 設爲ISATAP 路由器的ISATAP地址(站點本地地址);
  ②當ISATAP主機送出目的地爲所在子網絡以外的地址時,ISATAP先將IPv6數據包進行IPv4封裝,然後以隧道方式送到ISATAP 路由器的IPv4地址;
  ③ISATAP 路由器除去IPv4包頭後,將IPv6 數據包轉送給IPv6網絡中的目的IPv6服務器;
  ④IPv6服務器直接將應答的IPv6數據包發回給ISATAP網絡;
  ⑤在應答IPv6數據包經過ISATAP路由器時,ISATAP路由器先將應答IPv6數據包進行IPv4封裝,然後再轉發給ISATAP主機;
  ⑥ISATAP主機收到應答數據包後,將數據包去掉IPv4包頭,恢復成原始IPv6數據包。
  通過上述步驟,ISATAP主機與IPv6網絡中的IPv6服務器完成了一次完整的數據通信過程。
地址解析相關機制
 
  ISATAP過渡技術通過IPv6的鄰居發現機制(參見IETF RFC 2461)來實現路由重定向、鄰居不可達檢測(NUD)和路由下一跳選擇。
  ISATAP地址的獲得是由鏈路層IPv4地址通過靜態計算得到的。在獲得了ISATAP地址之後,主機通過發送鄰居請求和接收鄰居宣告消息來確認鄰居是否可達。另外,主機還需要執行鄰居不可達檢測。因爲是在某一個ISATAP域內實現的,所以它假設IPv4地址是不重複的,這樣ISATAP地址也就不需要進行重複地址檢測。
  ISATAP節點在執行路由器和前綴發現時,除了使用鄰居發現中的數據結構前綴列表和默認路由器列表外,ISATAP鏈路還增加了一個新的數據結構——潛在路由器列表(PRL),以及一個新的配置變量PrlRefreshInterval。潛在路由器列表列出潛在的、可供ISATAP節點使用的路由器;變量PrlRefreshInterval用來設置初始化之後連續兩次PRL重新刷新的間隔秒數。
技術優點
 
  ISATAP過渡技術具有如下優點:
  ①ISATAP過渡技術所使用的IPv6地址前綴可以是任何合法的IPv6 單點傳播的64 位前綴,包括全球性地址前綴(以2001:,2002:,3ffe:開頭)、鏈路本地前綴(以fe80:開頭)和站點本地前綴(以fec0: 開頭)等等,這使得該項技術很容易與其他過渡技術結合起來使用,尤其是在和6 to 4隧道技術相結合使用時,可以使內部網的雙棧主機非常容易地接入IPv6主幹網;
  ②ISATAP過渡技術不要求隧道端節點必須具有全球惟一的IPv4地址,只要雙棧主機具有IPv4單播地址即可,不管該地址公有的還是私有的都可以。這樣也就有效地避免了IPv4地址不足的問題;
  ③ISATAP過渡技術不需要站點提供特殊的IPv4服務(例如多播等),實現起來簡便易行;
  ④使用ISATAP過渡技術時,在邊界網關上不影響聚合範圍的情況下,能夠在IPv4站點內部署新的IPv6主機,因此可用於內部私有網中各雙棧主機之間進行IPv6通信。
 
網絡安全問題及應對策略
 
  由於ISATAP使用隧道技術,所以隧道技術所面臨的網絡安全問題也同樣是ISATAP所面臨的網絡安全問題,它最容易受到的***就是地址欺騙***。如果不加防範,可以很容易地通過地址欺騙***將大量的協議類型爲41的數據包注入到ISATAP鏈路中。ISATAP 網絡所受到的地址欺騙***可能來自於ISATAP 網絡外部。由於在整個IPv4 站點中都使用ISATAP鏈路,所以對於來自於站點外的***可以通過嚴格限制對站點的訪問來限制對鏈路的訪問,也就是要考慮在網絡入口處的數據過濾問題,通過在站點的邊界路由器入口處執行IPv4數據過濾、IPv6數據過濾和協議類型爲41的數據包過濾來保證。
  ISATAP 網絡所受到的地址欺騙***也可能來自於ISATAP 網絡內部。站點內的地址欺騙***可以通過一個僞裝成路由器的節點來進行,ISATAP網絡內部所有的ISATAP主機都處於相同的鏈路上,這種來自於相同鏈路上的***很難防止,尤其是在ISATAP網絡內部存在大量主機的時候。考慮到在PRL中提供了路由器ISATAP 公佈的IPv4接口地址,所以可以將這些地址用在安全防範的策略之中。可是,這種防範方法需要保證隨時更新PRL數據,這個操作通過手工實現幾乎是不可能的,而目前還沒有更好的自動實現的解決方案,這也就成了ISATAP技術的最大弱點。
  再有,由於站點內的所有ISATAP主機都在同一個IPv6鏈接上,儘管可以像通常一樣在ISATAP路由器處監控流量,但是由於ISATAP路由器處於站點的邊緣,而且在站點內的主機之間通過ISATAP鏈路傳輸的包並不經過該路由器,因此根本沒有辦法監控和排除出現內部***的可能性。爲了有效地防止來自於ISATAP站點內源IPv6地址欺騙的***,需要在路由器的ISATAP接口上啓用緩解地址欺騙***的安全機制,至少ISATAP站點的邊界網關必須記錄地址欺騙源地址的來源。這樣,一旦出現了地址欺騙***,還可以利用這些記錄進行分析,並能夠很快地找出產生地址欺騙***的源頭。
  由於ISATAP技術使用RFC 2461所述的鄰居發現協議,而鄰居發現協議最容易受到的***是拒絕服務(DoS)***。因此,這方面的安全問題也需要加以考慮。有關這方面的具體防範措施可參考IETF RFC 2461中的“安全考慮(Security Considerations)”一節。
 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章