.NET 网络唤醒
本文介绍下电脑设备关机的情况下如何通过网络唤醒设备,之前电源S状态 计算机Power电源状态- 唐宋元明清2188 - 博客园 (cnblogs.com) 有介绍过远程唤醒设备,后面这俩天了解多了点所以单独加个随笔
设备关机的情况下,使用网络唤醒的前提条件:
1. 被唤醒设备需要支持这WakeOnLine
要确认可以通过BIOS-电源管理页面查看,如下有Wake by Lan。并且是开启状态

2. 接有线网络(不支持无线网卡,因为设备关机情况下无线网卡是断电的),另一端启动唤醒的设备需要与被唤醒设备处于同一局域网。
关机状态下,有线网络接口是黄灯闪烁的。
我测试验证,是将大屏设备有线连接至一个路由器,然后笔记本连接路由器的wifi。大屏设备的ip是192.168.2.9,笔记本的ip是192.168.2.6。
拿到目标设备的IP以及有线Mac地址(可以在设备连接网络的属性里查看):

然后就可以使用发包工具MAGPAC.exe(下载:MAGPAC)试试唤醒,在设备关机的情况下发包就可以自动开机配置如下,输入IP以及Mac地址:


1 private void TestButton_OnClick(object sender, RoutedEventArgs e)
2 {
3 string ip = "192.168.2.9";
4 string macAddress = "EC:D6:8A:A6:4B:7B";
5 SendWakeOnLan(ip,macAddress);
6 }
7
8 private static void SendWakeOnLan(string ipAddress, string macAddress)
9 {
10 try
11 {
12 // 将MAC地址转换为字节数组
13 byte[] macBytes = macAddress.Split(':').Select(x => Convert.ToByte(x, 16)).ToArray();
14 // 创建魔术包
15 byte[] magicPacket = new byte[6 + 16 * macBytes.Length];
16 for (int i = 0; i < 6; i++)
17 {
18 magicPacket[i] = 0xFF;
19 }
20 for (int i = 0; i < 16; i++)
21 {
22 Array.Copy(macBytes, 0, magicPacket, 6 + i * macBytes.Length, macBytes.Length);
23 }
24 // 使用UDP发送魔术包
25 UdpClient client = new UdpClient();
26 client.Connect(ipAddress, 9); // 9是WoL的默认端口
27 client.Send(magicPacket, magicPacket.Length);
28 client.Close();
29
30 Debug.WriteLine($@"唤醒包已发送至: {ipAddress},{macAddress}");
31 }
32 catch (Exception ex)
33 {
34 Debug.WriteLine("发送唤醒包时发生错误: " + ex.Message);
35 }
36 }

