城域网BARS双机热备下家宽用户无法复位的分析
2022-10-11赖彩明钟兴国王荣
赖彩明 钟兴国 王荣
中国联通江西省分公司云网运营中心 南昌市 330029
1 概述
随着计算机网络的高速发展,互联网的应用变得越来越广泛。用户对网络故障恢复时限的要求也越来越高,因此运营商的网络可靠性显得尤为重要。宽带远程接入服务器(BRAS)将用户管理和业务控制等功能结合在一起,实现了对各种业务的认证授权、访问控制和安全保障。因此,在城域网中,BRAS设备的安全可靠至关重要。为了消除单点故障,运营商通常对BRAS采用双机热备方式,以提高网络可靠性和安全性。
本文是通过将一个典型故障的处理过程记录下来,并对此故障进行分析总结,以达到提升网络维护水平的目的。
2 故障现象和处理过程
2022年某天,云网中心接到赣州云网的投诉,某家宽用户无法在AAA WMAS平台进行复位。工程师收到故障申告后,Ping测试BRAS无异常,BRAS到DNS/AAA正常,因此排查重点转移至WMAS。
经WMAS对问题进行复现发现对账号进行复位时出现“对不起,该会话不能被复位。”的告警报错。
2.1 检查MML日志
对于复位用户失败的问题,一般是通过收集MML的oplog以及AAA和BRAS之间的抓包信息来定位故障点。登录ismpmml网元输入oplog进到日志目录,发现oplog的每次测试的结果都是如下的日志:
Excuting command failed[]20[]RESET C280 ACCOUNT[]RETN=1004
从《AAA V200R002C11LG0XXX MML接口开发指南37(宽带AAA).pdf》可以查到返回码1004的意思是“强制用户下线失败。”
2.2 抓包分析
从抓包中,可以看出:
第一行:AAA向BRAS发送的复位DM消息;
第二行:BRAS向AAA请求的计费结束消息(stop),如图1所示(并未响应AAA下发的复位DM消息);
图1 用户复位抓包分析图
第三行:AAA向BRAS重发的DM复位消息(BRAS第一行DM消息未响应,AAA3秒后重发的);
第四行:BRAS复位找不到会话(因第二行计费结束了)AAA提示报无法复位该用户(如图2所示503)。
图2 无法复位根因图
通过分析以上数据,定位故障原因如下:
第一行AAA给BRAS发DM消息的时候,发的目标IP是:58.17.116.1。
但是第二行BRAS给AAA响应的时候,源IP是58.17.116.3。经过BRAS测抓包发现在第一行之后BRAS有回一个复位成功DM消息给AAA,然后在发的计费结束消息(即第三行)。因BRAS响应AAA的DM消息的IP为58.17.116.3与第一行目标IP不一致,两次的IP不一致,AAA认为BRAS回复的消息不合法,丢弃了。
那为什么AAA发送DM消息会发送到58.17.116.1这个IP呢而不是58.17.116.3?
AAA版本发送DM消息的逻辑如下:
对于本地用户,如果计费消息中上报的NASIPAddress是个正常的IP,那么AAA的DM消息会下发到NASIPAddress这个IP。否则的话,会发送给计费消息的源IP。由此可知道BRAS上报的NASIPAddress是58.17.116.1,故AAA会向此IP发送DM消息。
原因清楚之后,有两个解决方法:
1)让BRAS将计费消息中上报的NASIPAddress的值改成和源IP一样,如图3所示。
图3 解决方案图
2)让BRAS响应DM消息的时候,从NASIPAddress这个IP发来DM响应消息。
现网最终采用了方法1,即BRAS将计费消息中上报的NASIPAddress的值改成和源IP一样。修改之后WMAS界面可以正常复位用户。
3 分析总结
AAA侧会将DM消息发往计费消息中的NASIPAddress属性中的IP,并且要求BRAS用这个IP回复DM响应消息,如果两次IP不一致会被认为非法消息而被丢弃。
如果发现对同一场景下,有的区域正常,有的区域不正常,则应该首先比对不同的区域配置,快速找出并修改错误的配置。
如果该故障涉及多个层面或者需要多个平台的配合,那么抓包分析是最好的解决办法,根据业务流程逐级排查,以确定故障点。