Print

802.1x或者portal认证成功后安全认证失败,报错未收到服务器回应故障分析

组网及说明

组网不涉及


问题描述

最近处理问题时接到不少局点使用802.1x认证或者portal认证成功后,安全认证失败导致下线,inode报错提示“未收到服务器回应”,故障截图如下:



  

过程分析

对于此类问题,我们需要了解认证上线以及安全检查的过程,过程如下

1、 inode使用客户端拨号,进行认证

2、 认证成功后,终端发送安全检查请求报文给策略服务器(EAD服务器)

3、 策略服务器回应安全检查请求报文,并给终端下发安全检查策略

4、 终端根据服务器侧下发的安全检查策略,进行安全检查,根据检查结果,确认终端是在线还是强制下线

 

根据上面的过程分析,判定故障发生在第二步,即终端认证成功后,给策略服务器报文交互出现异常,可能是网络不通也可能是安全检查的请求报文丢失,具体分析如下:

1、 在认证成功后,在终端进行安全检查时(此时账号还未下线),ping EAD服务器地址,看是否可以ping



 如果可以无法pingEAD服务器的地址,说明现场组网有问题,需要排查组网,正常在认证未下线时,是可以ping通EAD服务器的

 如果此时可以ping, 说明终端和EAD服务器可以继续交互上线请求报文,需要在服务器侧和终端侧同时抓包以及看相关的inode日志、policyserver日志继续分析。

 2、终端以及服务器侧抓包,看EAD报文交互情况

 终端侧抓包,过滤EAD服务器地址或者过滤udp.port==9019,抓包如下,

 终端IP地址:10.248.7.42 , EAD服务器IP地址:10.252.229.228,目的端口号9019

 看终端抓包,可以看出此时终端侧是有发送EAD报文给服务器。


                                                                           1-1 终端侧抓包

此时同时查看服务器侧抓包,过滤终端IP地址,报文如下:


 通过服务器侧抓包,可以看出终端侧发送的报文并没有到服务器,导致服务器侧并没有收到EAD报文,服务器侧没有回应,导致安全检查失败,终端被强制下线

这种终端发送报文,服务器侧没有收到,说明该报文在链路层被丢弃,需要排查中间链路层是否有防火墙

如果有防火墙的话,需要检查是否方通UDP=9019端口,该问题现场检查发现防火墙没有方放通udp==9019端口,导致报文被丢弃。


解决方法

1、具体分析见过程分析

2、此类问题抓包,最容易看出原因,抓包时一般需药服务器侧和终端侧同时抓包,这样方便对比

3、日志一般需要收集inode详细级别日志、policyserver debug级别日志