、    

 

华为S系列交换机有线接入认证异常【802.1X认证失败】快速定位

802.1X认证失败时,首先需确保AAA认证域、802.1X认证等基本配置正确,具体排查措施请参参阅:认证域及相关配置错误设备与RADIUS服务器的802.1X用户认证方式不一致,然后再通过下面方法快速定位认证失败原因。

查看display aaa online-fail-record all命令的回显字段User online fail reason。

查看trace object mac-address mac-address命令的Trace信息。

常见的802.1X认证失败原因

1、Radius authentication reject

RADIUS服务器认证拒绝

该原因为User online fail reason字段显示信息

2、Received a authentication reject packet from radius server(server ip = x.x.x.x).

收到RADIUS服务器的认证拒绝

该原因为Trace打印信息

1、2请参阅:RADIUS服务器认证拒绝

 

3、The radius server is up but has no reply

RADIUS服务器Up但无响应

该原因为User online fail reason字段显示信息

4、The radius server is not reachable

RADIUS服务器不可达

该原因为User online fail reason字段显示信息

请参阅:RADIUS服务器无响应

5、AAA receive AAA_RD_MSG_SERVERNOREPLY message(61) from RADIUS module(73).

AAA模块收到RAIDIUS服务器无响应的消息

该原因为Trace打印信息

3、4、5请参阅:RADIUS服务器无响应

 

6、User is still in quiet status

用户MAC处于静默状态

该原因为Trace打印信息

请参阅:终端MAC地址静默

 

7、Remote user is blocked

远端用户被锁定

该原因为User online fail reason字段显示信息

请参阅:802.1X认证账号锁定

 

8、IP address conflict

IP地址冲突

该原因为User online fail reason字段显示信息

请参阅:IP地址冲突

 

9、No response of request identity from user

未收到终端的Request Identity响应报文

该原因为Trace打印信息

请参阅:未收到终端的Request Identity响应报文

 

10、No response of request challenge from user

未收到终端的Request Challenge响应报文

该原因为Trace打印信息

请参阅:未收到终端的Request Challenge响应报文

华为S系列交换机有线接入认证异常【802.1X认证失败】终端接入端口或者VLAN发生切换

这种情况常见于用户在非直连认证交机场景下,在一个端口/VLAN接入认证成功,立刻断开连接到另外一个端口或者切到新的VLAN下,发现无法触发认证,经过一段时间后才可以认证成功接入。

出现这种情况的原因为此时用户在设备老端口/VLAN下的用户表项还没有老化,需要经过老化时间后(默认为5min),老的用户表项删除,此时才可以在新的端口/VLAN下发起认证。

解决办法:系统视图配置authentication mac-move enable命令使能mac迁移功能,同时建议配置authentication mac-move detect enable命令开启迁移前探测。

华为S系列交换机有线接入认证异常【802.1X认证失败】未收到终端的Request Challenge响应报文

在系统视图下执行命令trace object mac-address mac-address可以看到终端没有回应Request Challenge报文,超过重传次数后设备发送了Failure报文。

执行命令trace object mac-address

终端不响应Request Challenge报文的情况可能和终端操作系统中802.1X认证功能依赖的某些服务存在关系,例如:某些终端在802.1X认证成功之前不能获取到IP地址时,在统一模式下需要在系统视图下执行命令undo authentication pre-authen-access enable关闭预连接功能以限制终端获取IP地址的权限。

还有某些终端,尤其涉及到证书相关内容时,回应Request Challenge请求比较慢,有时长达1分多钟。而设备的超时重传等待时间默认只有15秒,超时后设备发送Failure报文,之后又收到终端的回应报文。此时就需要通过获取报文来计算终端大致的回应时间。例如,下图所示,第1327报文是设备发给终端的Request Challenge,第1425和1447报文是重传,重传结束后发送第1471个认证失败报文。直到第1518报文终端才回应了Response Challenge,中间间隔了28秒,所以需要调整设备超时重传等待时间大于28秒。

●传统模式下,需要在系统视图下执行命令dot1x timer client-timeout 30、dot1x retry 2。

●统一模式下,需要在802.1X接入模板视图下执行命令dot1x timer client-timeout 30、dot1x retry 2。

