大家好,又见面了,我是你们的朋友全栈君。 远程开机这个功能实在屌爆了,工作中会经常遇到需要远程开机的情景,比如说,晚上在家里,突然接到领导的电话需要改东西,然而家里的电脑又没有工作环境,各种工具软件都没有安装,这时如果往公司跑一趟真是麻烦,或者需求等不及你往公司跑一趟,也许这途中公司会损失更多。或者,晚上在家里工作了,第二天忘记把资料带回公司,这时远程开机也显得尤为重要。总之,如果你有远程办公的需求,就会用到远程开机。
最近折腾了一番远程开机,其中走了不少弯路,各种测试,都快把同事的主机测废了,如果他知道我一晚给他的主机开关了几十次,希望他能原谅我。
开始步入正题
设置步骤(与先后顺序无关,随系统不一,可能界面有所不同)
1 设置网卡
在你的系统里找到本地连接,右击–属性–配置
选择网卡的配置,高级选项,关机网络唤醒 魔术封包唤醒 样式比对唤醒 通通开启。各个参数具体有什么区别,目前没有找到官方资料,不过都开启肯定没错。
网卡的电源管理选项中,允许计算机关闭此设备以节约电源一定要关闭,否则网卡断电了就无法唤醒了。
2 设置bois
此处华硕截图为例。每个人跟每个人的电脑也不一样,一般都是在高级电源管理中,此处可以设置
键盘唤醒,
鼠标唤醒,
网卡唤醒,
RTC唤醒(实时时钟Real-Time Clock)。
看你需求了,此处我们需要远程唤醒,网卡唤醒(由PCIE设备唤醒)这一项是一定要开启的。
在这里,我还发现一个小插曲,正好我和同事的电脑是一个ps/2接口的鼠标,usb接口的键盘,另一个是usb接口的鼠标,ps/2接口的键盘,很庆幸,一下就被我发现,ps/2接口的设备才支持设置唤醒功能,usb接口的设备是不支持唤醒的,因为关机后不会保留usb供电。同事的电脑被我设置为可以键盘唤醒,关机后按键盘Ctrl + Esc 瞬间开机,感觉也是爽歪歪啊。
使用过程中发现,即使你只是使用局域网唤醒,那么你的电脑也需要设置arp静态绑定,或者你的路由设置了,你的路由支持唤醒,也可以用路由进行唤醒。
电脑设置arp静态绑定的话,容易造成以后使用这个ip的主机变了,如果不更新arp记录,导致你和它之间无法通信,所以我们采取广播的形式。
例如:ip为 192.169.0.100 mac地址为 11-22-33-44-55-66
我们发送 magic package 时,发送到192.169.0.255
3 arp静态绑定,有广域网唤醒需求的作路由端口转发(不过好像都有此需求)
无论是局域网唤醒,还是广域网唤醒,都需要在路由器设置arp静态绑定(目标主机的ip地址也需要是静态的,不能DHCP分配),就是把ip和网卡的mac地址静态绑定,这样在发魔幻封包数据的时候才能保证送达目的主机,如果不设置绑定,会出现刚关机的几分钟可以唤醒,关机时间长了就无法唤醒了。其实跟关机时间没有关系,并不是我一开始想的关机时间长了网卡断电了。当然如果你在网卡的电源管理设定了允许关闭设备是会出现这种情况。不过我们经过上述设置,已经排除网卡断电的情况,而是arp记录过期,导致找不到mac地址与ip地址对应的记录,就无法发送魔幻数据包。
如果需要从广域网唤醒主机,那么需要在路由做端口转发,如果是多级路由,需要设置多级路由转发。端口转发说起来又够本文以上篇幅了,大家可以搜专门的文章了解。
鉴于我这里也走了不少弯路,许多新手可能也有跟我一样的困惑,上两张图。
端口转发在有的路由里叫虚拟服务器,有的叫端口映射,如下图:
唤醒工具
可以搜索 wake on lan 工具,mac版 windows版 ios版 Android版应有尽有,我windows用的wake-on-lan sender,小巧便捷。
安卓版 百度搜索 android wake on lan 就会出来一堆下载链接。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/143074.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...