■ 河南 劉景云
對于無線網絡來說,AP的作用是非常重要的,客戶通過AP接入網絡,AP和WLC無線控制器之間會建立CAPWAP隧道,并通過該隧道和WLC建立關聯。在實際的管理中經常會遇到AP無法關聯到WLC的問題。實際上,有很多因素都會導致該問題,給無線網絡的運行帶來困擾這里就由淺入深的分析具體的應對策略。
在本實驗環境中,存在名為SW1和SW2兩臺思科交換機,前者的G1/0/1和后者的Fa 0/1通過Trunk連接。無線控制器WLC的Port1和SW2的G0/1通過Trunk連接。一臺思科AP設備連接到SW1上的G1/0/2接口上,客戶機PC1通過無線網卡連接該AP,管理主機PC1連接到SW2的Fa0/24口。SW2帶有路由功能,充當核心交換機的作用,所有的VLAN都配置在該設備上。在SW2上創建VLAN 10和VLAN 20,其地址范圍分別為172.16.1.0/24和172.16.2.0/24。
其 中,WLC的Manager Interface的IP為172.16.1.100,Guanli-PC的IP為172.16.1.11,其都從屬于VLAN 10。AP連接的G1/0/2的從屬于VLAN 20,VLAN10主要用于管理所需。AP被劃分到VLAN 20,AP可以通過DHCP獲取所需的IP,AP通過CAPWAP隧道注冊到WLC。AP是跨網段進行注冊的,需要為其指定WLC的位置。VLAN 10和VLAN 20的SVI接口均位于SW2上。在SW2上執行“config t”命令,進入全局配置模式。執行“ip routing”命令,開啟路由功能,讓不同的VLAN可以互訪。
在AP關聯WLC時,可能會因為各種問題,導致無法順利連接到WLC。例如AP無法獲取地址的話,自然無法連接到AP,在WLC上甚至都無法看到相關的報錯信息。如果在AP和WLC之間存在一些中間設備(例如防火墻等),其對AP連接的UDP 5246/5247等端口沒有放行,也造成AP無法關聯。

