非802.11r的Fast Roaming
阿新 • • 發佈:2019-02-14
Fast Roaming就是為了提高roaming的效率。在802.11r前,通常是指在RSN(WPA2)的框架下,略過EAP/802.1X,使用PMKSA Cache中的PMK直接進行連線。
所以,在WPA或是WEP的情況下,無法進行Fast Roaming。
在802.11r釋出之前,Fast Roaming大致分為3種情況:
- 普通的PMKSA Cache
- Preauthentication
- OKC(Opportunistic Key Caching)
當使用WPA時能否進行預認證(preauthentication)?按照802.11-2007標準,預認證能力是利用RSN IE來通告的。這意味著Wi-Fi聯盟之前的WPA由於使用WPA IE而不是RSN IE而不能進行預認證。
當Fast Roaming發生時,STA會把新的PMKID送給AP2,AP2在自己的Cache裡找到這個PMKID後就可以略過802.1X了。 WPA2和WPA區別是什麼呢?它們對於快速漫遊和安全特性有什麼影響呢? 首先,要知道一個BSS只要不支援WEP而支援TKIP或CCMP,那麼就被認為是一個RSN。 但使用哪一種encryption cipher(s)也決定了BSS中的幀格式。具體來講,如果網路支援WPA2 (AES-CCMP與可選的TKIP)安全,那麼在許多管理幀中將包含RSN IE。但如果BSS僅支援WPA安全(TKIP),那麼RSN IE將被WPA IE替換。WPA IE與RSN IE的功能類似,但RSN IE中的一些欄位發生了變化或被忽略。
仔細分析下WPA IE中遺漏的一些欄位。首先WPA IE中不存在preauthentication欄位,這也就意味著不能支援預認證功能。而且,WPA IE中不存在PMKID Count和PMKID List欄位,而現在快速安全漫遊中的許多特性(諸如PMK caching和Opportunistic Key Caching (OKC))都要使用這些欄位,這兩個欄位缺失也意味著不能支援這些特性,這對於移動環境中使用WPA-Enterprise的人是一個考驗。
下面看看WPA IE和RSN IE的差異。
圖 2-1 Beacon幀中攜帶的WPA IE
圖 2-2 關聯請求幀中攜帶的WPA IE
圖 2-3 Probe應答幀中攜帶的RSN IE
圖 2-4 關聯請求幀中攜帶的RSN IE
圖 2-1是Beacon幀(使用PSK安全)中攜帶的WPA IE, 可以與圖 2-3給出的Probe應答幀(使用802.1X/EAP安全)中攜帶的RSN IE對比。然後比較圖 2-2和圖 2-4,分別是關聯請求幀中攜帶的WPA IE和關聯請求幀中攜帶的RSN IE。這裡的截圖使用了現實世界中常用的PSK和802.1X/EAP來展示兩者的差異。注意:OUI從00:0F:AC變為00:50:F2(IEEE對Wi-Fi聯盟),但是cipher type與authentication type的編碼相同。在WPA IE中沒有preauthentication bit,而且在(重)關聯幀1如果對老客戶需要支援TKIP,但又要支援CCMP,那麼可以配置為WPA2就可以同時支援這兩種ciphers,這將使網路中使用的是RSN IE。當然,你會發現一些使用TKIP的裝置無論如何不支援快速安全漫遊,但是客戶真的希望具備該特性。 中沒有PMKID count和PMKID list欄位。注意這裡的RSN IE截圖中只有PMKID Count欄位而沒有PMKID List欄位,這是由於PMKID Count取值為0,否則將會有PMKID list欄位。
如果對老客戶需要支援TKIP,但又要支援CCMP,那麼可以配置為WPA2就可以同時支援這兩種ciphers,這將使網路中使用的是RSN IE。當然,你會發現一些使用TKIP的裝置無論如何不支援快速安全漫遊,但是客戶真的希望具備該特性。
現今企業中對漫遊的支援非常差,這對於商家,尤其是client和supplicant的商家應當是一塊大蛋糕,但沒有商家來替使用者考慮。使用802.1X/EAP 的使用者要想實現漫遊,現實世界除了幾個專用的解決方案(Cisco的Cisco Centralized Key Management—CCKM或Meru的Virtual Port/Cell),其他商家對此並沒有下大力氣來解決,而是將問題留給了使用者:要安全還是要效能。希望Wi-Fi聯盟能夠將它列為WPA2-Enterprise認證中的一項需求。
OKC(Opportunistic Key Caching)