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及以前)


 3 、处理步骤


(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、故障总结及注意事项