基于无公网IP网络条件下远程开机的实现及其应用研究

(整期优先)网络出版时间:2021-03-22
/ 2


基于无公网 IP网络条件下远程开机的实现及其应用研究

房宇

西安市临潼区教学研究室


[摘要] 社会的不断发展,提升了人们对工作、生活的要求,便捷、高效、准确已成为当前社会的新准则,物联网技术应运而生,而物联网技术的重要组成部分P2P技术已被广泛应用,而基于无公网IP网络条件下远程开机的实现及其应用,正是P2P技术的基础,笔者意在结合自己在远程开机及其应用方面实践经历,与大家分享。

[关键词] 网络条件下 远程开机实现 应用研究

随着信息技术的发展,互联网的应用已植根于社会的各个领域,小,可方便衣食住行,生活点滴;大到助力经济发展,超级工程。人们对信息网络的依赖度与日俱增,如影随行。而近年来,基于互联网技术的不断升级,衍生的物联网技术被广泛应用于社会生活的各方面,如家电的远程控制、电表的远程缴费、智能门锁的远程授权开合等等,无不显示着P2P技术(点对点通信技术)所焕发出来的勃勃生机,处处彰显着“科技以人为本”的理念,而远程电脑启动(即,冷开机),正是P2P技术的典型应用,下面我将结合实践经验,从远程开机概念、实现过程及原理、应用前景三个方面,做具体分析。因基于无公网IP条件下的远程开机及应用涉及许多电脑网络技术,在这里笔者也很想与学校网管共同分享、借鉴和提高。

一、远程开机的概念

远程开机Wake onLAN(WOL),俗称远程唤醒,是现在很多网卡都支持的功能。而远程唤醒的实现,主要是向目标主机发送特殊格式的数据包,是AMD公司制作的MagicPacket这套软件以生成网络唤醒所需要的特殊数据包,俗称魔术包(Magic Packet)。MagicPacket格式虽然只是AMD公司开发推广的技术,并非世界公认的标准,但是仍然受到很多网卡制造商的支持,因此许多具有网络唤醒功能的网卡都能与之兼容。而具体到远程开机:即,冷开机,是指在无任何人为触碰电脑主机的情况下,实现电脑的远程启动。

二、无公网IP远程开机的实现过程及原理

无公网IP远程开机有两种实现方式:

(一).使用花生棒等穿透硬件配合路由器实现

目前,随着信息化应用面的不断扩大,各种公网接入设备数量剧增,公网IP地址(这里专指IPV4协议)已经成为一种紧缺的资源,一般情况下是需要购买的,而对于普通用户而言,几乎得不到。在这种情况下,要实现无公网IP地址下的远程开机,就可通过花生壳、向日葵等这类内网穿透服务来实现,此处以花生壳系列花生棒穿透服务为例,具体介绍实现远程开机的过程。

内网穿透的概念:利用某类互联网服务+附属硬件的形式,使局域网中的一台电脑或附属硬件成为公网可直接访问的服务器,通过这台服务器可以映射访问局域网中的其它电脑。这种技术被称为内网穿透。

1.设置被启动主机的网卡为伺服状态

要实现远程唤醒主机,首先应具备两个条件:

(1)主机必须保持通电状态。

(2)网卡必须设置为伺服状态(此处以华硕P50主板为例,介绍其设置方法,其它主板详见说明书)。

设置方法:在BIOS的POWER SETTINGS中设置:suspend mode:[s1(pos)only] ;APM CONFIGRUATION下,restore on AC power loss:[power on] ; 单选Power on From S5 BY PME#[lPME唤醒功能]为Enabled。

注:A.再次进入WINDOWS系统抄下被启动主机的MAC地址,备用。B.设置被启动主机在局域网中的IP地址为固定IP地址,同时应注意所设置的IP地址属于路由器DHCP地址池所在范围,且不冲突。

2.对路由器的设置

要实现远程开机,路由器的设置是重点,它是控制端与被控制端之间的桥梁,具体设置过程如下:

(1)进入路由器,查看WAN口所显示的公网IP地址,并抄记备用。

(2)IP地址与MAC地址的绑定

60584b0fe1737_html_99bdc983a550b15c.jpg

这里是将被唤醒主机的IP地址与其网卡的MAC地址进行绑定,为后面MAC地址广播做了预先设置。

(3)设置转发规则。例图如下:

60584b0fe1737_html_e4c0b8bed410c011.jpg

这是路由器设置的核心一步,其内部执行过程为,当公网IP地址访问设定的路由器服务端口号时,则以UDP协议的形式,自动去访问被启动主机网卡IP地址(即192.168.0.14)所对应的内部端口号8084。因在被启动主机关机的情况下,路由器无法进行IP地址广播,只能通过预先设置的IP地址与MAC地址的绑定关系,找不对应主机的MAC地址,从而找到对应主机网卡,最后将主机远程唤醒。

3.局域网内测试

在局域网内的一台电脑上,运行小程序Wake On Lan。例图如下:

60584b0fe1737_html_33ffcdca743cfa9b.jpg

