【风险】以下故障排查的命令,若涉及到增删改配置的操作,请评估风险影响且征得客户同意后再操作。若您不清楚造成的影响,请不要操作,请联系专业的锐捷售后工程师进行评估后再决定是否操作。


1、故障现象

   802.1X认证失败或者使用过程中异常掉线


2、故障可能原因


(1)18K和SAM对接配置问题,导致18K没有发送到SAM或者SAM收到以后不处理

(2)18K到SAM之间的通路问题导致radius报文无法发送到SAM

(3)客户端到18K之间的线路通路问题导致EAP报文无法发送到18K

(4)18K上配置问题导致没有处理或回应

(5)无法获取到正常的IP地址

(6)18K或者SAM软件问题导致无法正常发送或处理相关认证报文

(7)VLAN 端口迁移,导致用户明明没有主动下线却提示主动下线(B3P2及以前)


   、处理步骤


(1)首先,先收集客户端和SAM的运维管理->日志管理 上的相关认证失败提示,根据提示做出基本的判定。

(2)如客户端上认证过程卡在“连接认证服务器”或者最后提示“连接认证服务器失败”,则检查18K上802.1x和SAM对接认证配置是否正确。  如果SAM上有提示,根据提示配置。如果SAM上没有任何提示,则主要检查radius 服务器是否配置正确

aaa new-model

radius-server host 192.168.32.120 key 7 ruijie  
 

ip radius source-interface gigabitEthernet 1/24  
 

aaa accounting network default start-stop group radius

aaa authentication dot1x default group radius

aaa accounting update periodic15

aaa accounting update

dot1x accounting default  

dot1x authentication default  

aaa authorization ip-auth-mode mixed

no aaa log enable

interface FastEthernet 0/1

   dot1x port-control auto

expert access-list extended 2700

  10 permit arp any any 

  20 permit udp any any any any eq bootpc 

  30 permit udp any any any any eq bootps 

security global access-group 2700

 

 

(3)检查18K source interface 的IP地址和SAM连通性是否正常。


(4)如认证过程卡在“寻找认证服务器”阶段或者最后提示“寻找认证服务器失败”, 则检查PC到18K之间的链路是否正常,可通过18K下相关端口802.1x是否有配置。

检查是否在接入层上有S21交换机开启了802.1x认证导致EAP报文被过滤,或者接入了TP-LINK不转发EAP报文

   

(5)如果以上两个步骤检查完以后问题依旧,则使用如下命令收集信息,并且测试同时在PC和SAM服务器上抓包

     Show dot1x user diag mac xxx  //查看相关用户的会话过程

 

         如图所示:

create pae:创建用户;

pkt start:客户端start报文发起的认证;

acct start:认证过,开始记账;

acct stop:用户下线,发出记账结束报文。

aaa del:服务器踢线

aaa reject:服务器拒绝

pkt logoff :客户端主动下线

set scc fail:调用scc接口失败

set scc cb fail:底层返回设置用户失败

no flow:无流量下线

auth exceed:状态机重认证次数超过配置

session tout:在线时长或者流量超过限制

no valid ip:获取不到ip

reqid tout:客户端超时

aaa tout:服务器超时

detail ( 一般18K设备端原因导致的才会出现 ):  

flow used up:流量耗尽

aaa no eap:服务器报文长度错误

get author vid fail :获取vlan授权失败

am not allowed :am规则不匹配


show dot1x authmng abnormal | include ruijie001  //查看异常的1x认证事件

/* 1x认证失败原因打印 */

