Wifidog扫盲篇

news/2025/2/23 4:30:39/
何谓wifidog?wifidog即利用iptables规则结合认证服务器可以管理上网客户端的东东。
当然管理客户端一定是需要认证服务器吗?有个仿wifidog的nodogsplash地址如下
https://github.com/nodogsplash/nodogsplash

官网的wifidog代码比较少,复杂度也一般功能部分无非有以下几个:
1. 客户端列表的超时检测线程。
2. wifidog程序和控制程序wdctl通信线程(个人感觉设计不好, 像Squid直接发送信号来处理)。
3. wifidog和认证服务器心跳线程。
4. 内置http处理线程,http部分差用多线程+阻塞模式(效率不高)。

官网wifidog各文件功能介绍
1. auth.c 负责和认证服务器登录、登出功能和客户读列表超时检测实现。
2. centralserver.c实现了和认证服器连接和参数的实现.
3. client_list.c 实现客户端管理的添加、删除、查找和拷贝。
4. conf.c 实现对配置文件的解析
5. debug.c 实现输出日子到stderr或者syslog
6. firewall.c封装了一些针对host和client的管理iptables规则方法。
7. fw_iptables.c封装了iptables使用方法并初始化wifidog默认规则。
8. gateway.c各个模块的初始化及信号管理。
9. http.c实现了http默认路径、”/auth”、”/wifidog”、”/about”、”/status”的回调。
10. httpd_thread.c适配了libhttpd http封装库。
11. ping_thread.c处理心跳。
12. pstring.c更佳容易使用随意变动char* 字符串。
13. 对malloc、read、strdup等常用调用做了更安全的封装。
14. simple_http.c封装了http通信协议库的调用。

具体细节就不多说了,太罗嗦了,自己看文档吧。
wifidog内置http服务 libhttpd 库manual手册地址:
http://www.hughes.com.au/products/libhttpd/libhttpd.pdf


http://www.ppmy.cn/news/675967.html

相关文章

无线热点认证解决方案 WifiDog

WifiDog 是一款开源的用来实现无线认证的软件,可以集成到路由器或者网关中,对于连接到路由器或者网关的设备,使其先登录云端认证服务器,然后通过认证才能上网。比如在星巴克上网,浏览器会先弹出一个广告页面&#xff0…

wifidog基础

定义: wifidog是路由器的一种上网认证功能, 如果开启此功能, 所有通过路由器上网的设备(电脑,笔记本,手机等)都会跳转到指定的界面, 需要通过某种方式认证才可以上网.目前支持DD-WRT以及OPEN-WRT系统,他实现了路由器和认证服务器的数据交互,…

GitHub+PicGo制作个人图床

目录 一、前言 二、新建Github仓库 ​编辑 三、生成token 四、配置PicGo 五、上传图片 六、新版的PicGo出了很多新功能大家可以探索一下。​编辑 一、前言 PicGo是一个用于快速上传图片并获取图片 URL 链接的工具:Releases Molunerfinn/PicGo GitHub GitHub是一个在…

密码局题库

密评题库 其他人的答题结果,大家综合评估 其他人的答题结果,大家综合评估 完整版q2864245246 序号 题型 题干 选项A 选项B 选项C 选项D 参考答案 解析 参考答案2 解析 参考答案3 60 单项选择题 关于国家密码管理局的主要职责,下列说法错误的…

数据结构--顺序表VS链表

数据结构–顺序表VS链表 逻辑结构 存储结构 顺序表: 优点:支持随机存取、存储密度高 缺点:大片连续空间分配不方便,改变容量不方便 链表: 优点:离散的小空间分配方便,改变容量方便 缺点:不可随机存取,存储密度低 基本…

VS Code C++迎来套件更新,注释定义方便快捷

近日微软对VS Code C进行套件的更新,新加入名为“Call Hierarchy”的功能,而这个**ERP**功能可以让用户更加直观地理解代码函数之间的引用关系,同时该版本还让开发者更容易复制注释与定义,提升此类内容编写时的自由度。 据悉&am…

EIA-CEA-861-D协议分享(免费)

https://pan.baidu.com/s/1oIhTUm4dc3ZtKCohxvH3bA k3j8

win10系统ISE14.7仿真报错Simulator:861 – Failed to link the design 解决办法

解决方法很简单,亲测有效 找到安装文件夹,依次找到Xilinx\14.7\ISE_DS\ISE\gnu\MinGW\5.0.0\nt\libexec\gcc\mingw32\3.4.2 下的collect2文件即可。