一、组网描述
某客户校园网采用传统的三层架构,在出口处部署一台深澜认证网关服务器,实现对校园网用户的统一认证,该服务器相当于一台BRAS设备,提供认证页面,同时与后端3A服务器交互认证、计费报文。
宿舍网采用大二层架构,利用QINQ技术使得接入交换机每个端口一个单独的VLAN,从而避免ARP、DHCP欺骗,广播风暴等。核心采用H3C SR8808-X作为BRAS设备,用来进行QINQ终结以及终端用户的PPPOEServer,配合深澜的3A服务器实现与三大运营商的认证对接。
二、故障现象
某日监测到大量用户认证时,提示“Portal not response”,认证故障现象如下图所示:
三、处理过程
1. 使用宿舍网账户进行测试,认证页面正常,但是登录时同样报错;
2. 考虑到校园网和宿舍网使用一台3A服务器,因此怀疑是3A服务器故障;
3. 对3A服务器进行PING测试,结果无法PING通;
4. 由于3A服务器是一台虚拟机,因此通过Vsphere client登录到虚拟化平台中,检查3A服务器运行状态,发现3A服务器黑屏,无法进入系统;
5. 咨询深澜厂家,确定3A服务器上没有用户认证数据后,对3A服务器进行断电重启操作;
6. 重启3A服务器后,认证正常;
7. 原以为故障已经处理完成,但陆续接到用户反馈认证掉线,从深澜管理后台中看见账户均在上线“10分钟17秒”后下线。下线原因均为“Admin-Reset”,如下图所示:
8. 我司工程师进一步分析下线原因,通过在3A上抓包,确认是由BRAS设备或深澜网关服务器主动发出计费结束STOP报文导致下线,报文内容如下:
9. 根据丰富的经验,我司工程师知道BRAS设备主动发“Admin-Reset类型STOP”报文一般有以下两种情况:
1) 登陆BRAS设备使用命令强制将在线用户踢下线;
2) BRAS设备定期发送的“计费更新Update报文”,3A服务器收到该报文,会根据报文内的相关信息,检查该报文携带的用户是否在线,如果用户不在线,3A服务器会回应“Offline”。BRAS设备收到该类型的报文后也会主动发送“Admin-Reset类型STOP”报文给3A服务器。3A服务器收到STOP报文后,应答BRAS设备,BRAS设备收到应答将用户下线;
10. 登录BRAS设备检查操作命令历史,并未发现有将用户踢下线的相关命令,因此可以排除第1种原因;
11. 在3A上开启抓包,检查3A服务器应答BRAS的“Update报文”,报文如下。果不其然,验证了第2种原因。
12. 我司工程师立即联系深澜厂家工程师,并将故障现象和数据包发送到厂家工程师,厂家工程师立即登录到3A服务器进行检查,发现radius进程有问题,认证通过的用户并没有向深澜核心中写入,导致BRAS发送的“Update报文”中的用户在深澜核心中不在线。
四、解决方案
1. 深澜工程师重启radius进程,我司工程师再进行账户测试和抓包,发现“Update报文”回应正常,应答包如下:
2. 通过一段时间的测试,用户掉线问题解决;
3. 咨询深澜厂家后,厂家给出答复3A服务器在重启后,Radius进程启动过程中出现了问题导致;
五、总结及建议
1. 遇到认证账户掉线问题时,可以从认证系统管理后台分析日志,确认掉线原因;
2. 如有必要时通过抓包分析“认证下线STOP报文”、“计费更新Update报文”的请求和应答包是否正常;
3. 出现问题时,充分分析问题现象,定位问题出现的原因点,不能盲目地、一味地去寻找网络方面的问题。
举报/反馈