終端從AP1漫游到AP2后業務不通,業務中斷幾秒~5分鐘,隨后可自動恢復。
1,該問題在某區域中的AP間漫游可以穩定復現,定位漫游問題,建議選取相鄰的2個AP,創建1個測試ssid,其它配置保持與有問題的SSID一致,將測試ssid只綁定到測試的2個AP上,這樣做的目的是能讓終端固定從AP1漫游到AP2,方便我們提前在AP1和AP2上打開相關debug命令。
2,在AP1和AP2上開啟station-trace,當終端漫游到AP2后,終端一直在發送DHCP request及ARP request(請求網關地址),但是一直未收到DHCP server及網關的響應報文。
3,在接入交換機上抓包,將上行口及連接AP2的下行像到觀察口,當問題復現后,通過抓包可以看到,DHCP server及網關的響應報文已經到接入交換機,但是接入交換機未將報文轉發到G0/0/2口;
4,通過上述步驟3,可以確定問題出在接入交換機上,我們將G0/0/1也加入到鏡像口,重新復現問題,當問題發生后,可以抓到2份DHCP server及網關的響應報文,說明接入交換機將報文轉發到了G0/0/1口;
5,由于問題現象可以持續幾十秒到幾分鐘,我們懷疑接入交換機上是否未將終端的MAC正確刷新到G0/0/2口,比如MAC表項達到規格上限,未能正確刷新,通過display mac-address summary查看,發現MAC未達到規格上限,同時當問題發生時,通過查詢display mac-address | in xxx,發現MAC也是正常學習到G0/0/2口的。
6,在交換機上做流統,發現響應報文是從slot1進入到交換機,此時,我們懷疑slot1上的MAC表項不對,display mac-address dynamic slot 1 | in xxx,使用該命令查詢到終端的MAC地址確實是在G0/0/1口,說明slot 0未將MAC表信息同步到slot 1;
7,查詢交換機的日志,發現有大量MAC漂移的記錄,我們交換機上存在機制,當MAC漂移大量發生時,板間的MAC表項實時同步將會停止,只會進行定時同步(5min),因此當終端的MAC表項同步到slot 1后,業務能恢復。
根因
網絡中存在環路,導致堆疊交換機上的MAC實時同步被關閉。
解決方案
排除網絡環路
建議與總結
排查WLAN漫游問題,建議首先在容易復現的區域選取2個相鄰的AP作為測試AP,然后創建測試ssid,這樣能控制終端固定從AP1漫游到AP2,便于我們縮小范圍及在設備上debug。