记录一下远程开机

发布时间 2024-01-04 16:51:56作者: fwindpeak

可以在家里开办公室的电脑。

打开主机的网络开机功能

比如华硕的主板,参考这个链接:
https://www.asus.com.cn/support/FAQ/1045950/
image

如果是windows的系统,可能还要在电源选项里配置一下。

找一个WOL工具

找一个wake on lan的工具,可以局域网发一个魔法包唤醒电脑。GUI版的有很多,这个C语言的简单又好用:
https://github.com/GramThanos/WakeOnLAN

做一个web api用于远程唤醒

运行在openwrt的路由器上,或者局域网任意一台开着机的电脑上。
可以用简单的python bottle做一个,类似这样:

#!/usr/bin/env python3

from bottle import route, run, template
import os

@route('/wake/<mac>')
def wake(mac):
  wakeOnLanPath="WakeOnLAN_v0.3_linux/WakeOnLAN"
  cmd = "{wake} {mac} 192.168.0.255"
  result = os.popen(cmd.format(wake=wakeOnLanPath,mac=mac))
  return template('<b>result:</b><pre>{{output}}</pre>',output=result.read())

@route('/wake')
def wakeDefault():
  return wake("00:00:00:00:00:00")


run(host='0.0.0.0', port=9980)

再用frp之类的工具暴露一下这个web api的端口,就可以用浏览器远程开机了。