S5700产品S5700-52-PWR-LI-AC

问题描述

交换机版本:V200R008C00SPC500+SPH002;

组网图:

S5700产品S5700-52-PWR-LI-AC

S5700交换机上联端口分别与其他友商portal服务器和外网路由器对接,S5700交换机上配置逃生功能(server-detect interval 100 max-times 5),逃生功能主要检测指定的服务器是否正常,如果服务器出现故障,那么逃生功能启用,可以让客户端避免认证,从而上网。

故障现象:客户配置逃生后,需要进行测试,但是在测试时portal服务器故障恢复正常后,逃生功能任然继续工作,导致客户无法进行radius认证,任然按照逃生模式上网。

设备配置:

#

web-auth-server ndkey    //配置portal服务器

server-ip 10.139.1.46   //portal服务器地址

port 50100          //服务器使用端口

url-template ndkey     //套用url模板

source-ip 192.168.42.2  //本端地址

server-detect interval 100 max-times 5    //开启逃生功能,100秒内发送5次心跳检测。

#

interface Vlanif42

ip address 192.168.42.2 255.255.254.0

#

interface GigabitEthernet0/0/13

port link-type access

port default vlan 42

authentication portal  //接入用户认证模式

web-auth-server ndkey direct  //接口绑定portal模板,并启用二层转发。

#

处理过程

1、和客户沟通了解故障现象,发现portal服务器down后,逃生功能启用,证明能检测到portal服务器。

2、逃生功能原理,需要portal服务器和交换机之间启用心跳线,怀疑是不是portal服务器恢复正常后,没有打开心跳,不反馈心跳报文到交换机,导致逃生功能一直生效。

3、在portal服务器侧报文头分析,portal服务器有发送心跳报文,心跳功能是打开了的,检测报文内容发现友商portal心跳协议为思科的协议,华为portal心跳协议为华为私有,那么相互收发代码就不一致,华为协议代码为0x81和0x82,0x81是交换机发送给portal服务器;0x82是服务器反馈给交换机的。所以让portal服务器厂家研发修改相关参数,交换机才能正常接收心跳报文。

S5700产品S5700-52-PWR-LI-AC

4、修改后,发现故障现象依旧再,再次报文头分析查看发现portal服务器发送的心跳版本为V1,华为心跳版本为V2,没有V1版本,需要portal服务器心跳版本改成V2。修改后就能正常启用心跳检测功能,并退出逃生状态,客户能正常进行认证。

S5700产品S5700-52-PWR-LI-AC

根因

根因:华为PORTAL协议为私有,对接时需要版本V2、并且协议代码为0x81和0x82。

解决方案

解决:在友商设备上运行potral协议版本V2,并修改交互的心跳代码以华为potral协议代码为主,问题解决。
阅读剩余
THE END