2015年6月

Wiwiz虚拟机安装遇到"ErrorCode:4"及解决方法

Wiwiz虚拟机安装遇到"ErrorCode:4"及解决方法

不久以前,我用无线路由器刷DD-WRT + Wiwiz做了几个收费Wifi热点,并赚了些钱,感觉挺不错。

现在需要帮朋友的咖啡厅弄一个带认证的Wifi。其实,他的咖啡厅原来就有无线网络,是两个无线路由器,只不过用的是普通的WEP加密的方式。现在希望改成Web认证,Wiwiz的电子招待券的那种,也就是限制让只有消费的顾客才能上网。而且顾客还需要用手机接收短信进行验证,目的是为了手机顾客手机号,发送咖啡厅的活动信息什么的。我正好手头有Wiwiz的专业版账号,就送给他一个热点。咖啡厅原来的无线路由器不能刷DD-WRT,所以就准备用虚拟机的方法,虚拟机就装在他们咖啡厅银台的电脑里(有线连接到路由器)。

我下载的是Wiwiz官网的虚拟机镜像文件,参考官网的安装指南进行配置。有一点不同的是,Wiwiz虚拟机里的虚拟网卡eth1的默认地址是 192.168.1.250,而我朋友咖啡厅的无线路由器的地址是192.168.0.*,所以就在虚拟机的Linux环境里先用setup命令改了一下 IP设置,修改eth1的地址为192.168.0.250,其他的都没变。
www.2cto.com
开始的时候,我下载的网上的绿色精简版的VMWare。执行“/usr/local/hsbuilder/hsbuilder_setup.sh setup”命令之后,设置到最后的时候遇到了这个错误:

HSBuilder Utility Running Failed!
Error Code: 4
Message: Server is not reachable.

我在虚拟机里ping外网网站的地址,都ping不通,也就是说虚拟机根本连不上外网。我估计可能是VMWare的NAT服务设置的问题。一检查吓一跳,果然是绿色精简版,宿主机里压根就没有安装NAT服务,也没有NAT的虚拟网卡。
于是,我就去下了一个正版的VMWare Player,估计问题就可以解决了。可是重新安装之后还是报同样的错,也依然不能从虚拟机里ping通外网。而且郁闷的是在百度里搜了很久也没找到这个错误的说明。怎么折腾还是ping不通。我只好再仔细看一遍安装指南。

果然,我发现我之前看漏了这么一句话:如你改变了虚拟机原来的网络设置,那么请执行“service network restart”,以使新的设置立即生效。
www.2cto.com
我就执行了这个命令,居然马上就可以Ping通外网了。然后就重新设置Wiwiz程序,果然没有报错了,一切都顺利完成。

总结起来,Wiwiz虚拟机里不能连接外网的原因就是两个:

  1. 绿色精简版的VMWare没有NAT服务,不能用这个版本。一定要用正版的VMWare。其实,正版的VMWare Player是免费的,所以根本没必要用绿色精简版。
  2. 如果改变了Wiwiz虚拟机镜像原来的IP设置,之后一定要执行“service network restart”,这样设置才能生效,否则还是不能通外网的。

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

什么是wifidog认证功能?什么是wifidog?

wifidog是路由器的一种上网认证功能, 如果开启此功能, 所有通过路由器上网的设备(电脑,笔记本,手机等)都会跳转到指定的界面, 需要通过某种方式认证才可以上网.

具体这种wifidog功能路由器系统(固件)有DD-WRT ,OPEN-WRT等.
以DD-WRT 系统为例,可以在"服务--->热点" 找到WIFIDOG功能 ,如下图:
20131203110312_4727.jpg

本文章由 http://www.wifidog.pro/2015/06/14/wifidog%E8%AE%A4%E8%AF%81%E5%8A%9F%E8%83%BD%E9%85%8D%E7%BD%AE.html 整理编辑,转载请注明出处

在OpenWrt中安装Wiwiz实现portal认证

1.系统需求
硬件

  • 已安装了OpenWrt固件的无线路由器(典型的有Linksys WRT54G系列)

