下载后可任意编辑无线局域网中 RADIUS 协议原理与实现 1 引言 远程认证拨号用户服务协议(Remote Authentication Dial In User Service, RADIUS)最初是由 Livingston 公司提出的一个为拨号用户提供认证和计费的协议。后经多次改进,逐渐成为一项通用的网络认证、计费协议,并定义于 IETF 提交的 RFC2865 和RFC2866 文件中。RADIUS 协议以 Client/Server 方式工作,客户端为网络接入服务器(NAS),它向 RADIUS 服务器提交认证、计费等信息,RADIUS 服务器处理信息并将结果返回给 NAS。 RADIUS 协议的应用范围很广,在移动、数据、智能网等业务的认证、计费系统中都有所应用。无线局域网的 802.1X 认证框架中,在认证端也建议使用 RADIUS 协议。 本文将论述 RADIUS 协议的原理,并探讨它在 WLAN 中的应用及实现方案。 2 RADIUS 协议 2.1 WLAN 网络模型 实际商用的无线局域网,可以用局域网交换机来实现 802.1X 认证协议中的端口控制功能。为保证网络的安全性,在无线局域网的出口和认证端应加上防火墙。RADIUS 服务器和数据库还可以实行主、备结构,以保证网络的健壮性。 网络模型如下图所示:图 1 无线局域网网络模型 无线局域网的认证端由 RADIUS 服务器、网络接入服务器(NAS)和数据库组成。其中: NAS:作为 RADIUS 服务器的客户端,向 RADIUS 服务器转交用户的认证信息。并在用户通过认证之后,向 RADIUS 服务器发送计费信息。 RADIUS 服务器:作为认证系统的中心服务器,它与 NAS、数据库相连,它接受来自NAS 提交的信息,对数据库进行相应的操作,并把处理结果返回给 NAS。 数据库:用于保存所有的用户信息、计费信息和其他信息。用户信息由网络管理员添加至数据库中;计费信息来自于 RADIUS 服务器;其他信息包括日志信息等。 2.2 RADIUS 的数据包结构 RADIUS 是应用层的协议,在传输层它的报文被封装在 UDP 的报文中,进而封装进 IP 包。 RADIUS 认证使用 1812 端口,计费使用 1813 端口。下载后可任意编辑 以太网上的 RADIUS 封装后的包结构:来RADIUS 数据包分为 5 个部分: (1) Code:1 个字节,用于区分 RADIUS 包的类型:常用类型有: 接入请求(Access-Request),Code=1;接入应答(Access-Accept),Code=2;接入拒绝(Access- Reject),Code=3;计费请求(Accounting-Request),Code=4 等。 (2)Identifier:一个字节,...