代码改变世界

随笔分类 -  [Wifidog源码分析]

wifidog源码分析 - 认证服务器心跳检测线程

2015-01-20 10:19 by tolimit, 1687 阅读, 收藏, 编辑
摘要: 引言 但wifidog启动时,会自动启动认证服务器心跳检测线程,此线程默认每隔60s与认证服务器交互一次,会将路由器的信息(系统启动时长,内存使用情况和系统平均负载)告知认证服务器,并通过一个"ping"字符串作为信号,而当认证服务器接收到此数据包后,会返回一个"pong"给路由器,具体我们看看代... 阅读全文

wifidog源码分析 - 客户端检测线程

2015-01-19 10:53 by tolimit, 1612 阅读, 收藏, 编辑
摘要: 引言 当wifidog启动时,会启动一个线程(thread_client_timeout_check)维护客户端列表,具体就是wifidog必须定时检测客户端列表中的每个客户端是否在线,而wifidog是通过两种方式进行检测客户端在线情况,一种是定时通过iptables获取客户端出入总流量更新客户... 阅读全文

wifidog源码分析 - 用户连接过程

2015-01-15 11:10 by tolimit, 4525 阅读, 收藏, 编辑
摘要: 引言 之前的文章已经描述wifidog大概的一个工作流程,这里我们具体说说wifidog是怎么把一个新用户重定向到认证服务器中的,它又是怎么对一个已认证的用户实行放行操作的。我们已经知道wifidog在启动时会删除iptables中mangle、nat、filter表中的所有规则,并在这三个表中添... 阅读全文

wifidog源码分析 - wifidog原理

2015-01-14 12:34 by tolimit, 7572 阅读, 收藏, 编辑
摘要: wifidog是一个用于配合认证服务器实现无线网页认证功能的程序,常见的情景就是使用于公共场合的无线wifi接入点,首先移动设备会连接公共wifi接入点,之后会弹出网页要求输入用户名密码,认证过后才能够连入外网。其主页是http://dev.wifidog.org/实现原理 其实wifidog原理... 阅读全文

wifidog源码分析 - 初始化阶段

2015-01-13 16:35 by tolimit, 1821 阅读, 收藏, 编辑
摘要: Wifidog是一个linux下开源的认证网关软件,它主要用于配合认证服务器实现无线路由器的认证放行功能。wifidog是一个后台的服务程序,可以通过wdctrl命令对wifidog主程序进行控制。本文解释wifidog在启动阶段所做的初始化主要工作(代码片段1.1)初始化配置(先将配置结构体初始化... 阅读全文