文/李子木 傅怡琦 潘麗 孟斌
無線局域網部署純IPv6的兩種模式
文/李子木 傅怡琦 潘麗 孟斌
在校園無線網絡中部署純IPv6有兩種模式:只能訪問IPv6網絡的native-stack模式和能夠同時訪問IPv4/IPv6網絡的IVI模式。通過實踐證明,這兩種部署模式運行效果良好,為IPv6推廣和校園網用戶接入下一代互聯網積累了經驗。
隨著筆記本電腦和智能移動終端的普及,無線局域網(WLAN,Wireless Local Area Network)已經逐漸成為重要的互聯網接入手段。與此同時,隨著IPv4地址枯竭,IPv6正在逐漸進入實用階段。
由于IPv6和WLAN都是近幾年快速發展的新技術,因此,目前很多WLAN設備都不能夠直接全面地支持IPv6,那么如何在WLAN現有條件下部署IPv6,滿足廣大IPv6用戶方便接入下一代互聯網的迫切需求,已經成為網絡管理者必須面對的工程研究課題。
本文以清華大學無線校園網為基礎,描述了在其上部署純IPv6技術的兩種模式:只能夠訪問IPv6網絡的native-stack技術和能夠同時訪問IPv4/IPv6網絡的IVI技術,通過描述這兩種模式的工程實現原理和參數細節,為探索IPv6在各種場景下的部署應用積累了經驗。
在工程實踐中,我們采用了兩種純IPv6部署模式:
native-stack模式
該模式基于純IPv6協議棧,客戶端采用類似于IPv4網絡中的DHCP方式,通過DHCPv6服務器自動獲取IPv6地址和基于IPv6的DNS服務器地址,在不需要用戶手工配置的情況下即可實現真正意義上的純IPv6接入。該模式的特點是:即插即用,且與IPv4網絡完全獨立。這意味著該模式既可以獨立工作,為用戶提供純IPv6接入服務,也可以與IPv4網絡共同組成雙棧網絡,為用戶同時提供IPv4和IPv6接入服務。由于該模式可以對客戶端IPv6地址和DNS地址進行集中管理和統一下發,因此是一種很有前景的部署方式。
IVI模式
該模式基于IETF最新批準通過的RFC6219,使用無狀態翻譯技術,使得純IPv6客戶端不僅能夠訪問IPv6網絡,同時還能夠訪問IPv4網絡。目前已知有很多過渡技術,如ISATAP、TEREDO、6to4等。但是在IPv4地址已經枯竭的今天,新入網終端已經沒有IPv4地址可用,只能使用IPv6地址,IVI技術很好地解決了純IPv6客戶端無法訪問IPv4資源這一難題。本文將對該技術在清華大學WLAN中的部署方式進行詳細描述。
無線控制器
出于管理上的考慮,目前WLAN已經由原來的FAT-AP架構向FIT-AP架構轉變,通過無線控制器(Wireless LAN Controller,WLC)對所有AP進行集中管理和數據轉發,WLC已經成為WLAN的核心設備。在這種架構下,為了對IPv6流量進行轉發,首先需要了解WLC的相關實現原理。
WLC是一個具有IP層管理功能的二層設備,一般通過與三層交換機直接互聯的方式接入網絡,如圖1所示。WLC一般通過端口捆綁(port-channel)技術與三層交換機互聯,每個WLC中劃分出多個VLAN,每個VLAN接口(interface)地址為該VLAN的DHCP Proxy地址,VLAN網關(gateway)則位于三層交換機。
在WLC中,與IP地址相關的參數一般有以下三個:
管理地址:用于對WLC的遠程管理,以及漫游組通信;
接口地址:用于VLAN標識,并作為DHCP Proxy與DHCP Server進行交互;
網關地址:VLAN網關位于三層交換機,但是需要在WLC中對網關地址進行設置,以便用戶流量能夠被WLC正確地轉發到對應的VLAN網關。

圖1 WLAN控制器典型連接
由于很多廠商的WLC未實現獨立完整的IPv6功能,因此為了使WLAN支持純IPv6接入,WLC需要通過“IPv6透傳”技術實現無線客戶端和三層交換機的互通。而IPv6是工作于組播機制的,這要求WLC既要能夠阻止IPv4組播報文向交換機側轉發,又要能夠讓IPv6組播報文正常通過。因此,位于數據鏈路層的WLC需要能夠識別出哪些MAC層組播對應的是IPv4報文,哪些對應的是IPv6報文,以便有針對性地實現報文阻斷或轉發。圖2和圖3分別是IPv4和IPv6組播報文在MAC層的地址映射關系圖。
從圖2和圖3可以看到,若要判斷組播報文性質,需要針對MAC層報文前綴進行識別,而傳統二層設備是不能識別MAC層IPv6組播報文的。在這種情況下,二層設備要么丟棄這些不能識別的報文,要么通過“泛洪(Flooding)”方式向其他所有端口轉發。這兩種處理方式要么會造成IPv6組播機制無法正常工作,要么會導致WLC處理能力過載。因此,作為“IPv6透傳”設備的WLC,必須能夠識別IPv6二層組播報文并對其進行專門處理,以便IPv6組播報文既不被WLC丟棄,也不會在WLC的所有接口上“泛洪”。
目前大部分WLC雖然尚未完整支持IPv6特性,但是對于IPv6組播報文卻是可以識別和處理的。在此基礎上,通過在WLC和三層交換機上同時配置相關參數,可以實現WLAN對純IPv6用戶的接入。
Native-stack部署方式
IPv4地址已經枯竭,純IPv6是下一代互聯網的主要應用模式。為了在WLAN中實現純IPv6接入,需要同時在WLC中和三層交換機上配置相應參數,配合DHCPv6服務器(以ISC DHCP4.1.1-P1為例)進行地址分配,三方共同實現nativestack方式下的客戶端零配置純IPv6接入,如表1所示。