圖1 設置合適的國家代碼
因為UDP 5246是CAPWAP的控制層面端口,UDP 5247是數據層面端口,當AP沒有正常獲取WLC地址,WLC的License存在問題,AP和WLC的時間存在差異,WLC利用MAC授權機制對AP進行了過濾,AP的證書和WLC的Auth-list控制策略存在沖突,WLC的國家代碼有誤,WLC的版本不符合AP的要求,不同廠商之間的產品不兼容等問題,都會造成AP無法順利關聯到WLC。
在AP中必須設置合適的Country Code,才可以使其射頻廣播頻率,接口,頻段以及發射功能符合特定國家的規定,國家代碼不匹配,AP就無法進行關聯。例如使用的其他國家的WLC,在AP上設置的卻是CN代碼等。例如在AP上標識“AIR-CAP3702IH-K9”等字樣,說明其國家代碼應為CN。
如果國家代碼有誤,在WLC工具欄上點擊“MANAGEMENT”項,在左側選擇“Logs→Message logs”項,在右側會顯示“The system detects an Invalid regolatory domain”“The system detects an Invalid country code”之類信息。在WLC管理界面中無法直接修改國家代碼,必須在工具欄上點擊“WIRELESS”,在左側選擇“802.11a/n/ac→Network”項,在右側的“802.11a Network Status”欄中取消“Enabled”的選擇。
在左側選擇“802.11b/g/n→Network”項,在右側的“802.11b/g Network Status”欄中取消“Enabled”項的選擇狀態。來關閉5Gha和2.4GHz射頻功能。之后在左側選擇“Country”項,在右側列表中選擇合適的國家代碼(如圖1所示)。之后打開5Gha和2.4GHz射頻功能。
這里為了便于說明,可以使用一臺Windows Server 2008 Server作為DNS和DHCP服務器,其IP為172.16.1.20。在SW1上執行命令:
config t
inter vlan 20
ip helper-address 172.16.1.20”
end
將IP請求信息發送到該服務器上,在該服務器上打開DHCP控制臺,在其中創建一個作用域,范圍從172.16.2.100到20.10.1.200,為AP分配IP。
在其作用域選項中創建 了003路由器(IP為172.16.2.254),043供應商特定信息(為WLC地址,其格式比較特殊,默認必須以“f1”開頭,例如“f104xxx”,表示IP地址為4個字節,“xxx”為WLC的十六進制地 址。),015 DNS域 名(例如“xxx.com”),006 DNS服務 器(IP為172.16.1.20),在DNS控制臺選擇“正向查找區域→xxx.com”項,在其右鍵菜單上點擊“新建主機”項,輸入合適的名稱(例如“capwap-lookup”),對應的IP為172.16.1.100,點擊“確定”按鈕,創建該記錄。
這樣,使用該DNS記錄,就可以定位WLC。這樣,當AP啟動時,就會通過直連廣播,DHCP服務以及DNS服務來定位WLC,只要其中任何一種成功,都可以讓AP找到WLC。如果AP和WLC之間既不是直連,又沒有沒有配置DHCP Option 43選項和DNS紀錄(或者配置有誤,例如寫錯了WLC的地址等),那么AP是無法關聯到WLC的,其只會不斷的重啟來嘗試關聯。
如果WLC沒有得到授權,那么在AP啟動時,雖然會通過DHCP Option 43選項定位到了WLC,但是其會提示“Could not discover WLC,Ether IP address is not assigned or assigned ip is wrong”的錯誤信息,提示無法發現WLC,該WLC的地址可能存在問題。
在WLC管理界面工具欄上選擇“MONITOR”項,在左側選擇“Statistics→AP Join”項,會顯示對應AP的狀態為“Not joined”。點擊該AP項,在其屬性窗口中 的“Reason For Last Unsuccessful Attempt”欄中會顯示“Maxinum number of AP supported has already Joined”字樣,提示支持的AP最大數量已經達到。
點擊工具欄上的“MANAGEMENT”項,在左側選擇“Software Activation→Licenses”項,在右側點擊“base-ap-count”項,在打開窗口中的“Priority”列表中選擇“High”項,點擊“Set Priority”按鈕,在授權說明欄中點擊“I Accept”按鈕,接受該授權。點擊窗口右上角的“Apply”按鈕,激活該配置信息。在“MONITOR”面板中會顯示“xxx Access Points Supported”信息,說明該WLC可以支持的AP的數量,“xxx”為具體的數值。這樣,AP就可以順利關聯到WLC了。
對AP證書來說,在2005年1月之后使用的都是MIC(Manufactured-Installed Certificate,廠商原裝證書)證書,不同廠商的證書是不同的,WLC和AP之間使用證書進行簽名和認證,這就會造成彼此之間不能關聯,例如思科的AP無法關聯到華為的WLC等。在AP上執行“show crypto pki certificates”命令,會顯示證書信息。在其中的“Associated trustpoints:”欄中顯示諸如“Cisco_IOS_M2_MIC_cert”之類信息的證書,是內建的有效的廠商原裝證書。
當AP關 聯WLC時,WLC會收到AP發來的證書信息,如果WLC發現自己的時間在AP證書的有效期之外,就會認為AP證書無效,導致DTS隧道無法建立,AP就無法連接到WLC。如果WLC的時間信息配置錯誤,AP會顯示“Certificate unknows alert from 172.16.100”的提示信息。

圖2 AP策略設置窗口
在WLC工具欄上點擊“MANAGEMENT”項,在左側選擇“Logs→Message logs”項,在右側顯示“openssl_dtls Failed to complete DTLS handsshake with peer xxx”的信息,說明和對方的DTLS握手無法完成,“xxx”表示AP的IP。解決的方法是先在AP端查看證書信息。了解MIC證書的有效時間,之后在WLC工具欄上點擊“COMMANDS→Set Time”項,在右側數值正確的日期,時間和時區。這樣,WLC就會判定AP的證書有效并接受其關聯。
在WLC工具欄上點擊“SECURITY”項,在左側選擇“AAA→AP Poliies”項,在右側看到“AcceptManufactured Installed Certificates(MIC)”項處于選擇狀態(如圖2),表示默認只允許MIC證書進行認證。如果取消該項選擇,那么AP是無法連接的,而且在WLC端是無法顯示相應的錯誤信息,AP會顯示“Received WARNING:Close notify from 172.16.1.100”之類的提示信息。
如果存在多臺WLC,可以在工具欄上點擊“WIRELESS”項,在列表中選擇某個AP,在其屬性窗口中的“High Avaliability”面板中的“Primary Controller”“Secondary Controller”等欄中輸入優先的WLC地址,及第二第三WLC地址,這些信息會保存到該AP中,當AP進行關聯時,可逐個進行測試,直到關聯上為止。