openwrt安装nodogsplash

安装nodogsplash
它是基于openwrt上的一个插件,用于实现用户登录验证的,具体见:

https://github.com/nodogsplash/nodogsplash

这个名称很生动,很有趣,称为nodog。其实他是针对openwrt上的另一款类似插件:wifi dog的,那个配置起来比较复杂,需要自己部署验证服务器,不适合我使用。

这个没有看门狗(no dog)的很适合我!

安装插件很简单,telnet连上去后,执行命令:

opkg updateopkg install nodogsplash

注意:
有可能执行第一行更新时报错,无法连接服务器,请检查etc/opkg.conf 中的服务器地址,是否发生了变更。
执行第二行时,可能会提示当前固件版本与服务器上的nodogsplash不匹配,那就先升级现有固件,这里就不展开了,一般不会遇到(但我遇到了,因为我的固件是一个月前下载的,服务器上的版本已升级)

配置nodogsplash

官方有个配置范例介绍:http://wiki.openwrt.org/doc/howto/wireless.hotspot.nodogsplash

但与新版插件不太符合,新版安装后,是没有/etc/nodogsplash/nodogsplash.conf这个配置文件的,需要用winscp手动建立一个

注意:

范例中的前半部分都不要参考,只需要复制nodogsplash章节中的配置内容即可(见下图)
nodogconf.jpg

这里面介绍的很详细,一般都不必修改,唯一容易迷惑的同时也需要修改的是这个GatewayInterface配置

其实它指的是需要由nodog来接管的interface,那就清楚了,本例中就是在network配置中的guest接口,但我们是填写guest吗?

不是,这时候需要通过ifconfig命令来查看下当前的网络接口配置,见下图。
ifconfig.jpg

我们的guest接口分配的是10.0.0.1,因此它的GatewayInterface名称是wlan0-1

你也许会问我,那个guest名称去那儿了?别问我,我也不知道……sign

启动nodog

键入命令:

/etc/init.d/nodogsplash start

查看nodog状态的命令:

ndsctl status
![ndgctl.jpg][3]

最终配置后的nodog状态,注意看第四行,Managed interface :wlan0-1
自动启动nodog

你会发现,重启路由后,nodog怎么不启动??

增加自启动配置!

打开winscp,进入: /etc/hotplug.d/iface
新建文件:95-nodog
修改95-nodog内容:

#!/bin/sh

if [ "$ACTION" = ifup ]; then 
    if [ "$DEVICE" = "wlan0-1" ]; then 
        /etc/init.d/nodogsplash enabled 
    /etc/init.d/nodogsplash start 
    fi 
fi

完成

用电脑或手机连接wifi后,会跳转至认证页面。

本文章由 http://www.wifidog.pro/2015/04/27/openwrt%E5%AE%89%E8%A3%85nodogsplash.html 整理编辑,转载请注明出处

标签: nodogsplash认证, nodogsplash openwrt, nodogsplash分析