圖2 IPv4組播報文的MAC層地址映射關系

圖3 IPv6組播報文的MAC層地址映射關系

表1 native-stack模式參數
從表1中可以看出,控制器不需要配置DHCP參數,這是因為所有DCHPv6報文都被“透傳”到了三層交換機,由交換機作為DHCP Relay交給DHCPv6服務器進行處理。
在FIT-AP架構中,AP和WLC之間是通過CAPWAP隧道進行通信的。由于AP和WLC目前還不支持直接通過IPv6隧道通信。因此,WLC中仍然需要配置IPv4地址和網關地址。
在表1所示的三層交換機參數中,除了需要配置支持CAPWAP通信的IPv4接口地址和網關地址,以及DHCPv6服務器地址外,還特別使用了3條特殊命令(下劃線標識)強制無線客戶端按照DHCPv6有狀態(Stateful Address Autoconfiguration)方式獲取IPv6地址、DNS等參數。這是因為,在RA報文中有三個特殊標志位用于控制客戶端獲取地址的行為,這三個標志位分別是 “無狀態/有狀態配置位(A位)、地址管理信息配置位(M位)、其他信息配置位(O位)”。這三個標志位的組合決定了客戶端獲取地址的工作方式。
默認情況下,A位和M位都為1,表示客戶端需要工作在SLAAC模式,此時,客戶端會根據三層交換機廣播的地址前綴和自身網卡MAC地址,按照RFC4291標準自行計算出客戶端的IPv6地址。
若A位被“no-autoconfig”命令置為0,則表示客戶端需要使用有狀態方式獲取地址,此時需要根據M位和O位確定客戶端的具體操作。表2給出了A位=0的情況下,M位和O位對客戶端操作的影響。在本節所述的純IPv6接入模式中,客戶端即是工作在A位=0,M位=1和O位=1的組合模式下。

表2 RA標志位對有地址配置的影響(A位=0)

圖4 native-stack模式下客戶端地址獲取情況
圖4顯示了Windows7客戶端通過有狀態方式獲取IPv6地址參數的情況,其中,DHCPv6服務器給客戶端分配了2402開頭的IPv6地址,DNS服務器地址為2001:da8:200:100::28,網關地址為FE80開頭的本地鏈路地址。以169.254開頭的IPv4地址表示這是一個純IPv6客戶端。
IVI部署方式
IVI是一套可路由的、無狀態的、可實現IPv4/IPv6互訪的地址映射機制,該互訪機制通過IVI翻譯器(由于該翻譯器具有路由功能,因此也稱為“IVI路由器”)進行實現。IVI路由器主要實現兩個功能:一個是地址映射,即通過統一的規則實現IPv4地址與IPv6地址的一一映射,以進行地址的翻譯;另一個是協議翻譯,即根據標準規定,實現IPv4/ICMPv4協議和IPv6/ICMPv6協議各字段的對譯,同時更新TCP/UDP協議的相關字段,完成完整的數據包翻譯操作。通過IVI路由器的地址映射和協議翻譯過程,IPv4節點和IPv6節點即可不需要任何自身的改動而實現端到端互訪。

圖5 IVI基本工作原理

圖6 IVI地址映射機制示意

圖7 IVI在WLAN中的部署拓撲示意

圖8 IVI DNS工作原理
圖5展示了IVI工作的基本原理。IVI翻譯器位于IPv4網絡和IPv6網絡之間,利用IVI地址映射規則(圖6所示),將一部分IPv4地址(命名為IVI4)分配給IPv6主機使用(命名為IVI6)?;ヂ摼W上的IPv4主機可以通過IVI4地址和這些擁有IVI6地址的IPv6主機通信。這種方式支持IVI6主機向IPv4/IPv6發起的通信,也支持IPv4/IPv6向IVI6主機發起的通信。
IVI地址是一套由IPv4地址映射而來的純IPv6地址,這套地址既可以訪問IPv6網絡,也可以通過IVI翻譯器訪問IPv4網絡。圖6給出了IVI的地址映射機制,其中0-31位為ISP的/32地址前綴(例如APNIC分配給CERNET的地址前綴為2001:da8::/32),32-39位為FF,表示這是一個IVI地址(因此,CERNET的IVI地址塊為2001:da8:ff00::/40)。40-71位為嵌入的全球可路由IPv4地址(稱為IVI4地址),72-127全部用0填充,這樣得到的地址為一個IVI6地址。該地址與嵌入其中的IPv4地址(IVI4地址)可以在IVI翻譯器上進行快速的無狀態地址轉換。
為了在WLAN中實現IVI過渡系統,需要使用一段未分配的IPv4地址作為IVI4地址。在圖7中,分配給WLAN的IVI4地址塊為58.200.129.0/24,與其對應的IVI6地址塊為2001:da8:ff3a:c881::/64。同時,需要在IVI路由器上進行路由配置,以實現IPv4/IPv6互訪時數據包能夠通過IVI路由器進行地址翻譯和協議翻譯:
IVI路由器為一臺雙棧路由器,它向IPv4校園網廣播一條靜態路由:目標地址為58.200.129.0/24的IPv4數據包的下一跳為IPv6校園網邊界設備R6;
同時,IVI路由器向IPv6校園網廣播一條靜態路由:目標地址前綴為2001:da8:ff00::/40的IPv6數據包的下一跳為IPv4校園網邊界設備R4。

