IPv6協(xié)議網(wǎng)絡過渡技術精講
為了能讓IPv4和IPv6協(xié)議網(wǎng)絡更好的融合,我們采取了很多技術來進行兩網(wǎng)的互通。首先我們來介紹一下隧道技術。以及相關的一些過渡技術。
隧道技術
在IPv6協(xié)議網(wǎng)絡徹底代替IPv4網(wǎng)絡之前,總是有一些接入網(wǎng)技術首先具有IPv6的協(xié)議棧。一般來說,在過渡前期,我們往往把這些網(wǎng)絡比做IPv4海洋中的IPv6小島。過渡的問題可以因此分成兩大類:第一類是解決這些IPv6小島之間互相通信的問題;第二類是解決IPv6小島與IPv4的海洋之間通信的問題。
IPv6/IPv4 隧道技術的目的是利用現(xiàn)有的IPv4設施來為IPv6主機服務,使得各個分散的IPv6“孤島"可以跨越IPv4網(wǎng)絡相互通信。在IPv6封包通過IPv4網(wǎng)絡時,無論哪種隧道機制都是使用了一個“封包——拆包"過程,即處于發(fā)送端的隧道端點將該IPv6封包封裝在IPv4包中,將此IPv6包視為IPv4的負載數(shù)據(jù),并將該IPv4包頭的協(xié)議字段設置為41,以說明該IPv4封包的負載是一個IPv6封裝包,然后在IPv4網(wǎng)絡上傳送該封裝包。當協(xié)議字段標為41的IPv4封裝包到達處于接收端的Tunnel端點時,該端點拆掉封裝包的IPv4包頭,取出IPv6封裝包繼續(xù)處理。在對IPv6包進行IPv4封裝時如何確定該IPv4包的源和目的地址是封裝的關鍵問題,現(xiàn)存的IPv4/IPv6隧道機制的主要區(qū)別就在于如何確定IPv4封包的地址。
手工配置隧道
手工配置隧道(Configured Tunnel)是一種端到端的機制,需要隧道兩端的管理員協(xié)同工作來完成隧道的建立。管理員對隧道兩端進行配置時,首先應為隧道接口指定兩端的IPv4地址,對在此隧道上傳遞的所有IPv6包進行IPv4封裝時,都要從這一配置信息中提取源和目的IPv4地址。其次管理員要設置必要的路由信息,用以決定哪些IPv6包要經(jīng)過隧道傳遞。
由于手工配置隧道是IPv6支持的第一個過渡機制,所以在目前被廣泛地支持。這種機制不強制要求使用隧道的主機IPv6地址中包含某種固定信息,地址的使用比較靈活。但這種方式的缺點是,人工配置的隧道兩端IPv6地址和IPv4地址都需要事先經(jīng)過協(xié)商和設定,才能完成兩端的隧道配置,這給接入網(wǎng)技術管理人員帶來了極大的負擔。手工配置的人工工作量大(每天要處理上萬條隧道),導致效率低下,并且容易出現(xiàn)差錯。
為了簡化建立隧道的工作量,尤其是隧道服務器端的工作量,隧道代理模型被提出。隧道代理系統(tǒng)提供一種簡化配置隧道的機制,可以減少繁重的隧道配置工作。隧道代理的思想就是提供專用的服務器作為隧道代理,自動地管理用戶發(fā)出的隧道請求。用戶通過隧道代理能夠方便地和IPv6協(xié)議網(wǎng)絡建立隧道連接,從而訪問外部可用的IPv6資源。隧道代理過渡機制在IPv6早期吸引了更多的IPv6使用者,通過IPv4/IPv6隧道機制使他們能方便快捷地實現(xiàn)IPv6連接,同時也為早期的IPv6提供商提供了一種簡便快捷的接入方式。
自動配置隧道
自動配置隧道(Automatic Tunnel)需要靜態(tài)建立雙向的隧道,配置隧道的一方不需要與其他方協(xié)同。系統(tǒng)建立隧道的接口或者在IPv6地址中包含IPv4地址信息,這樣在隧道對IPv6包進行封裝時可以從IPv6地址中提取IPv4地址,并填寫IPv4包頭; 或者提供一種IPv4尋址方式,利用尋址技術得到對端的IPv4地址。目前常用的自動隧道技術有以下5種。
◆利用IPv4兼容地址的自動隧道技術: 自動隧道能夠完成點到多點的連接,這是它的特點。而手動隧道僅僅是點到點的連接。IPv4兼容IPv6自動隧道這種技術能夠使隧道自動生成。我們知道,一個隧道需要有一個起點和一個終點,起點和終點確定了以后,那么隧道也就可以確定了。在IPv4兼容IPv6自動隧道中,我們僅僅需要告訴設備隧道的起點,隧道的終點由設備自動生成。為了實現(xiàn)設備自動產(chǎn)生終點的目的,IPv4兼容IPv6自動隧道需要使用一種特殊的地址:IPv4兼容IPv6地址。
◆6over4技術: 利用IPv4組播機制實現(xiàn)虛擬鏈路,自動建立隧道的機制。使用這種機制的接口利用RFC2461中提出的ND(Neighbor Discovery)協(xié)議進行尋址,當需要對一個IPv6包進行封裝時,IPv6層發(fā)送ND請求報文對目的IPv6地址進行尋址,6over4接口將ND請求報文封裝一個IGMP頭后發(fā)送到IPv4組播域; 在該組播域中如果有另一個6over4接口擁有被請求的IPv6地址,則該接口以同樣的方式發(fā)出包含其IPv4地址的ND應答報文,查詢接口收到該ND應答后就可以從中得到目的接口的IPv4地址。
◆6to4技術: 使用這種機制的接口需要使用6to4地址,其前綴格式為: 2002:IPv4 Addr::/48。這種機制需要對兩類路由器進行配置,這兩類路由器分別是: (1) 6to4路由器(6to4 Router),作為一個IPv6域的出口路由器,其外出接口為6to4接口; (2) 6to4中繼路由器(6to4 Relay Router),作為多個6to4 Router的中繼的6to4 Router,通??梢詫?to4 Router的缺省路由設置為一個6to4中繼路由,通過在這個中繼路由器中設置相應的路由信息來連接多個IPv6域。
◆ISATAP(Intra-Site Automatic Tunnel Addressing Protocol)技術: 它是一種站內自動隧道協(xié)議。利用ISATAP服務器分配ISATAP前綴。域內主機利用ISATAP接口獲得該前綴,組成ISATAP地址前綴: 5EFE:IPv4 addr/64。
◆Teredo技術: Teredo 是一項地址分配和自動的IPv4/IPv6隧道機制,能夠跨越IPv4 Internet 實現(xiàn) IPv6 單播連接。它將IPv6數(shù)據(jù)包封裝在UDP/IPv4數(shù)據(jù)包中傳送。使用特殊的地址格式,除了固定的Teredo前綴外,還將Teredo服務器IPv4地址、客戶端的公共IPv4地址以及UDP端口插入IPv6協(xié)議網(wǎng)絡的地址中。