我也有双“千里眼”──远程监视系统架设

网络与通信

最近,笔者所居住的小区接连发生几起入室盗窃案,小偷都是趁上班时间家中无人时破门而入的。一时间人心惶惶,上班时都不安心,总惦记着家里的情况。要是能拥有神话故事中的千里眼,能随时观察到家里的情况,那该有多好呀。
通过电脑科技,我们还真能拥有这双“千里眼”!条件也不高,只要有计算机和摄像头,并已接入了Internet就可以了(当然最好是宽带网,例如ADSL或者FTTB+LAN)。
现在,我们就一起来搭建这双“千里眼”──远程监视系统吧。

一、要实现的目的

搭建了监视系统后,我希望能够在单位计算机上,通过Internet随时观看家里的情况。而我每天要做的,只是在上班前将计算机电源打开。

二、物理系统的搭建

既然要进行监视,摄像头是不可少的。这东西不贵,30万像素的200元就搞定了。如果希望得到满意的视觉效果,可花600元买个130万像素的。摄像头的安装并不难,把它插在电脑的USB口上,然后安装驱动程序就可以工作了。不过,要搭建家庭监视系统,对摄像头的安放位置就有一定要求了。通常,我们需要将它安放在天花板上正对着门的位置。如果USB线没有这么长,可去市场上买一根专用USB延长线。

三、监视系统的软设置

我们的监视系统是这样工作的:当家里的计算机(以下简称服务器)开机后,自动拨号接入Internet,如果断线还会自动重拨。然后,我们在单位计算机(以下简称监控机)上首先查询到服务器端的公有IP地址,然后通过这个IP地址,利用远程控制打开服务器的视频聊天软件(如微软的NetMeeting),同时启动监控机的视频聊天软件,然后将两者建立连接,把服务器端摄像头捕获的画面传送到监控机端以达到实时监视的目的。
这其中涉及3个知识点:
1.开机后自动拨号连接Internet,断线重拨
2.服务器端(被监视计算机)公有IP地址的获得
3.利用远程控制启动视频聊天软件
下面笔者就以ADSL虚拟拨号接入方式为例,讲述以上3点具体实现过程。

1.开机后自动拨号连接Internet,断线重拨

首先我们需要对ADSL虚拟拨号进行一定的设置:保存ADSL拨号用户名和密码,并取消拨号进行时的任何提示(尤其是用户名和密码提示)(图1)

图1
图1

然后创建一个计划任务,让计算机每次开机时自动调用已经配置好的ADSL拨号连接。
最后修改拨号连接的“属性”,将断线后自动重拨的间隔时间设为“0”,然后设置一个足够大的重拨次数即可。
具体设置方式请参见《电脑报》第25期D9版《铺平服务器架设之路》一文的第二部分“自动连线、断线重拨”。

2.服务器端公有IP地址的获得

由于我们启动计算机后就离开了,所以并不知道计算机连接Internet后公有IP地址是多少。而且,断线重拨后的IP地址又将发生变化。如何知道当前服务器端的公有IP地址呢?动态域名解析服务能够很好地解决这个问题。
动态域名解析的基本思路是在计算机上安装一个动态域名解析客户端,并申请一个动态域名服务商提供的域名。每当计算机连接上Internet时,域名解析客户端便会自动将当前公有IP地址发送给动态域名服务商,将该IP地址与你申请的域名联系起来。这样大家便可以通过该域名了解到你的IP地址并对你进行访问。
动态域名的提供商很多,比较出名的有DNS2Go和《花生壳》。下面我介绍一下《花生壳》的注册和使用方法:
在《花生壳》的网站http://www.oray.net上依照提示进行注册,例如我注册的域名为“feiran.vicp.net”(图2);然后在家里的计算机上下载客户端软件并安装。注意安装过程中需要填写刚才你申请的账户名和密码,请保持二者的一致性,否则动态域名解析服务无法正常启用。安装后,每次开机时《花生壳》服务会自行启动。现在当你接入Internet后,我们便可以通过ping feiran.vicp.com来获得当前服务器的公有IP地址了(图3)

图2
图2
图3
图3

3.利用远程控制启动视频聊天软件

知道了服务器的IP地址后,我们就可以利用远程控制对服务器进行控制了。
关于远程控制,《电脑报》办公网络版最近登载过多篇文章,主要讲述的是WinVNC这个软件,如第24期D11版的《用WinVNC实现远程控制》一文。下面,我简要介绍如何通过WinVNC控制服务器并启用NetMeeting。
首先,在http://www.onlinedown.net/winvnc.htm下载WinVNC软件。然后,在服务器端安装该软件。需要注意的是:在安装进行到最后时,提示我们是否将WinVNC作为Windows服务来安装,选择“是”,并任意输入一个授权密码,这样每次计算机启动时,WinVNC便会自动加载。当然,我们也可以在安装后把WinVNC App Mode(被监控端运行的程序组)直接拖动到“启动”组中来达到同样的效果。
而在监控机(本例中即单位的计算机)上,我们要执行WinVNC Viewer(控制端组件)。然后,在VNC服务器一栏中输入刚才通过ping获得的公有IP地址(图4),接下来,系统会提示你输入授权密码。在输入被监控端(服务器端)设置的授权密码后,连接建立!现在,我们可以像使用本地计算机一样使用家里的那台服务器了。

图4
图4

接着要做的,就是启动监控机上的NetMeeting软件,以刚才获得的IP地址进行呼叫。接着利用远程控制软件启动服务器端的NetMeeting,并接受呼叫(图5)。当NetMeeting建立连接以后,再次点击服务器端NetMeeting主界面上的“开始视频”按钮,家里边的情况就被实时地传输到监控机上了(图6)!怎么样,效果还不错吧?如果发现了异常,我们直接打电话给物管报警就是了。
图5
图5
图6
图6

注:也许有人会说,通过远程控制启动服务器端的NetMeeting后就已经可以看到摄像头捕获的图像了,没有必要在两端计算机上建立NetMeeting连接。是的,通过远程控制,的确可以看见远端计算机桌面上显示的任何信息。但是,动态影像(例如播放的VCD或rm文件)是无法通过远程控制进行流畅传输的。要想观看到流畅的动态影像,必须借助视频聊天软件。