安裝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章節中的配置內容即可(見下圖)
這里面介紹的很詳細,一般都不必修改,唯一容易迷惑的同時也需要修改的是這個GatewayInterface配置
其實它指的是需要由nodog來接管的interface,那就清楚了,本例中就是在network配置中的guest接口,但我們是填寫guest嗎?
不是,這時候需要通過ifconfig命令來查看下當前的網絡接口配置,見下圖。
我們的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 整理編輯,轉載請注明出處