锐捷无法弹出portal认证界面排查SOP

一、故障现象

WEB认证重定向页面无法正常弹出,页面空白或者提示设备未注册。

二、组网拓扑

常规网络拓扑如下:
拓扑描述: PC通过接入、汇聚交换机连接到核心,PC的网关在核心上, 下联认证全部开在核心上

三、可能原因

  1. PC未获取IP地址,导致无法正常发起http报文;
  2. PC获取到DNS服务器地址异常,导致无法正确解析域名,无法正常发起http报文;
  3. 18K上重定向配置、portal key 、source interface和eportal上设置不一致;
  4. 接口开启了WEB认证防私设功能,用户使用静态配置的IP地址,导致无法重定向,Web防私设命令:web-auth dhcp-check 或者web-auth dhcp-check vlan xxx;
  5. 18k为B3P3版本,静态IP地址配置在静态无感知认证地址范围 ,web认证页面不弹出也不跳转;
  6. 环境问题导致http报文未到达18K上,中途丢包,导致18K无法重定向;
  7. PC和portal服务器通路异常,导致报文无法正常交互,比如路由不可达,安全设备过滤portal报文等;
  8. eportal服务器异常,导致没有回应报文;
  9. 报文正常到达NAS,但是NAS未处理。常见的就是网络中存在大量WEB攻击报文上送交换机控制面,控制器资源占满,引发其他协议报文无法正常处理。极简X版本可以通过NFPP中的web-auth防护功能规避;
  10. NAS设备软件问题报文未送到WEB进程,导致18K无法重定向;
  11. 如果是第三方服务器(如城市热点),看一下重定向url是否符合服务器要求,不符合也会导致web认证界面无法弹出;
  12. TLS版本问题,我司web重定向使用的TLS版本为1.0或1.1,微软在win 11更新升级后就禁用了TLS 1.0和1.1,从而导致我司重定向交换时被终端浏览器直接拒绝。【web认证需要终端设备与交换机进行重定向交互,当用户使用浏览器访问交换机https页面时需要使用tls(安全传输层协议,用于在两个通信应用程序之间提供保密性和数据完整性),因为当前tls版本太低被终端浏览器直接拒绝,造成Portal认证页面无法弹出,进一步导致成web认证无法正常完成。】;

四、故障排查步骤:

步骤一:检查PC获取地址以及跳转情况

查看PC是否有获取到IP地址,若没有获取到地址按获取不到地址进行排查,获取到了按下面排查
  1. 打开浏览器分别输入http://www.ruijie.com.cn 和 http://1.1.1.1(该IP必须为一个内网中不存在的IP地址),观察URL有没有跳转变化。
如果输入网址无法跳转,输入IP地址以后能够跳转,则请检查DNS是否正常,可以在终端上使用nslookup www.baidu.com核实DNS解析是否正常。
如果两者都无法跳转,请走下一个步骤,若是跳转以后无法弹出页面,需要检查portal服务器情况

步骤二:检查18K和eportal服务器相关配置是否正确

  1. 通过show web-auth tem明确对应认证/记账模板是否有调用错,URL是否配置错误,portal服务器状态是否为enable;
  2. 明确一下对应portal源端口是哪个,使用对应源端口IP PING portal服务器是否正常可达,同时核实一下portal key是否配置正确;
  3. 明确一下对应终端地址是否为DHCP获取地址,若是静态配置地址,检查一下设备是否有配置WEB认证防私设功能。相关命令:web-auth dhcp-check 或者web-auth dhcp-check vlan xxx;(web防私设要跟dhcp snooping表项联动,如果查找不到snooping表,web认证重定向不出来)
  4. 检查是否关闭了http的重定向,即是否配置了no http redirect port 80
  5. 检查eportal上对应配置是否和18K上一致,如下:
  1. show version 检查18K版本是否为B3P3版本,如果是检查是否开启静态地址无感知认证; 静态 ip 若在 dot1x mac-auth-bypass static-ip-segment 配置的ip段范围 ,web认证页面不弹出也不跳转。 ;
  2. 检查是否存在无感知认证表项,show dot1x su | in xxx(终端mac地址),存在无感知表项不会弹认证;
  3. 核实终端是否存在迁移情况,若存在需要检查是否配置认证迁移;