#define amg_1x_result_str(rslt) \

    ((rslt == D1X_RESULT_REQID_TOUT) ? "request id timeout" : \---》客户端超时

    (rslt == D1X_RESULT_REQ_TOUT) ? "request timeout" : \---》服务器超时

    (rslt == D1X_RESULT_AAA_TOUT) ? "aaa timeout" : \---》服务器超时

    (rslt == D1X_RESULT_OTHER_TOUT) ? "other timeout" : \

    (rslt == D1X_RESULT_AAAREJ) ? "aaa reject" : \----》服务器拒绝

    (rslt == D1X_RESULT_IPAM_NOT_ALLOWED) ? "ipam not allowed" : \----》am规则不匹配

    (rslt == D1X_RESULT_IP_BANDWIDTH_FAIL) ? "ip band width fall" : \---》授权失败

    (rslt == D1X_RESULT_SET_SCC_FAIL) ? "set scc fall" : \-----》设置scc失败

    (rslt == D1X_RESULT_USR_LOGOFF) ? "user logoff" : \----》客户端logoff

    (rslt == D1X_RESULT_AUTOR_VLAN_FAIL) ? "author vlan fail" : \---》授权vlan失败

    (rslt == D1X_RESULT_VID_MODIFY) ? "vid modify" : \

    (rslt == D1X_RESULT_PORT_USR_LIMIT) ? "prot user limit" : \---》端口用户数限制

    (rslt == D1X_RESULT_TOTAL_USR_LIMIT) ? "total user limit" : \---》全局用户数限制

    (rslt == D1X_RESULT_ACCT_CACHE_DENY) ? "acct cache deny" : \---》用户在记账缓存中

    (rslt == D1X_RESULT_OTHER_SEC_TYPE) ? "other security type" : \---》其他安全配置,如静态mac

    (rslt == D1X_RESULT_CLOSE_AUTH_SWITCH) ? "close auth switch" : \---全局1x开关关闭

    (rslt == D1X_RESULT_DENY_NON_RG_CLIENT) ? "deny non-rg client" : \---》非锐捷客户端

    (rslt == D1X_RESULT_MAB_VLAN_DENY) ? "mab vlan deny" : \---》mab vlan授权失败

    (rslt == D1X_RESULT_VALID_IP) ? "valid ip" : \---》没获取到有效ip

    (rslt == D1X_RESULT_SET_ACL_FAIL) ? "set acl fail" : \---》设置scc失败

    (rslt == D1X_RESULT_PORT_DWN) ? "port down" : \---》端口down

    (rslt == D1X_RESULT_NOT_ALLOW_USR) ? "not allow user" : \----》用户不在可认证列表里

    (rslt == D1X_RESULT_CONFILCIT_ACCOUNT) ? "conflict account" : \----》账号冲突

    (rslt == D1X_RESULT_VALID_IP_MAB) ? "valid ip mab" : "none")-----》需要获取ip后进行mab认证


/* 1x下线原因 */