软件

  • Wifidog

你可以尝试执行以下命令安装Wifidog:

opkg update # Optional
opkg install wifidog

复制代码
将无线路由器接入Internet。
设置并启用无线网络,即,使用无线路由器创建一个可用的Access Point。

2.在Web控制面板中创建热点
登录到Web控制面板,访问http://cp.wiwiz.com/as/s/menu
点击“我的热点”,在接下来的页面中点击“创建热点”。根据页面的提示完成各项设置,点击保存。
你将会看到你刚创建热点的Hotspot ID。记下它,接下来的步骤将会用到它。

3.安装与设置HotSpot Builder Utility组件
将一台PC机连接至你的无线路由器,用SSH方式连接到无线路由器。执行以下命令:

cd; wget http://dl.wiwiz.com/hsbuilder-util-latest-OpenWrt.tar.gz
cd /; tar -zxf /root/hsbuilder-util-latest-OpenWrt.tar.gz
/usr/local/hsbuilder/hsbuilder_setup4openwrt.sh setup

复制代码
然后按照提示完成设置。
特别地,你需要输入的Hotspot ID就是你在Web控制面板中创建的热点的Hotspot ID(不是热点的名称)。User Name是你在控制面板注册的用户名。

提示:
安装时你将会被提示输入External NIC 与 Internal NIC。External NIC 代表的是连接Internet的网络接口。Internal NIC 代表的是连接局域网的网络接口。如果你不确定,可以执行ifconfig命令,并从执行结果中找到它们。

现在,如果没有报错信息,那么安装已经完成了。
你可以使用一个Wi-Fi客户端(如带WLAN适配器的PC或者支持Wi-Fi的移动电话)测试一下你的热点:

  • 搜索可用Wi-Fi热点,并连接到你的热点。
  • 打开Web浏览器,输入任何一个HTTP开头的网址。如果你的热点的认证页面能够显示出来,就说明你的热点已经正常运转了。

本文章由 http://www.wifidog.pro/2015/06/11/openwrt-install-wiwiz.html 整理编辑,转载请注明出处

编写自己的WifiDog认证服务器

这次我使用的是php来编写auth_server服务器,因为这样比较简单。
1.首先是login.php

<?php  
include './tool/MySQLHelper.php';  
if (!empty($_GET["mac"])){  
    $result = selectMacByToken($_GET["mac"]);  
    if (!empty($result)){  
        header("location: http://192.168.1.1:2060/wifidog/auth?token=".$result);  
    }  
    else {  
        header("location: http://xxxxx/WelcomePage.php?mac=".$_GET["mac"]);  
    }  
}  
else {  
    header("location: http://xxxxx/WelcomePage.php?mac=".$_GET["mac"]);  
}  
?>  

2.ping.php

<?php  
echo "Pong";  
?>  

这里没有做额外的处理,只是简单地向wifidog回应一个Pong。
3.auth.php

<?php  
// 后门  
if ($_GET["token"] == "123"){  
    echo "Auth: 1";  
    return;  
}  

if (!empty($_GET["token"]) && isset($_GET["token"])){  
    //获取$result的过程//  
    isValidate($result);  
    //**后续处理**//  
    return;  
}  
else if((!empty ($_GET["mac"])) && isset($_GET["mac"])){  
    //**获取result*//  
    $result = isSubscribeByMac($_GET["mac"]);  
    isValidate($result);  
    return;  
}  
else  
{  
    echo "Auth: 0";  
}  

// 输出是否合法.  
function isValidate($result){  
    if ($result == 1){  
        echo "Auth: 1";  
    }  
    else {  
        echo "Auth: 0";  
    }  
}  
?>  

这里根据一些参数来获取$result,从而决定是否允许认证。
4.welcomePage.php以及Portal.html就不一一列举了。

本文章由 http://www.wifidog.pro/2015/06/08/wifidog%E8%AE%A4%E8%AF%81%E6%9C%8D%E5%8A%A1%E5%99%A8-4.html 整理编辑,转载请注明出处