station-move permit //必配,所有认证迁移的总开关,必须开启,才有web认证和1X认证迁移的处理逻辑。当用户触发认证迁移时,会自动删除迁移前的认证表项,自动增加迁移后的认证表项
web-auth station-move auto//必配,开启web-auth认证迁移,当用户触发认证迁移时,web-auth模块会自动删除迁移前的认证表项,自动增加迁移后的认证表项
web-auth station-move info-update //必配,开启web-auth认证迁移时,通过计费更新报文通告radius服务器用户vid/port的最新值。

步骤三:核实是否命中已知的HTTPS重定向异常问题

核实一下是否只有https的重定向出现异常,若是只有https页面无法重定向且对应WEB页面有如下图报错,命中TLS版本问题,具体可以参照预警:WN20220302001

步骤四:检查环境是否存在异常,参考环路排查SOP

环路排查参考环路排查SOP:13 环路排查指导

步骤五:检查终端和18K重定向报文交互情况

正常情况下,终端和18K重定向报文交互情况如下(正常还有DNS解析报文,此处未截取)
过程为:
  1. 终端发起和地址1.2.3.4的TCP连接建立请求;
  2. NAS截获终端请求并伪装目的IP(1.2.3.4)与终端进行TCP三次握手连接;
  3. 终端发起访问网页的HTTP的get请求报文;
  4. NAS给终端回复一个重定向报文,重定向地址为portal服务器的URL地址;
在18K侧抓包查看:
若是过程1或者过程3报文没有,需要检查终端和18K中间的网络情况,可通过调用tcp计数明确丢包点;
show mac-address-table | include ***(用户的MAC地址)
show arp | include ****(用户的MAC地址)
若是过程2或者过程4报文没有,原因可能有以下几点:
  1. 环境中有大量的异常报文,导致设备未正常处理对应TCP请求,可以通过show cpu-pr type web-auth/show cpu-pr type web-auths核实是否有对应报文的CPP丢包。
  1. 用户认证报文过多,导致设备web认证模块处理不过来,Wbamain是web认证处理进程,可通过show processes cpu | in wba查看对应进程CPU占用是否正常
  1. 查看WEB认证对应的TCP端口是否正常开启,通过show tcp connect查看,一般4389/7165是web认证的端口。
  1. 交换机发送rst报文导致三次握手没建立,查看18K全局或者对应接口下是否有配置acl,acl里是否有deny终端ip地址tcp报文的ace条目;

步骤六:收集信息,联系4008111000分析

五、故障信息收集

  1. 复现过程收集以下信息:
可以在故障终端浏览器访问http://1.2.3.4,然后对目的ip是1.2.3.4的报文进行过滤
debug efmp packet filter x.x.x.x counter 10(进行报文过滤) ==>开启对应IP 1.2.3.4的快转debug
debug acl efacl ef-packet dstip x.x.x.x count 10 (进行报文过滤) ==>开启对应IP 1.2.3.4的ACL debug信息,看看对应流量是否被ACL过滤
debug ip tcp packet peer-ip x.x.x.x (进行报文过滤) ==>开启对应终端源IP的TCP连接debug,明确对应TCP建立情况,如果此交换机用户不多,可以开启复现收集信息
debug web-auth log-limit 1000(输出1000条debug信息后自动关闭debug web-auth httprd),如果没有此命令则通过debug syslog limit time 30 limit 1500 (30min 内输出1500条debug后自动关闭所有的debug)
debug web-auth httprd (查看重定向的过程,这条命令没有过滤,会对所有的重定向进程输出,用户数多的环境不建议开启,要先输入debug条数限制在开启此命令)
  1. 复现后收集:
terminal mon
terminal length 0
show ver detail
show run
show cpu
show mem
sh memory history
show cpu-pro type web
show cpu-pro type webs
show processes cpu | in wba
debug scc stat
debug web cli
show mac-address-table | include ***(用户的MAC地址)
show arp | include ****(用户的MAC地址)
show ip dhcp snooping
show ip dhcp snooping binding | in ****(用户的MAC地址)
sh web user ip *******(用户的IP)
sh web syslog ip *******(用户的IP)
sh web syslog mac *******(用户的mac)
debug web-auth show
debug web-auth sta eportalv2
debug web-auth dump err
debug web-auth sta
show web-auth authmng abnormal
show radius timeout record
show web temp
show web portal
show radius auth stat
show radius acct stat
show log
terminal no length
terminal no mon
阅读剩余
THE END