RADIUS (Remote Authentication Dial-In User Service) / LDAP (Lightweight Directory Access Protocol)
★★★ 两个协议回答两个问题
★★★★ 它们经常被当成一回事,其实分工完全不同:
· RADIUS 是决策:回答一个是非题 —— 这个人能不能接入。它自己不存用户。
· LDAP 是目录数据库:回答查询题 —— 这个人是谁、在哪个组、有什么属性。它不做准入动作。
★★★★ 所以企业网里两个是串起来用的:交换机问 RADIUS,RADIUS 查 LDAP。
★★★ 为什么一个走 UDP 一个走 TCP
★★★★ 这不是随意选的,是需求不同:
· RADIUS 走 UDP:一问一答、报文短、交换机端口在等着,所以要毫秒级回答,超时就换下一台服务器 —— 重传自己做就够了;
· LDAP 走 TCP:一次查询可能返回一大棵子树,还要保持连接做多次查询。
★★ 这个差别在帧图外面那摞灰格上直接看得见。
★ 常见误解
★★★ 「RADIUS 里存着用户名密码」 —— 通常不存。它是决策点,用户数据往往在 LDAP 或 AD 里。
★★★ 「LDAP 能拦住人」 —— 拦不住。它只回答查询,执行准入的是交换机(靠 RADIUS 的答复)。
★★ 「RADIUS 是加密的」 —— 只有密码那一格做了摘要,其余属性全是明文。所以现在推 RadSec(套 TLS)。