需要调整设备超时重传等待时间大于28秒

华为S系列交换机有线接入认证异常【802.1X认证失败】未收到终端的Request Identity响应报文

在系统视图下执行命令trace object mac-address mac-address可以看到设备发出Request Identity报文没有收到回应,超时后设备进行了重传。

执行命令trace object mac-address mac-address

可以执行以下步骤进行检查。

1、检查终端和认证交换机之间是否存在其它设备。

由于802.1X报文是组播协议报文,目的MAC地址是01-80-C2-00-00-03,交换机收到后默认不转发。如果终端和认证交换机之间还存在其它设备(二层交换机、路由器等),则需要中间设备能够透传802.1X报文。

●如果存在,请执行步骤2。

●如果不存在,请执行步骤4。

2、请检查中间设备是否支持透传802.1X报文。

●如果不支持,请将这些设备更换为支持透传802.1X报文的设备,或者更换接入认证方式。

●如果支持,请执行步骤3。

3、请检查中间设备是否已配置802.1X报文透传功能。

●如果已配置,请执行步骤4。

●如果未配置,请执行命令l2protocol-tunnel user-defined-protocol配置透传功能(以华为交换机为例)。

执行命令l2protocol-tunnel user-defined-protoco

3、检查终端是否有802.1X客户端。

●如果有,请执行步骤5。

●如果没有,请安装802.1X客户端。

4、检查终端是否已开启802.1X功能。

●如果已开启,请执行步骤6。

●如果未开启,请开启该功能,以Windows 7为例。

单击本地连接,选择“属性 > 身份验证 ”。选中“启用IEEE802.1X身份验证”。但是部分网卡属性中没有身份验证的选项卡,这是由于“控制面板 > 管理工具 > 服务”中没有开启Wired AutoConfig。

6、检查终端多次802.1X认证失败后是否进入静默状态。

●如果未进入静默状态,请执行步骤7。

●如果进入静默状态,请执行命令display aaa online-fail-record,根据User online fail reason字段检查其他上线失败原因来定位问题。用户可以通过禁用启用网卡或插拔网线快速恢复,或者调整终端的静默时间,以Windows 7系统为例,默认的静默时间是20分钟,可以通过CMD窗口执行命令netsh lan set blockperiod value调小静默时间,以加快认证接入网络速度。

C:\>netsh lan set blockperiod value=10

加入域的windows终端,也可以在域控服务器上通过组策略进行设置:

计算机设置->策略->Windows设置->安全设置->有线网络(802.3)设置,将”Max Authentication Failures”设为10(注:默认是1,即收到一次failure即静默)

组策略设置参考:https://social.technet.microsoft.com/Forums/en-US/bc0a05a4-c62d-41a2-9ea3-79b589829a7e/windows-10-8021x-wired-authentication-issue?forum=win10itpronetworking

华为S系列交换机有线接入认证异常【802.1X认证失败】IP地址冲突

执行命令display aaa online-fail-record all,查看User online fail reason字段,其取值为IP address conflict。出现IP地址冲突主要有以下三种情况:

一、网络中存在某些终端或者终端上安装了“飞秋”等局域网通信工具同时发送相同IP地址的ARP报文,导致设备不允许使用相同IP地址的终端上线。可以采用如下方法解决问题。

●通过获取报文确认冲突的IP地址,排查这些终端或工具,禁止发送相同IP地址的ARP报文。

●V200R013C00及之后的版本,可以在认证模板视图下执行命令undo authentication ip-conflict-check enable关闭IP地址冲突检测功能。

二、网络中存在某些异常终端,这些终端在关机或者休眠后网卡仍然会有流量,因此在支持流量探测的设备上流量探测成功,用户表一直保持在线,不会老化,但是实际DHCP服务器地址池中的该地址早已释放,后续其他终端获取到该地址在设备上认证时就会检测到IP地址冲突,可以采取如下方法解决

●V200R013C00及之后的版本,可以在认证模板视图下执行命令undo authentication ip-conflict-check enable关闭IP地址冲突检测功能。

