要让RADIUS服务器能看到通过802.1X + 证书认证的终端IP和MAC信息,核心在于让H3C无线控制器(AC)在发送RADIUS计费报文时就带上这些参数。这需要您在AC上进行专门的配置。
H3C AC默认的计费报文发送机制,会等到获取到终端的IPv4地址后才会发送计费开始报文。但是,要让报文里携带具体的IP地址信息,还需要额外的配置来“告诉”设备从哪里去学习这些终端地址。
启用IP地址监听学习功能
在控制ACL下发或端口状态之前,需要开启功能让设备主动学习终端的IP地址。请进入对应的无线服务模板视图进行配置:
配置计费延时上报
为了确保AC有足够时间学到终端IP地址再上报,需要配置一个计费延时。继续在无线服务模板视图下操作:
time参数设置为一个合适的值(如15秒),具体时长可根据网络环境适当调整。这能有效保证RADIUS计费报文中会包含Framed-IP-Address等属性。根据终端IP获取方式做辅助配置
为了让设备能成功学习到终端的IP,这里有两种情况:
若终端使用DHCP动态获取IP地址:
需要全局开启DHCP Snooping功能,让AC通过侦听DHCP报文来获取终端的IP和MAC地址对应关系。
若终端使用静态IP地址:
需要开启ARP Snooping功能,让AC通过侦听ARP报文来学习信息。
验证配置
配置完成后,请进行以下验证:
使用display wlan client ip命令,确认AC是否已成功学习到终端的IP地址。
通过抓包或在RADIUS服务器上查看,确认收到的计费请求包中是否携带了Calling-Station-Id(终端MAC地址)和Framed-IP-Address(终端IP地址)字段。
MAC地址字段:终端MAC地址会包含在RADIUS报文的Calling-Station-Id属性中,这是标准行为,通常无需额外配置。
版本兼容性:上述基于client-security命令的配置方式,主要适用于Comware V7平台的H3C无线控制器,不同版本可能稍有差异,请以官方手册为准。
暂无评论
你这个场景(802.1x + 证书,EAP-TLS/PEAP)在第三方 RADIUS 上看不到终端 IP/MAC,核心原因是:默认只在认证请求里带 MAC,不带 IP;IP 要靠计费报文或自定义属性上报,且第三方服务器默认不解析 H3C 私有属性。下面直接给可落地的配置和排查步骤。
一、先确认:默认带了什么属性
在 802.1x(EAP)认证请求(Access-Request)里,AC 默认会带:
Calling-Station-Id (31):终端 MAC(xx-xx-xx-xx-xx-xx)
Called-Station-Id (30):AP MAC:SSID
NAS-IP-Address (4):AC 的 IP(不是终端 IP)
默认不带终端 IP;终端 IP 在认证时可能还没分配(DHCP),所以标准 RADIUS 无对应字段。
二、AC 侧配置:强制携带终端 IP+MAC(两种方式)
方式 1:用 H3C 私有属性 60(推荐,同时带 IP+MAC)
全局开启 RADIUS 私有属性携带:
bash
运行
system-view
# 开启携带用户IP+MAC(属性60:A.B.C.D hh:hh:hh:hh:hh:hh)
radius attribute 60 enable
# 确保MAC格式正确(可选)
radius attribute 31 mac-format hyphen
在 RADIUS 方案下生效:
bash
运行
radius scheme 第三方RADIUS
primary authentication x.x.x.x 1812
key authentication simple 共享密钥
# 必须开启:认证/计费报文中携带属性60
radius attribute 60 enable
方式 2:计费报文上报 IP(认证时无 IP,计费更稳)
802.1x + 证书场景,终端通常先认证、后 DHCP 拿 IP,所以计费请求(Accounting-Start)里才会有 IP:
bash
运行
# 全局开启802.1x计费
dot1x accounting enable
# 域下绑定计费方案
domain 你的域
accounting lan-access radius-scheme 第三方RADIUS
计费报文中会带:
Framed-IP-Address (8):终端 IP(DHCP 分配后)
Calling-Station-Id (31):终端 MAC
三、第三方 RADIUS 侧配置:解析 H3C 私有属性
第三方 RADIUS(如 FreeRADIUS、NPS、AuthServer)默认不识别 H3C 私有属性 60,需要手动添加字典并映射:
1. 导入 H3C RADIUS 字典(关键)
以 FreeRADIUS 为例,在/etc/freeradius/3.0/dictionary中添加:
bash
运行
# H3C私有属性
VENDOR H3C 25506
BEGIN-VENDOR H3C
ATTRIBUTE Ip_Host_Addr 60 string
END-VENDOR H3C
重启 RADIUS 服务。
2. 映射属性到用户字段
MAC:直接取Calling-Station-Id (31)
IP+MAC:解析H3C-Ip_Host_Addr (60),按空格分割 IP 和 MAC
IP:取Framed-IP-Address (8)(计费报文)
四、常见坑与排查
认证时无 IP,正常:EAP 认证阶段终端未 DHCP,IP 为空;看计费报文。
属性 60 没带:AC 全局 + RADIUS 方案下都要radius attribute 60 enable。
第三方服务器不解析:必须导入 H3C 字典,否则属性 60 显示为 “Unknown Attribute”。
MAC 格式不匹配:AC 用radius attribute 31 mac-format hyphen改成xx-xx-xx-xx-xx-xx。
五、最终效果
认证请求:带 MAC(31)、AP 信息(30)、AC IP(4)
计费请求:带 IP(8)、MAC(31)、IP+MAC(60)
第三方 RADIUS:解析字典后,可在认证 / 计费日志中看到终端 IP 和 MAC
暂无评论
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
暂无评论