![MAB 和 802.1x 问题 - 经 MAB 认证的设备被丢弃](https://linux22.com/image/609723/MAB%20%E5%92%8C%20802.1x%20%E9%97%AE%E9%A2%98%20-%20%E7%BB%8F%20MAB%20%E8%AE%A4%E8%AF%81%E7%9A%84%E8%AE%BE%E5%A4%87%E8%A2%AB%E4%B8%A2%E5%BC%83.png)
我正在尝试使用 802.1x 通过 RADIUS 的动态 VLAN 分配对我网络上的客户端进行身份验证。我们的 IP 电话(由 PoE 供电)仅支持 EAP-MD5,我们宁愿使用 MAB(它在某些设置中也使用 LLDP-MED)通过电话供应商提供的 MAC 范围对电话进行身份验证。以下方案非常有效:
- 连接手机并让其启动(需要一段时间)并通过 MAB 进行身份验证。
- 将计算机连接到手机数据端口并让其通过 802.1x 进行身份验证(或失败并到达 guest-vlan)
但是,下面的场景却不行:
- 电脑已经连接到手机
- 然后手机就连接到交换机了
现在发生的情况是,在手机启动并通过 MAB 进行身份验证之前,计算机使用 802.1x 进行身份验证。当手机准备就绪时,它会通过 MAB 进行身份验证,一切正常。但是,在短暂的时间(比如一分钟)之后,使用debug authentication all
,我们会看到“NEW LL MAC:手机 mac”消息(这很奇怪,因为 mac 已经通过 MAB 身份验证),然后我们无法使用 ping 联系手机。当我检查时,show mac address-table
它现在已将 mac 从 移动Port Gi 0/12
到Port Drop
。但是,如果我检查show mab interface Gi 0/12
或 ,show authentication sessions
它会将手机 mac 列为mab auth sucess
。
谁能解释一下为什么第一种情况有效,而第二种情况无效?
该交换机为 3560E PoE 24p,配备 IOS 12.2.58SE2,交换机配置示例:
network-policy profile 1
voice vlan 90
!
interface GigabitEthernet0/12
switchport mode access
network-policy 1
authentication control-direction in
authentication event fail retry 1 action authorize vlan 60
authentication event server dead action authorize vlan 60
authentication event no-response action authorize vlan 60
authentication event server alive action reinitialize
authentication host-mode multi-domain
authentication order mab dot1x
authentication priority mab dot1x
authentication port-control auto
authentication periodic
authentication violation replace
mab
dot1x pae authenticator
dot1x timeout tx-period 5
dot1x max-reauth-req 1
spanning-tree portfast
!
顺便说一句,当我们尝试使用 802.1x (EAP-MD5) 对电话进行身份验证时,在任何情况下都没有问题。但是,我们希望使用 MAB 而不是 802.1x,以避免使用用户名和密码配置电话的要求。
答案1
您是否尝试过向该接口添加“no cdp enable”?我曾经遇到过这个问题,后来解决了。