三、是设备未开启802.1X认证的ARP探测功能。终端非直连交换机的情况下上线成功,然后关机或者断开网络后交换机无法感知,用户表一直存在,其中包含了终端通过DHCP获取到的IP地址信息。当此IP地址租期到后被DHCP服务器回收,然后分配给另一个终端,由于认证不允许两个相同IP地址的终端上线,所以该终端始终认证失败,原因为IP address conflict。可以采用如下方法解决问题。

●统一模式下,设备默认开启802.1X认证的ARP探测功能。可以执行命令display authentication-profile configuration根据Authentication handshake字段确认是否已开启。如果未开启,请在认证模板视图下执行命令authentication handshake。

●传统模式下,V200R013C00之前版本,设备默认关闭802.1X认证的ARP探测功能。可以执行命令display current-configuration | include dot1x timer arp-detect检查是否配置ARP探测功能。如果未配置,请在系统视图下执行命令dot1x timer arp-detect arp-detect-value。

华为S系列交换机有线接入认证异常【802.1X认证失败】802.1X认证账号锁定

1、执行命令display aaa online-fail-record all,查看User online fail reason字段,其取值为Remote user is blocked;可以执行以下步骤排查问题。

执行命令display remote-user authen-fail blocked,确认远端认证账号被锁定是否需要立即激活。

●如果需要,请在AAA视图下执行命令remote-user authen-fail unblock激活该用户。同时激活后需要使用正确的用户名密码登录,否则失败次数达到条件后仍会被锁定,请执行步骤2。

●如果不需要,请执行步骤2。

2、检查所有接入的终端是否采用同一个账号认证。

●如果未采用,请执行步骤3。

●如果采用,一旦网络中有多台终端使用同一个账号认证失败被加入静默,将会导致整个网络其它正常认证的用户也出现认证失败的情况,所以V200R019C00之前版本,需要在AAA视图下执行命令undo remote-aaa-user authen-fail关闭AAA远端认证失败后账号锁定功能;V200R019C00及之后版本,需要在AAA视图下执行命令undo access-user remote authen-fail关闭接入用户远端认证失败后账号锁定功能。

3、执行命令display aaa online-fail-record,根据User online fail reason字段检查其他上线失败原因来定位问题。

华为S系列交换机有线接入认证异常【802.1X认证失败】终端MAC地址静默

在系统视图下执行命令trace object mac-address mac-address可以看到提示User is still in quiet status,说明终端处于静默状态。

执行命令trace object mac-address mac-address
可以执行以下步骤进行排查。
1、执行命令display dot1x quiet-user all,查看用户MAC处于静默状态的剩余静默时间。
执行命令display dot1x quiet-user all
该终端用户在60s内连续802.1X认证失败达到一定次数,需等到用户MAC退出静默状态后再重新尝试。也可以在系统视图下执行命令dot1x timer quiet-period quiet-period-times调小802.1X用户被静默的时间。

2、执行命令display aaa online-fail-record,根据User online fail reason字段检查其他上线失败原因来定位问题。

华为S系列交换机有线接入认证异常【802.1X认证失败】RADIUS服务器无响应

有两种方式快速确认RADIUS服务器是否回应。

方法一:执行命令display aaa online-fail-record all,发现User online fail reason字段显示为The radius server is up but has no reply或者The radius server is not reachable。

执行命令display aaa online-fail-record all

方法二:在系统视图下执行命令trace object mac-address mac-address可以看到服务器没有回应。

执行命令trace object mac-address mac-address

出现服务器无响应的情况首先确认服务器是否添加了设备IP。如果没有添加,请添加正确的设备IP。如果已经添加,那么需要确定服务器添加的设备IP与认证请求的源IP是否一致(设备默认出接口的IP地址作为向RADIUS服务器发送RADIUS报文时使用的源IP地址)。

用户可以执行命令display radius-server configuration template查看RADIUS服务器模板下是否配置了source-ip。

执行命令display radius-server configuration template

如果已配置,则服务器上添加的设备IP必须要是这个source-ip。

如果未配置,则可以执行命令display ip routing-table查路由确认认证请求报文的源IP是否是服务器添加的设备IP。例如RADIUS服务器IP是192.168.1.1,通过查询路由的命令可以看到NextHop是192.168.1.101,这个地址即作为认证请求报文的源IP。

