为了满足计费认证等需求,TL-AC1000portal认证中为第三方认证服务器提供相应接口,用户可根据自己的需求接入第三方认证服务器,实现用户计费认证上网的需求,同时用户也可以使用TL-AC1000内置的认证服务器进行认证计费。

TL-AC1000使用portal进行认证计费的详细设置可以参考文档:[TL-AC1000] Portal功能典型配置案例》

以下分别介绍使用radius认证服务器和本地认证服务器的数据通信过程。

Radius认证服务器

TL-AC1000支持的Radius认证计费类型:只支持按时间计费。

无线终端接入无线网络之后,正常的认证计费的过程如下:

Portal认证流程图

认证计费流程:

第一步:无线终端连接WIFI,访问外网

无线客户端连接上AP发出的WIFI信号后,打开浏览器以http方式访问外网,触发portal认证;

第二步:AP拦截无线客户端访问外网的GET数据包,并重定向到WEB服务器

没有通过认证的无线客户端发往外网的GET数据包会被AP拦截,并且AP会向客户端返回一条重定向条目(假设WEB服务器域名为www.abc.com),重定向条目为http://www.abc.com/?pagetype=xxx&vlan=xxx&staMac=xxx&staIp=xxx&apMac=xxx&apIp=xxx,该条目主要携带以下有效信息:

参数

说明

www.abc.com

WEB服务器地址

pagetype

标志不同的认证方式

vlan

所属的VLAN

staMac

客户端的MAC地址

staIp

客户端的IP地址

apMac

客户端链接的AP设备的MAC地址

apIp

客户端链接的AP设备的IP

第三步:无线终端访问WEB服务器

无线终端根据第二步返回的重定向条目与WEB服务器建立连接;

第四步:WEB服务器向无线终端返回认证页面

WEB服务器向无线终端返回认证登录页面;

第五步:无线终端向TL-AC1000提交用户名和密码

无线终端在认证登录页面填写用户名和密码后点击登录按钮,就可以以GET的方式将usernamepasswordvlanstaMacstaIpAPMacapIp等参数提交给TL-AC1000AC对这些信息进行记录;

第六步: TL-AC1000Radius认证服务器提交认证信息

TL-AC1000在获取客户端提交的信息之后,从vlanstaMacstaIpAPMacapIp参数中确定需要进行认证的设备,然后把所有的参数提交给认证服务器进行认证,参数包括:

User-name

用户名

NAS-Identifier

NAS设备标识

Calling-station-Id

需要进行认证设备的MAC

Called-station-Id

APMAC和对应的SSID

Framed-IP-Address

需要进行认证设备的IP地址

NAS-IP-Address

NAS设备的IP地址

NAS-port

用户接入端口号

NAS-port-type

NAS设备端口类型

User-password

加密后的密码

第七步: Radius认证服务器向TL-AC1000返回认证结果

认证服务器根据TL-AC1000提交的信息判断用户是否通过认证,若不通过认证,Radius反馈NAS该用户非法的信息,若通过认证,则将该设备的相关信息记录,并且向TL-AC1000返回认证结果,返回的响应结果中包括以下参数:

Connect-Info

Radius服务器信息

Framed-IP-Address

为用户提供的IP地址

Framed-Routing

为路由器用户设置的路由方式

Framed-MTU

为用户配置的最大传输单元

Session-timeout

用户可用的会话时长

Idle-timeout

允许用户空闲在线的最大时长

Acct-interim-interval

实时计费时间(AC1000目前不支持每隔一段时间进行实时计费,只通过最后断开时的总连接时间来计费)

第八步: TL-AC1000向无线终端返回认证结果

TL-AC1000根据认证服务器返回来的结果向无线终端返回相应的认证结果,若认证成功,TL-AC1000则根据之前的vlanstaMacstaIpAPMacapIp参数信息对相应设备的上网数据给予放行;

第九步:TL-AC1000Radius认证服务器发送计费开始请求

Tl-AC1000将相应设备的IPMAC等信息提交给Radius认证服务器,请求开始计费;

Acct-Session-Id

表示该次计费的唯一标识

User-name

用户名

NAS-Port-Id