直接远程唤醒关机设备,亲测有效!
1. 删除MAC地址中的分隔符(“:”),魔术数据包由6个0xFF字节后跟16次目标MAC地址
2. 通过UDP协议将数据包发送到指定IP和目标端口9
注意,不是广播而是指定IP发送数据包,网上有些说是用广播地址(255.255.255.255),我验证了是不起作用的。
关键字:电源状态、远程唤醒、发包工具MAGPAC.exe
.NET 网络唤醒的更多相关文章
- C# 远程网络唤醒介绍及代码
一.定义 网络唤醒:唤醒休眠状态下的计算机,而不是已关机的计算机. 优势:可通过定时功能实现自动唤醒计算机,减少人力使用. 实现方法:通过被唤醒机的MAC地址进行广播发送请求,唤醒计算机. 二.硬件设 ...
- python socket发送魔法包网络唤醒开机.py
python socket发送魔法包网络唤醒开机.py 现在的电脑应该都普遍支持有线网络的WOL了,支持无线网络唤醒的电脑,可能比较少. """ python socke ...
- 网络唤醒全攻略(Wake On Lan)
家里组了台服务器存放资料,或者作为开发服务器,远程登陆成为刚性需求,由于机器需要的时候才用到,所以如果经常开机的话很费电,按需开机是最佳办法:网上教程很多,但是比较杂乱,表达累赘:还是自己总结一篇简单 ...
- 网络唤醒原理浅析(Wake On LAN)
之前我的一篇文章<网络唤醒全攻略(Wake On Lan)>介绍过如何设置远程唤醒电脑,着重于使用,这篇主要从原理方面解析一下当中的奥妙: 原理 将唤醒魔术包发送的被唤醒机器的网卡上,魔术 ...
- 网络唤醒(WOL)全解指南:原理篇
什么是网络唤醒 网络唤醒(Wake-on-LAN,WOL)是一种计算机局域网唤醒技术,使局域网内处于关机或休眠状态的计算机,将状态转换成引导(Boot Loader)或运行状态.无线唤醒(Wake-o ...
- C#网络唤醒
什么是网络唤醒 网络唤醒实现了对网络的集中管理,即在任何时刻,网管中心的IT管理人员可以经由网络远程唤醒一台处于休眠或关机状态的计算机.使用这一功能,IT管理人员可以在下班后,网络流量最小以及企业的正 ...
- 网络唤醒(WOL)全解指南:原理篇【转】
转自:https://blog.csdn.net/z5859095/article/details/82819075 什么是网络唤醒网络唤醒(Wake-on-LAN,WOL)是一种计算机局域网唤醒技术 ...
- Linux_10个需要了解的Linux网络和监控命令(转)
源文地址:http://www.linuxde.net/2013/10/15325.html 1. hostname hostname 没有选项,显示主机名字 hostname –d 显示机器所属域名 ...
- 新华龙电子推出最新网络开发板(W5100&W5500方案)
2014/12/16 | Filed under: TCP/IP芯片 and tagged with: C8051, W5100, W5500, 新华龙电子, 网络开发板 42 Views 深圳新华龙 ...
- 需要了解的 Linux 网络和监控命令
列出来的10个基础的每个linux用户都应该知道的网络和监控命令.网络和监控命令类似于这些: hostname, ping, ifconfig, iwconfig, netstat, nslookup ...
随机推荐
- 韦东山IMX6ULL Linux开发板基于Buildroot系统QT应用环境配置开发运行
@ 目录 一. 编译系统 1.设置交叉编译工具链 2.编译系统 二. QT下载 1.安装 Qtcreator 2.创建第一个程序 3.配置 QtCreator 开发环境 4.移植QT程序到开发板 一. ...
- new操作符具体干了什么呢?
new操作符的作用如下: 1.创建一个空对象2.由this变量引用该对象3.该对象继承该函数的原型4.把属性和方法加入到this引用的对象中5.新创建的对象由this引用,最后隐式地返回this.过程 ...
- js - 面向对象--手稿
- centos7安装pcntl扩展
查看PHP扩展加载的目录php -i | grep extension_dir Centos下使用yum安装php默认是都不带pcntl扩展,需要安装扩展需要下载安装包,编译安装. 首先查看你的服务器 ...
- [oeasy]python0029_放入系统路径_PATH_chmod_程序路径_执行原理
放入路径 回忆上次内容 上次总算可以把 sleep.py 直接执行了 sleep.py文件头部要声明好打开方式 #!/usr/bin/python3 用的是 python3 解释 sleep.py ...
- 2023HACSP-J补测
都快忘了自己还打过这个比赛了,所以来补一下. 完整题目在这里查看. Day0 来到郑州,寻找考场.幸好提前来了,因为考场大门就 5m 宽(HA用不用这么穷啊喂,来JZYZ不好么),开车转了 20min ...
- bitwarden本地搭建(无需购买SSL证书)
bitwarden本地搭建(无需购买SSL证书) 在安装之前,笔者在这里先声明一下,我安装bitwarden使用的操作环境为ArchLinux,我的想法是,因为这只是一个"密码本" ...
- java开发,入职第一天都干什么,带提前了解
2024.7.24,帝都今晚大雨,在雨声磅礴的夜晚适合干什么,没错适合敲代码,写博客,今晚来聊下入职一个新公司,第一天都干什么. 无论是刚毕业的新手小白,还是工作十余年的职场老人,入职一家新公司,只要 ...
- 简单了解java中的io流中的字节流
了解一下前置知识字符集,我们常见的字符集有ASCII,GBK,UTF-8 GBK中一个字需要两个字节存储 UTF-8中一个字母需要一个字节,并以0开头,一个汉字需要三个字节,与GBK不同的是,他支持的 ...
- Net8将Serilog日志推送ES,附视频
这是一个Serilog的实践Demo,包括了区别记录存放,AOP 日志记录,EF 执行记录,并且将日志推送到Elastic Search. 说在前面的话 自从AI出来之后,学习的曲线瞬间变缓了,学习的 ...