远程唤醒UP Board
前言
原创文章,转载引用务必注明链接。水平有限,如有疏漏,欢迎指正。
本文使用Markdown写成,为获得更好的阅读体验和正常的图片、链接,请访问我的博客:
http://www.cnblogs.com/sjqlwy/p/up_wol.html
什么是WOL
Wake-On-LAN简称WOL,是一种电源管理功能:如果存在网络活动,则允许设备将操作系统从待机或休眠模式中唤醒。许多主板厂商支持IBM提出的网络唤醒标准。该标准允许网络管理员远程打开PC机电源,以便进行文件升级、资源跟踪和设备清点等工作。
Wake-On-LAN的实现,主要是向目标主机发送特殊格式的数据包,俗称魔术包(Magic Packet,由AMD公司MagicPacket软件生成)。MagicPacket格式虽然只是AMD公司开发推广的技术,并非世界公认的标准,但是仍然受到很多网卡制造商的支持,因此许多具有网络唤醒功能的网卡都能与之兼容。
更多内容可以查看维基百科"网络唤醒"页面。此外还有WoWLAN ( Wake on Wireless LAN),使用无线网卡来实现类似功能。
系统需求
目标主机保持供电状态
目标主机网卡支持并打开WOL功能
目标主机BIOS开启WOL功能(关机后维持网卡供电)
启用远程唤醒
目标主机和最后一级唤醒它的设备必须物理连接。
首先UP Board板载的LAN为RTL8111G,官方论坛贴可知其支持WOL,且在emutex的努力下,BIOS已经支持PXE启动。那么我们来验证一下。查看有线网卡信息可以使用ethtool这个小工具:
sudo su #启用root权限
apt-get install ethtool #安装ethtool
ethtool eth0 #查看有线网卡信息,这里是eth0
【板载有线网卡信息】a.支持千兆;b.支持auto-negotiation;c.WOL功能状态
关于auto-negotiation的更多信息,可以查看《 浅谈以太网的Auto-Negotiation》 。
在wake-on一栏显示当前WOL功能状态:
d
(disabled),p
(PHY activity),u
(unicast activity), m (multicast activity), b (broadcast activity), a (ARP activity), g (magic packet activity)。
使用WOL需要当前状态为g,UP板默认处于g状态。如果不是,可以手动启用WOL功能:ethtool -s eth0 wol g
,手动关闭wol:ethtool -s eth0 wol d
。
触发远程唤醒
想要触发远程唤醒,需要知道目标机器的有线网卡MAC地址和内网/外网IP。以上信息可以使用ip addr
或者 ifconfig
获得。如果可以的话,给目标机器设置静态IP。这里使用linux下的程序wol (软件主页,需要下载编译安装)为例:
局域网环境
wol -i 目标主机MAC地址
外网环境
公网IP
wol -i 目标主机IP 目标主机MAC地址
路由器端口转发
wol -p 转发端口 -i 路由器IP 目标主机MAC地址
内网穿透
需要有一个上级设备与目标主机直接连接。ngrok不行。
WOL for Windows
在Windows下可以使用GUI程序,例如 nirsoft出品的wake_on_lan小程序:
支持自动扫描,也支持手动添加目标主机Ctrl+N
。通过下载中文语言包的方式支持中文。PS:他家小工具集非常棒,和微软的那个s什么工具集可以互补。
WOL Web
访问 https://www.depicus.com/wake-on-lan/woli 可以无需借助软件很方便的从网页前端唤醒远程主机。
总结
有了wol功能,UP板搭建NAS、HTPC时可以降低功耗且可以随时唤醒。
更多信息科访问
远程唤醒UP Board的更多相关文章
- [LeetCode] Battleships in a Board 平板上的战船
Given an 2D board, count how many different battleships are in it. The battleships are represented w ...
- UP Board 串口使用心得
前言 原创文章,转载引用务必注明链接. 本文使用Markdown写成,为获得更好的阅读体验和正常的图片.链接,请访问我的博客: http://www.cnblogs.com/sjqlwy/p/up_s ...
- UP Board 网络设置一本通
前言 原创文章,转载引用务必注明链接,水平有限,欢迎指正. 本文环境:ubilinux 3.0 on UP Board 本文使用Markdown写成,为获得更好的阅读体验和正常的图片.链接,请访问我的 ...
- UP Board USB无线网卡一贴通
前言 原创文章,转载引用务必注明链接,水平有限,欢迎指正. 本文环境:ubilinux 3.0 kernel 4.4.0 本文使用Markdown写成,为获得更好的阅读体验和正常的图片.链接,请访问我 ...
- 在UP Board 上搭建M——L服务器
前言 原创文章,转载引用务必注明链接,水平有限,欢迎指正. 本文环境:ubilinux 3.0 on UP Board 初识免流 所谓免流,就是免除手机访问网络产生的流量费用.其原理在乌云网上有过报道 ...
- UP Board 妄图启动ubilinux失败
前言 原创文章,转载引用务必注明链接. 经历了上次的上电开机失败,我们终于发现需要手动为UP板安装系统,因为没有显示器的Headless模式时,使用Linux比较方便,另外熟悉Debian系的,所以选 ...
- UP Board 人若有大胆,板子就很惨:首次上电开机失败
前言 原创文章,转载引用务必注明链接. 注意:拍照自带抖动功能,画质大家凑合着看.冬日天气干燥,手触摸板子前建议流水洗手或者握持大体积导电体将静电放走. 本文使用Markdown写成,为获得更好的阅读 ...
- UP Board 超详细开箱评测
前言 原创文章,转载引用务必注明链接. 江浙沪就是好,昨天发货今天收到.另外爱板太省了,外包装小纸箱还是6s钢化膜的重复利用. 注意:拍照自带抖动功能,画质大家凑合着看.冬日天气干燥,手触摸板子前建议 ...
- UP board 漫谈(1)——从Atom到UP Board
title: UP board 漫谈(1)--从Atom到UP Board date: 2016-12-26 12:33:03 tags: UP board categories: 开发板 perma ...
随机推荐
- C/SV/VERILOG语句块界定符不一样
C是一对大括号{} SV /VERILOG 是begin...end
- hashlib模块,hmac模块
6.11自我总结 1.hashlib模块(文件传输中将传输内容用指定算法进行处理) hash是一种算法(Python3.版本里使用hashlib模块代替了md5模块和sha模块,主要提供 SHA1.S ...
- return_url notify_url
return_url对返回订单状态进行更新和判断,notify_url为异步调动页面,需要先判断notify_url里是否对订单数据做过处理,避免重复更新数据,然后如果用户付款成功直接关闭页面,会造成 ...
- if-else优化
过多if-else分支的优化 超过3个就应该去优化,说if-else过多的分支可以使用switch或者责任链模式等等方式来优化.确实,这是一个小问题,不过我们还是可以整理一下这个小问题的重构方式. ...
- Arthas诊断工具使用资料
1.https://github.com/alibaba/arthas/issues/327 2.https://alibaba.github.io/arthas/jad.html 3.https:/ ...
- Java-转换原始类型为一个字符串
package com.tj; public class MyClass implements Cloneable { public static void main(String[] args) { ...
- Codeforces Round #305 (Div. 2) D. Mike and Feet
D. Mike and Feet time limit per test 1 second memory limit per test 256 megabytes input standard inp ...
- Axure:从简单搜索到联想搜索的部件制作
导读:最近一直都在整理原型部件,要说准备的最有感触的,当属搜索框无疑.搜索框的整理,前后加起来共耗时两天多.从最开始的按钮和文本框,到后来的图示,提示和联想查询.耗费了不少的心血,有必要总结一下,留个 ...
- 九度oj 题目1022:游船出租
题目描述: 现有公园游船租赁处请你编写一个租船管理系统.当游客租船时,管理员输入船号并按下S键,系统开始计时:当游客还船时,管理员输入船号并按下E键,系统结束计时.船号为不超过100的正整数. ...
- LINQ学习笔记 Join 与 Group join
LINQ中的Join对应T-SQL中的内连接,并无左连接的方法,当然也没有右连接. 要达成Left join必须依靠GroupJoin来完成. GroupJoin顾名思义就是先集团在做加入,加入的不同 ...