用户接入端口标识

Service-type

服务类型

Framed-Protocol

协议类型

Acct-Authentic

接入认证协议

NAS-Identifier

NAS设备标识

Acct-status-type

计费请求报文的类型

Calling-station-Id

需要进行认证设备的MAC

Called-station-Id

APMAC和对应的SSID

Framed-IP-Address

需要进行认证设备的IP地址

NAS-IP-Address

NAS设备的IP地址

NAS-port

用户接入端口号

NAS-port-type

NAS设备端口类型

第十步:Radius认证服务器对计费开始请求给予回应

Radius认证服务器收到计费请求之后,给TL-AC1000相应的回复,同意开始计费;

第十一步:无线设备断开AP的无线连接

无线设备断开AP的无线连接;

第十二步:AP将设备断开连接的信息告知AC

无线设备断开无线连接之后,AP将该信息上传给AC

第十三步:TL-AC1000Radius认证服务器发送停止计费请求

ACRadius认证服务器发送停止计费请求,其中包括相应的设备的IPMAC和总在线时长等信息;

Acct-Session-Id

表示该次计费的唯一标识

User-name

用户名

NAS-Port-Id

用户接入端口标识

Service-type

服务类型

Framed-Protocol

协议类型

Acct-Authentic

接入认证协议

NAS-Identifier

NAS设备标识

Acct-status-type

计费请求报文的类型

Acct-Session-Time

设备在线时长

Calling-station-Id

需要进行认证设备的MAC

Called-station-Id

APMAC和对应的SSID

Framed-IP-Address

需要进行认证设备的IP地址

NAS-IP-Address

NAS设备的IP地址

NAS-port

用户接入端口号(VLAN信息)

NAS-port-type

NAS设备端口类型

第十四步:Radius认证服务器向TL-AC1000响应计费结束请求

Radius认证服务器收到AC发过来的计费结束请求后,根据设备在线时长统计计费,然后结束计费。

除了客户端主动请求断线外,若用户账号到期,服务器会主动提出断线请求,过程如下:

1、用户在上网期间账号到期,那么服务器会主动发起断线请求Disconnect-Request注:若radius认证服务器在外网,则需要在前端路由器做虚拟服务器开放TL-AC1000UDP3799端口),该断线请求中需要包括以下信息:

NAS-IP-Address

NAS设备的IP地址

NAS-Identifier

NAS设备标识

User-name

需要断开连接的用户名

Calling-station-Id

需要断开连接的终端MAC地址

Called-Station-Id

APMAC和对应的SSID

Acct-Session-Id

计费唯一会话ID

NAS-Port

用户接入端口号(VLAN信息)

注意事项:

a、若Disconnect-Request只包含了User-Name属性,TL-AC1000会将所有使用该用户名认证的终端剔除下线;

b、若要剔除指定的客户端,请在Disconnect-Request中包含Calling-Station-IdAcct-Session-Id等可以标识唯一终端的属性。

2、当AC1000收到该断线请求后,就会向Radius服务器返回响应信息,并且断开相关设备的连接;

3AC1000断开相关设备的连接。

本地认证服务器

当使用TL-AC1000内置的本地认证服务器,可以设置免费用户和正式用户两种类型,免费用户可以设置相应的免费上网时长,正式用户可以设置其账户到期时间。用户可利用正式用户的账户到期时间来进行包月或者包年的计费需求。

其过程主要如下:

第一步到第五步过程与上文使用Radius认证服务器时的过程相同,这里不再赘述。

第六步:返回认证结果

TL-AC1000根据客户端提供的用户名和密码,判断用户是否通过认证,若通过认证则将用户记录,根据用户的IPMAC对相应的数据放行,并返回相应的结果,免费用户返回免费时长,正式用户返回账户有效期等信息;

第七步:无线设备断开连接

无线设备主动断开无线连接;

第八步:无线设备断开连接

无线设备断开连接之后AP将消息上传给ACAC记录相关设备信息;

第九步:TL-AC1000主动断开无线设备的连接

若在无线设备上网期间用户的账号到期了或者免费的时长消费完毕,AC会主动断开无线设备的连接,设备需要上网需要再次进行认证。