执行命令display ip routing-table查路由确认认证请求报文的源IP是否是服务器添加的设备IP

如果服务器上添加设备IP没有问题,就需要在设备和服务器上同时获取报文确认中间链路是否存在问题,例如中间网络存在防火墙,防火墙未放通RADIUS(默认认证端口:1812)报文。

另外一种服务器无响应场景是服务器和设备配置的shared-key不一致,可以通过test-aaa命令测试。Debug信息如下所示,出现这种情况需要确保设备和服务器上的shared-key一致。

出现这种情况需要确保设备和服务器上的shared-key一致

如果出现大量用户无法认证,日志里出现RADIUS服务器Down记录:

日志里出现RADIUS服务器Down记录

那么可能是服务器或中间网络出现异常,需要逐一排查;也可能是设备封装的报文较大,分片发送至服务器,服务器无法正确识别处理,不做回应采集trace信息,查看未回应报文长度是否大于1500,若大于,可调小接口MTU值。也可在设备侧抓包,查看是否有类似下图的radius报文:

查看是否有类似下图的radius报文

 

华为S系列交换机有线接入认证异常【802.1X认证失败】RADIUS服务器认证拒绝

有两种方式快速确认RADIUS服务器是否回应认证拒绝。

方法一:执行命令display aaa online-fail-record all,发现User online fail reason字段显示为Radius authentication reject。
执行命令display aaa online-fail-record all

方法二:在系统视图下执行命令trace object mac-address mac-address可以看到服务器回应了拒绝报文。
[执行命令trace object mac-address mac-address

服务器回应认证拒绝有多种原因,最常见的有用户名密码错误、RADIUS服务器授权策略无法匹配等,这些问题需要首先通过排查服务器日志找到根因后,再调整服务器、终端或设备配置解决。具体可参见Radius authentication reject。

此外,对于使用到证书的802.1X认证,终端或服务器需要检验证书的合法性,例如终端采用EAP-TLS、EAP-PEAP(可以取消验证服务器证书)。遇到这类问题需要在终端或者服务器获取报文分析。常见的证书错误包括CA证书未加入终端信任列表,证书过期等,例如报错Unknown CA。

常见的证书错误包括CA证书未加入终端信任列表,证书过期等,例如报错Unknown CA

注:R21C00及之前版本,802.1x认证配置radius-server user-name domain-included命令,radius报文用户名不携带域名。升级至R21C10及之后版本,配置此命令用户名会携带域名。若升级前业务交互正常,升级后可能会出现用户名携带域名导致的radius服务器拒绝。此时可以undo radius-server user-name domain-included恢复业务。

华为S系列交换机有线接入认证异常【802.1X认证失败】设备与RADIUS服务器的802.1X用户认证方式不一致

执行命令display authentication mode确认NAC配置模式:
unified-mode:统一模式。
common-mode:传统模式。

统一模式

执行命令display dot1x-access-profile configuration,根据Authentication method字段检查设备配置的802.1X用户认证方式与RADIUS服务器是否一致。

根据Authentication method字段检查设备配置的802.1X用户认证方式与RADIUS服务器是否一致

统一模式下,802.1X用户认证方式默认为 eap(即EAP中继认证方式)。如果不一致,请在802.1X接入模板视图下执行命令dot1x authentication-method { chap | pap | eap }修改802.1X用户认证方式。

注:对于绝大多数终端,设备需配置认证方式为EAP中继认证方式。

 

传统模式

执行命令display current-configuration | include dot1x authentication-method,

执行命令display current-configuration | include dot1x authentication-method

传统模式下,802.1X用户认证方式默认为chap(即CHAP的EAP终结认证方式)。如果不一致,请在系统视图或接口视图下执行命令dot1x authentication-method { chap | pap | eap }修改802.1X用户认证方式。

注:

系统视图和接口视图下同时配置dot1x authentication-method时, 接口视图下配置优先生效。

对于绝大多数终端,设备需配置认证方式为EAP中继认证方式。

ICP备案号:晋ICP备18007549号-1