集客盒子Widog V2.0 【集客出品】
一、Wifidog概述
wifidog是搭建无线热点认证系统的解决方案之一,他比nocat更适合互联网营销思路。目前支持openwrt系统,他实现了路由器和认证服 务器的数据交互,在路由器方是用C语言代码,通过wifidog程序和linux iptables防火墙实现接入用户的认证跳转和控制,在认证服务器方 是通过php实现用户的认证流程和管理。
优点:有开源代码,可以很方便的搭建认证系统。
缺点:标准协议是通过iptables方式实现,性能比较差,整体拉低了路由器的数据包处理速度,协议比较繁琐,对认证服务器的造成性能损耗比较大,在安全方面都是明文传输,有一定的安全隐患。
注:集客盒子wifidog在内核实现,已解决安全性和效率问题。
二、认流流程:
以下配置为例:
热点服务器地址为:auth.cnrouter.com
热点服务器端口为: 80
热点服务器路径为: /
下列协议请求信息的蓝色部分参数为集客科技公司在兼容原生WIFIDOG协议的基础上为了根 据不同平台新增加的参数。
认证平台搭建请参考《搭建WIFIDOG认证平台.PDF》
三、网关心跳协议
Widog将ping协议作为心跳机制向认证服务器发送当前状态信息。实现认证服务器和每个节点的状态双向健康监测的机制。
请求信息:
http://auth.cnrouter.com/ping/?
gw_id=%s
sys_load=%lu
sys_memfree=%u
sys_load=%.2f
widog_uptime=%lu
check_time= 检查周期
gw_mac= 路由器mac地址
client_count= 连入路由器用户数
gw_address= 路由器网关地址
router_type= 路由器型号
wan_ip= wan口地址
sv= 路由固件版本
回复内容:
Pong
例子:
GET /ping/?
gw_id=1776&sys_uptime=1932&sys_memfree=36028&sys_load=0.07&widog_uptime=18&check_time=60&gw_mac=00:17:a5:e0:ca:34&wan_ip=192.168.81.22&clientcount=2&gw_address=192.168.8.1&router_ type=JIKE-BOX%20WP650&sv=4.2.35 HTTP/1.0
User-Agent:cnrouter widog
Host: auth.cnrouter.com
四、用户状态上报协议
请求格式:
http://auth_server/auth/?
stage= 请求类型
ip= 客户端ip地址
mac= 客户端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&out going=827770HTTP/1.0
User-Agent:cnrouter widog
Host: auth.cnrouter.com
五、跳转协议
对于新连接用户,路由器将其产生的任意url请求通过302重定向到认证平台。
请求格式:
http://auth_server/login/?
gw_id= 热点账号
gw_address= 网关地址
gw_port= 网关端
mac= 客户端mac地址
url= 跳转前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 widog
Host: auth.cnrouter.com
六、用户注册协议
用户在平台申请注册,开通互联网权限。由平台将用户请求重定向到路由器, 完成注册。
请求格式:
http://gw_ip/widog/auth?
token=
例子:
GET widog/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 widog
Host: auth.cnrouter.com
八、在线升级协议
路由器请求平台进行自身升级。
请求格式:
http://auth_server/upgrade/?
sv=
gw_mac=
router_type=
响应格式:
upgrade:md5=cc5ce6c4f7147bbdb1babfc32a44338b#url=http:// 192.168.81.55/static/nolimit_widog.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 widog
Host: auth.cnrouter.com
auth_result 为 successed表示用户在路由器注册成功,failed表示用户在路由器注册失败。
九、远程配置协议
路由器以热点运营里面的检查周期定时向平台发起配置请求,平台根据相关信息对路由器进行配置和操作。
请求格式:
http://auth_server/control/?
action= Request
gw_mac= 网关mac地址
ssid= 无线ssid
gw_id= 热点账号
ver= 网关固件版本
wan_ip= 网关外网ip
响应格式:
平台响应内容根据需求进行,为下列三类配置:
格式:
任务序号;配置类型;配置项;具体参照例子
平台响应内容根据需求进行,为下列三类配置:
热点运营配置(widog):
ucode 热点账号 少于60字节
enable 启用认证 0 关闭 1 开启
Host 热点服务器地址
port 热点服务器端
req 热点服务器路径
Checktime 检查周期
Timeout 用户超时周期
whitemac 免认证mac名单
Whiteurl 免认证域名名单
apple 苹果支持 0 关闭 1 开启
例子:
task_id=10086;widog:enable=1;host=auth.cnrouter.com;timeout=1200;
无线配置(wi):
ssid 无线名称
例子:
task_id=10087;wi:ssid=jike_10086
系统命令(system):
restart 重启
upgrade 升级
例子:
task_id=10088;system:restart;
注意:所有控制命令都以分号";"结尾。
配置完成以后路由器向平台汇报配置任务状态,格式如下
version 2.0 http://auth_server/control/?
action=report
gw_mac= 网关mac地址
task_id= 任务序号
gw_id= 热点账号
ret= 0 完成 -1失败
wifi营销交流群:34287961