表3 IVI模式參數
為了最大限度地方便IPv4/IPv6主機互訪,需要在IPv4校園網和IPv6校園網之間部署IVI DNS服務器,進行IPv4 DNS記錄(A記錄)和IPv6 DNS記錄(AAAA記錄)的翻譯工作。圖8顯示了IVI DNS服務器的工作原理。當IVI客戶端(具有IVI6地址的純IPv6客戶端)發起IPv4訪問時,IVI DNS服務器會將用戶的AAAA請求轉換為A請求發給上級DNS服務器,在得到上級服務器返回的A記錄響應后,再將其轉換為AAAA響應發給IVI客戶端(為了提高相應效率,IVI DNS服務器同樣會進行本地緩存的優化工作)。

圖9 IVI模式下客戶端地址獲取情況

圖10 IVI DNS翻譯情況
由于只有IVI6地址可以在IPv4和IPv6間實現互訪,因此需要使用有狀態自動配置方式從DHCPv6 服務器為無線客戶端分配IVI6地址和IVI DNS服務器地址。表3給出了實現IVI地址分配所需的控制器、三層交換機和DHCPv6 服務器配置參數。
圖9顯示了無線客戶端獲取IVI6地址的情況,可以看到,DHCPv6服務器給客戶端分配了一個IVI6地址(2001:da8:ff3a:c881:600::)和IVI DNS地址(2001:250:aaa0:100:1::2)。這樣,客戶端可直接通過IVI6地址訪問IPv6網絡;如果客戶端訪問IPv4網絡,則數據包會通過路由方式到達IVI路由器,此時IVI路由器將該數據包源地址翻譯為對應的IPv4地址(58.200.129.6),并將其繼續轉發到IPv4網絡。當數據包從IPv4網絡返回時,同樣會通過路由方式到達IVI路由器,此時IVI路由器會再將其中的IPv4地址翻譯為對應的IVI6地址,從而實現IPv4和IPv6網絡的互通。
圖10顯示了IVI6客戶端訪問IPv4網站時IVI DNS的翻譯情況??梢钥吹絀VI DNS按照地址轉換規則將news.sina.com.cn的IPv4地址(121.194.0.206)解析為一個對應的IVI6地址(2001:da8:ff79:c200:ce00::),從而實現IPv6客戶端對IPv4網站的訪問。
隨著IPv4地址的枯竭,IPv6正在逐漸進入初級商用階段。在WLAN領域,主流廠商目前的主要精力仍集中在如何提高無線接入速率,提高設備安全性和可管理性等方面,對IPv6的支持尚不是很完善。以上兩種純IPv6接入模式在清華大學校園無線網已經部署完成,實際運行效果穩定良好,達到了預期設計目標,為校園無線網絡全面順利過渡到IPv6積累了工程經驗。
(作者單位為清華大學信息網絡工程研究中心)
本刊訊 近日,“數字化環境下的課堂教學變革創新實驗項目”啟動會在滬順利召開。上海市基礎教育領域專家和領導,以及英特爾中國相關項目負責人出席了此次會議,大會同時邀請了來自上海市多個區縣的學校代表參會。該項目旨在探索如何通過創新技術,對優質教學資源進行匯集、開發、整合和應用,實現在移動終端上進行個性化教學的新途徑,使數字化教學從展示性應用向常規教學轉軌。作為此次活動的積極倡導者和支持方,英特爾(中國)有限公司將通過提供基于HTML5技術的交互式數字教材制作工具集等一系列創新技術和服務,為上海市數字化教學環境的構建提供支持。
為突破瓶頸應對挑戰,“數字化環境下的課堂教學變革創新實驗項目”從優質教學資源的匯集、開發、整合和創造性應用著手,一方面,開發和部署基于HTML5技術的交互式數字教材制作工具集,在項目學校開展個性化與交互式數字教材開發和應用實驗,豐富教學資源;另一方面,開發與上海中小學科教學進程同步的數字化學習導航社區,引進并實驗代表國際先進水平的英語、科學和數學學科網絡學習系統,實現數字化學習由示范性教學向常規教學拓展。