现场ac控制器为irf部署,旁挂在核心,集中转发,和imc对接做portal认证,其中imc为冷备部署,要求主认证服务器故障后能切换到备机进行portal认证。
现场目前故障现象是在主服务器认证正常,切换到备imc后无法弹出portal页面,在浏览器中看重定向的页面url依然是主portal服务器的ip地址
拿到问题后首先检查配置,页面仍然定向到主imc的话怀疑是ac未感知到portal web服务器发生了切换导致,所以此时怀疑ac侧的portal web-server配置有问题
#
portal web-server aaa
url http://x.x.x.x:8080/portal
server-detect url http://x.x.x.x:8080/portal/
url-parameter ssid ssid
url-parameter wlanuserip source-address
url-parameter wlanacname value AC
检查配置发现,现场的web-server果然未配置探测,建议现场加上探测 server-detect interval 之后,页面可以正常弹出。
随后现场测试发现另一个问题,业务切换到备机后,总会有些终端前两次认证不成功,直到第三次认证才成功,不成功时页面提示报错为向设备发送请求超时。
大部分报错为“向设备发送请求超时”都是在portal阶段出现了问题,于是协调现场进行debug并同时在imc侧抓包,抓包发现现场在radius认证阶段前两次认证不成功时,一直在发送radius1号报文,然后imc侧迟迟未收到ac发送的ack_auth报文所以判断为超时,报了向设备发送请求超时的错误。从抓包可以很明显的看到,在向主服务器发送请求超时未得到回复后,判断主服务器不可达,转而切换到备机,但是为什么切换之后就会超时了呢?这个和imc配置有关,imc上默认portal超时时间为4s,但是ac上默认radius探测的时间一次为3s,一共探测三次才认定为服务器不可达,这样ac探测radius的状态就需要9s,远大于imc上的portal超时时间,所以imc在超时时间内未收到ac的回复报文认为超时,此次认证失败。
1.可以在ac上将radius超时时间配置为1s,timer response-timeout配置为1s,这样三次探测失败后一共花费3s,小于imc上的portal超时时间;
2.第二种方法是修改imc上的portal超时时间为大于9s,这样也能起到同样的效果,但现场imc是冷备部署,修改配置后备机需要从主机同步配置,而同步配置一般设定在半夜进行,所以考虑现场业务情况将ac的配置进行了修改。
此问题还有第三种解决方法,就是在ac上直接配置radius的探测模板,radius-server test-profile Profile username xxx interval xxx,这样做的好处就是设备一直规律性地在探测radius服务器的状态,而不是通过radius认证报文来探测radius服务器的状态。
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作