在这里,输入/选择相关信息后,点击“Wake Up”,就可在局域网进行测试,如被唤醒主机启动了,则表示在局域网内的远程开机成功了。

4.接入花生棒硬件,实现内网穿透

将花生棒通电后与光猫的LAN口连接,同时要求下级路由器也与光猫的LAN口连接。然后登录花生壳管理界面(b.oray.com)后,输入用户名、密码(用户名为花生棒硬件表面印的SN号;密码为花生棒硬件表面印的初始密码),进入后可看到光猫(安装宽带时,运营商提供的入线光信号转换设备)为花生棒自动分配了一个局域网IP地址,此时花生棒就成为了局域网内的一台电脑,实现了网络穿透。

5.设置花生棒端口映射

花生棒实现了网络穿透,只是将花生棒引入了局域网,作为在局域网中与路由器(被唤醒主机就连接在这台路由器的LAN口上)平行的一台电脑,要实现通过花生棒唤醒远程主机,则必须通过两个UDP协议端口映射级联触发来实现,具体做法如下:

再次登录花生壳管理界面(b.oray.com),设置端口映射,例图如下:

60584b0fe1737_html_bb493b7b4f0c6e0b.jpg

3z5734562.zicp.vip网址为花生壳平台自动生成,无法更改;对外端口23235为平台自动生成,无法更改;内网主机:填写路由器的局域网IP地址;内网端口:填写上面“(二).对路由器的设置”中“设置转发规则”里的路由器服务端口8084。此时平台就生成一组信息,3z5734562.zicp.vip:23235;192.168.1.223:8084。

至此花生棒端口映射设置完成,然后运行小程序Wake On Lan,进行无公网IP条件下的远程测试,填入/选择下图信息:

60584b0fe1737_html_c722ea8ffc8bbab9.png

当点击“Wake up”后,系统就会按照花生棒事先设定UDP端口映射形式去访问下级路由器IP地址及服务端口(即192.168.1.223:8084),而路由器8084服务端口收到数据帧后,就会继续去执行下一个UDP端口映射,如下图:

60584b0fe1737_html_e4c0b8bed410c011.jpg

而这里的192.168.0.14,正是被唤醒主机的IP地址,因被控主机此时未开机,路由器无法进行IP地址广播,找不到IP地址,所以只能通过原先在路由器上设置的IP地址与MAC地址的绑定关系,通过MAC地址找到被控主机的网卡(被控主机的网卡原先已设置为伺服状态,所以路由器可以根据MAC地址找到对应的网卡),这样就实现了远程主机的开启。

(二).手机式渐接开机实现

随着手机APP应用的增加,手机能完成的事情越来越多,近日笔者就发现了一款可在内网开机的手机应用软件---远程开机棒,只需将待开机的电脑做基本的设置(前面已讲过),就可实现手机在内网的网络开机,但它仅仅是内网,外网依然无法实现纯软件开机。

此时,我在想如果能在网上找一款手机远程控制手机的APP应用,就可以在外网直接“插手”内网的事,尤如一只长长的手,直接点击处于内网手机上的“远程开机棒”软件,从而实现了渐接的远程电脑开机。

经过在网上的一番寻找,终于找到了这样一款手机远程控制手机的软件---AirDroid。该软件分为主控端AirMirror和客户端AirDroid,主控端安装在控制手机上,客户端安装在被控制机上,这里需要特别强调两点:

首先,被控端手机一定要执行免ROOT操作(手机ROOT是指安卓手机获取权限的意思,手机ROOT后,就可获取手机系统的超级管理员权限,可以安装各种功能软件,而不受任何使用限制。)否则,主控端手机远程被控端手机时,就会出错。

其次,被控端手机一定要接入内网WIFI,并可正常上网,否则远程开机棒将无法搜索到内网待开机电脑的IP地址。

总之,通过手机远程控制手机,配合内网远程开机棒,我们也可以完成纯软件远程开机。

综上,不论使用哪种方式实现了无公网IP条件下的远程唤醒,如何再实现远程电脑的应用性操作,才是终极目标,否则前面的工作将失去意义,这里有两种远程电脑操作形式。

A.远程桌面连接

远程桌面连接是WINDOWS操作系统内置一个远程电脑操作应用,它不用借助任何第三方软件即可实现。具体实现的方法,网上学习资料很多,可自行参看。

B.远程控制软件Teamviewer15

此软件是一款远程电脑控制软件,目前对个人用户非商业化应用是免费的,用邮箱注册即可使用,只需在控制端、被控制端分别安装即可,同时还推出手机端APP,这样用手机也可以远程电脑操作,详细使用方法,网上相关资料很多,自行参看。

注:被控制端一定要设置为随系统自动启动,切记!

三、应用前景

远程电脑启动及远程应用性操作,在一般人的日常工作、学习中不常用,但作为一名学校的电教技术人员,将其部署起来,有备无患,有时甚至事半功倍,若深挖、活用其实现过程中所涉及的技术,亦可实现其它实用性应用,毕竟科技最终“以人为本”。

综上所述皆是笔者在基于网络条件下远程开机及应用时的一些实践经历,有成功的小惊喜,也有失败的小沮丧,但不论成败,探索永远充满乐趣。

7