S5700用户业务VLAN不通导致用户dot1x认证失败

发布时间:  2015-06-13 浏览次数:  1136 下载次数:  0
问题描述

如图所示,Switch_1和Switch_2为S5700交换机,配置802.1x认证与城市热点认证服务器联动,有用户反馈在接入交换机Switch_1下使用Dr.COM认证客户端进行802.1x认证成功,但在接入交换机Switch_2下使用Dr.COM认证客户端进行802.1x认证失败,提示:获取用户属性超时!请检查防火墙配置允许UDP61440端口!

组网拓扑略图:


Switch_2的主要配置如下:

vlan batch 888 2172 

domain huawei 

dot1x enable 
dot1x authentication-method eap 

undo nap slave enable 

radius-server template rd1 
radius-server authentication 172.16.192.111 1812 weight 80 
radius-server accounting 172.16.192.111 1813 weight 80 
radius-server retransmit 2 
undo radius-server user-name domain-included 

vlan 888 
description manage 
#                                         
...... 
domain huawei 
  authentication-scheme auth 
  accounting-scheme abc 
  radius-server rd1 

interface Vlanif888 
ip address 172.18.7.23 255.255.255.0 

interface GigabitEthernet0/0/1 //交换机上行端口
port link-type trunk 
port trunk allow-pass vlan 2 to 4094 

...... 

interface GigabitEthernet0/0/48 //Dr.COM认证客户端接入端口
port link-type access 
port default vlan 2172                   
dot1x enable
#


 

处理过程

步骤 1 检查Dr.COM认证客户端是否异常

将认证失败的Dr.COM认证客户端接入交换机Switch_1,使用Dr.COM认证客户端接入认证成功,排除Dr.COM认证客户端导致802.1x认证失败。

 

步骤 2 检查Switch_2上的配置是否正确

与Switch_1的配置相比较,Switch_2上除管理VLAN不一致,其余配置均相同,而且版本及补丁均一致,排除Switch_2的配置、版本导致802.1x认证失败。

 

步骤 3 获取Dr.COM认证客户端与Switch_1和Switch_2的交互报文进行分析

在Dr.COM认证客户端上配置固定IP地址,然后在Switch_1和Switch_2上获取报文分析

  • 与Switch_1认证成功交互报文:



  • 与Switch_2认证失败交互报文:



对比两个认证报文分析:
1、Dr.COM认证客户端与Switch_1和Switch_2进行802.1x EAP认证均交互成功。
2、Switch_2接入Dr.COM认证客户端因一直未学习到网关ARP,未向服务器发送UDP 61440的用户属性控制报文,获取服务器认证授权。
3、待Dr.COM认证客户端认证超时后,Dr.COM认证客户端向设备发送了EAPOL-Logoff离线的报文,设备端把端口状态从授权状态改变成未授权状态,并向Dr.COM认证客户端发送EAP-Failure报文,所以Dr.COM认证客户端显示认证失败,并提示相关报错信息:获取用户属性超时!请检查防火墙配置允许UDP61440端口!

 

步骤 4 检查Switch_2下Dr.COM认证客户端为什么无法学习到网关ARP

Dr.COM认证客户端无法学习到网关ARP,可能原因如下:

1、ARP报文因网络故障、CPCAR不合理等学习异常。

2、用户业务VLAN与汇聚交换机二层不通。

在Dr.COM认证客户端的网关设备使用display mac-address命令无法查询到Dr.COM认证客户端接入MAC地址。

<Quidway>display mac-address 0021-ccc0-761f
-------------------------------------------------------------------------------
MAC Address    VLAN/VSI                          Learned-From        Type
-------------------------------------------------------------------------------

-------------------------------------------------------------------------------
Total items displayed = 0

从显示信息可以确认网关是没有学习到Dr.COM认证客户端接入MAC地址,导致用户业务VLAN与汇聚交换机二层不通。 

然后,核实了解到实际网络中接入交换机与汇聚交换机级联了多台交换机。所以通过查询用户终端MAC信息方式逐层排查交换机客户端PC MAC学习情况,在其中一台级联交换机上可正常学习到客户端PC MAC地址。排查此级联交换机与上层交换机互连端口配置,发现该上层交换机未透传用户业务VLAN 2172,配置透传相关业务VLAN后问题解决。

根因
用户业务VLAN接入交换机至汇聚交换机二层不通导致用户认证客户端802.1x认证失败。
解决方案

将接入交换机与汇聚交换机互连链路接口均配置透传相关业务VLAN。

建议与总结

从正常认证报文可以看出用户认证业务完整的交互过程。客户端PC在EAP认证交互完成后,客户端PC会主动向服务器发送UDP 61440的用户属性控制报文(三层数据转发需要由主机网关设备转发数据),待服务器正确响应授权后客户端PC才会显示认证成功。但存在问题的交换机,在客户端PC与交换机EAP交互完成后一直没有学习到网关ARP信息,无法向服务器发送UDP 61440的用户属性控制报文,导致Dr.COM认证客户端认证超时后主动发送了EAPOL-Logoff离线报文。

因此,对于802.1x认证不成功问题可先在客户端PC和服务器端同时抓包来分析认证报文流程,确认是否是设备侧原因导致,还是客户端、服务器或其它原因导致。如过确认为设备侧原因导致,可在设备侧打开EAPOL、AAA、RADIUS等各个模块的调试开关,跟踪认证流程,看在哪个模块处理出错。

用户视图下执行以下命令:
 terminal monitor
 terminal debugging
 EAPOL:debugging dot1x all、debugging dot1x packet
 RADIUS::debugging radius packet
 AAA:debugging  aaa all

END