集客盒子Wifidog接口说明 一、Wifidog概述 wifidog是搭建无线热点认证系统的解决方案之一,他比nocat更适合互联网营销思路。目前支持openwrt系统,他实现了路由器和认证服 务器的数据交互,在路由器方是用C语言代码,通过wifidog程序和linux iptables防火墙实现接入用户的认证跳转和控制,在认证服务器方 是通过php实现用户的认证流程和管理。
优点:有开源代码,可以很方便的搭建认证系统。 缺点:标准协议是通过iptables方式实现,性能比较差,整体拉低了路由器的数据包处理速度,协议比较繁琐,对认证服务器的造成性能损耗比较大,在安全方面都是明文传输,有一定的安全隐患。 注:集客盒子wifidog在内核实现,已解决安全性和效率问题。
二、认流流程:
以下配置为例: 热点服务器地址为:auth.cnrouter.com 热点服务器端口为: 80 热点服务器路径为: / 下列协议请求信息的蓝色部分参数为集客科技公司在兼容原生WIFIDOG协议的基础上为了根据不同平台新增加的参数。 认证平台搭建请参考《搭建WIFIDOG认证平台.PDF》
三、⽹网关心跳协议 Wifidog将ping协议作为心跳机制向认证服务器发送当前状态信息。实现认证服务器 和每个节点的状态双向健康监测的机制。
请求信息: gw_id=%s sys_load=%lu sys_memfree=%u sys_load=%.2f wifidog_uptime=%lu wmac= 路由器mac地址 gw_address= 路由器网关地址 router_type= 路由器型号 sv= 路由固件版本
回复内容: Pong
例子: GET/ping/ gw_id=jike_weixin&sys_uptime=176213&sys_memfree=35792&sys_load=0.0 0&wifidog_uptime=23602&check_time=120&wmac=00:17:a5:e0:ca: 34&wip=192.168.88.150&gw_address=192.168.8.1&router_type=JIKE-BOX %20WP650&sv=4.1.1060 HTTP/1.0 User-Agent:cnrouter wifidog Host: auth.cnrouter.com
四、用户状态上报协议
请求格式: http://auth_server/auth/? stage= ip= mac= token= incoming= outgoing= gw_id= 路由器授权码
注意: ip,mac,token为⽤用户的基本信息 incoming,outgoing为⽤用户的连接计数信息。 stage为请求类别,值为 counter/ login/ logout,分别表⽰示:已认证/新认证⽤用户 /超时删除的⽤用户。
回复内容: Auth: 状态码 (注意 中间冒号和状态码之间有个空格)
状态码为: 0 认证失败 1 认证成功
例子: GET/auth/?stage=counters&ip=7.0.0.107&mac=00:40:05:5F: 44:43&token=4f473ae3ddc5c1c2165f7a0973c57a98&incoming=6031353&outgoing=827770HTTP/1.0 User-Agent:cnrouter wifidog Host: auth.cnrouter.com!
五、跳转协议
对于新连接⽤用户,路由器将其产⽣生的任意url请求通过302重定向到认证平台。
请求格式: http://auth_server/login/? gw_id= gw_address= gw_port= mac= url= gw_mac= 路由器mac地址
例子: GET /login/? gw_id=808100949391&gw_address=192.168.81.1&gw_port=80&mac=aa:bb: cc:dd:cc:ee&url=http://www.sina.com.cn/ HTTP/1.0 User-Agent:cnrouter wifidog Host:auth.cnrouter.com
六、用户注册协议
用户在平台申请注册,开通互联网权限。由平台将⽤用户请求重定向到路由器, 完成注册。
请求格式: http://gw_ip/wifidog/auth? token=
例子: GET wifidog/auth?token=12312412124 User-Agent:iphone Host:路由器ip
注册请求成功,以307的⽅方式跳转平台的 portal/?gw_id=
七、注册结果确认协议
认证流程⾛走完,路由器会⽤用307跳转⽅方式,将⽤用户请求重新跳转到认证平台。
请求格式: http://auth_server/portal/? gw_id= auth_result= 认证结果
auth_result 为 successed表⽰示⽤用户在路由器注册成功,failed表⽰示⽤用户在路由器注册失败。
例子: GET /portal/? gw_id=808100949391&auth_result=successed HTTP/1.0 User-Agent:cnrouter wifidog Host: auth.cnrouter.com
八、路由器在线升级协议
认证流程⾛走完,路由器会⽤用307跳转⽅方式,将⽤用户请求重新跳转到认证平台。
请求格式: http://auth_server/upgrade/? sv= rmac= router_type=
响应格式: upgrade:md5=cc5ce6c4f7147bbdb1babfc32a44338b#url=http:// 192.168.81.55/static/nolimit_wifidog.trx#ver=4.1.1080 md5 为固件的md5值 Url 为固件下载地址 Ver 为固件版本
例子: GET /upgrade/? sv=4.1.1069&rmac=aa:bb:cc:dd:ee:ff&router_type=JIKE-BOX%20WP650 HTTP/1.0 User-Agent:cnrouter wifidog! Host: auth.cnrouter.com auth_result 为 successed表⽰示⽤用户在路由器注册成功,failed表⽰示⽤用户在路由 器注册失败。
|