#define amg_1x_offline_str(code) \

    ((code == D1X_OFFLINE_USER_LOGOFF) ? "user logoff" : \---》客户端logoff

    (code == D1X_OFFLINE_DM) ? "server kickout user" : \---》服务器踢线

    (code == D1X_OFFLINE_NOFLOW) ? "no flow" : \---》无流量

    (code == D1X_OFFLINE_NOIP) ? "no ip" : \---》无合法ip

    (code == D1X_OFFLINE_SESSION_TOUT) ? "session timeout" : \---》费用、流量耗尽

    (code == D1X_OFFLINE_FLUX_OUT) ? "flux out" : \

    (code == D1X_OFFLINE_SVRKICKOUT_USR) ? "svr kickout user" : \----》服务器踢线

    (code == D1X_OFFLINE_HELLO_TIMEOUT) ? "hello timeout" : \----》客户端探测超时

    (code == D1X_OFFLINE_SCC_RB_FAIL) ? "scc rollback" : \---》设置scc失败

    (code == D1X_OFFLINE_MAC_RB_FAIL) ? "mac rollback" : \

    (code == D1X_OFFLINE_IP_BANDWIDTH_FAIL) ? "ip bandwith fail" : \---》授权失败

    (code == D1X_OFFLINE_NO_PORT_CONTROL) ? "mng no port control" : \---》删除端口受控

    (code == D1X_OFFLINE_AUTHOR_CHANGE) ? "mng author change" : \----》授权配置变更

    (code == D1X_OFFLINE_ALLOW_USR_CHANGE) ? "mng allow user change" : \---》允许认证的用户列表变更

    (code == D1X_OFFLINE_DIRECT_VLAN_CHANGE) ? "mng direct vlan change" : \---》免认证配置变更

    (code == D1X_OFFLINE_CLEAR_CLI) ? "mng clear cli" : \---》cli操作删用户

    (code == D1X_OFFLINE_IPAM_CHANGE) ? "mng ipam change" : \---》am规则变更

    (code == D1X_OFFLINE_STAITC_MAC) ? "mng staitc mac" : \---》静态mac配置变更

    (code == D1X_OFFLINE_FILT_MAC) ? "mng filter mac" : \----》过滤mac配置变更

    (code == D1X_OFFLINE_SET_MUMAB) ? "mng set mumab" : \---》multi-mab配置变更

    (code == D1X_OFFLINE_MAB_VLAN_CHANGE) ? "mng mab vlan change" : \---》mab vlan配置变更

    (code == D1X_OFFLINE_IP_ACCT_CHANGE) ? "mng ip acct change" : \---》记账方法变更

    (code == D1X_OFFLINE_CTRL_MODE) ? "mng ctrl mode" : \---》受控模式变更

    (code == D1X_OFFLINE_VID_MODIFY) ? "mng vlan change" : \---》vlan配置变更

    (code == D1X_OFFLINE_PORT_MOVE) ? "port move" : \---》端口迁移

    (code == D1X_OFFLINE_VLAN_MOVE) ? "vlan move" : \---》vlan迁移

    (code == D1X_OFFLINE_PORT_VLAN_MOVE) ? "port-vlan move" : \---》端口和vlan迁移

    (code == D1X_OFFLINE_INVALID_IP) ? "invalid ip" : \---》未获取有效ip

    (code == D1X_OFFLINE_PORT_DOWN) ? "port down" : \---》端口down

    (code == D1X_OFFLINE_GSN_FAIL) ? "gsn fail" : \---》设置gsn失败

    (code == D1X_OFFLINE_MAB_2_1X) ? "mab to 1x" : \---》mab被1x抢占

    (code == D1X_OFFLINE_MAB_2_GUEST) ? "mab to guest vlan" : \---》跳转到guest-vlan

    (code == D1X_OFFLINE_DHCP_AUTHOR_FAIL) ? "dhcp author fail" : \---》ip授权失败

    (code == D1X_OFFLINE_DB_RECOVER_FAIL) ? "db recover fail" : \---》数据库恢复用户失败

    (code == D1X_OFFLINE_ADB_AUTHOR_FAIL) ? "adb author fail" : \--》静态地址绑定授权失败

    (code == D1X_OFFLINE_RECOVER_2_SCC_FAIL) ? "recover to scc fail" : \---》向scc恢复用户失败

    (code == D1X_OFFLINE_HA_RECOVER_FAIL) ? "ha recover fail" : \---》热备切换,恢复用户失败

    (code == D1X_OFFLINE_IP_MAB_UNSET_IP) ? "ip mab unset ip" : \----》获取ip后进行mab认证的用户ip失效了

    (code == D1X_OFFLINE_S_MAB_CHANGE) ? "s mab change" : "none")---》单mab状态变化


(6)排查IP地址能否正常获取

expert access-list extended 2700

  10 permit arp any any 

  20 permit udp any any any any eq bootpc 

  30 permit udp any any any any eq bootps 

security global access-group 2700

确定以上配置正常以后,如果还是无法正常获取IP地址,则根据DHCP 故障排查


(7)如果根据如上配置以后还是认证失败,则收集18K的信息,并且同时在PC和SAM上开启抓包,发送后台处理



4、故障信息收集

















     18K信息收集如下:

     terminal length 0

     show ver detail

     show run     

     show mac-address-table | include ***(用户的MAC地址)

     show arp | include ****(用户的MAC地址)

     show ip dhcp snooping

     show ip dhcp snooping binding | in ****(用户的MAC地址)

     show dot1x user diag mac xxx

     show dot1x authmng abnormal | in xxx

     show dot1x authmng statistic

     show dot1x authmng mab statistic

     show dot1x user mac xxx

     show dot1x

     deb dot1x dump gl

     show log

     terminal no length


     SAM信息收集log信息目录如下:

       

 



5、故障总结及注意事项