- 浏览: 2196904 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (1240)
- mac/IOS (287)
- flutter (1)
- J2EE (115)
- android基础知识 (582)
- android中级知识 (55)
- android组件(Widget)开发 (18)
- android 错误 (21)
- javascript (18)
- linux (70)
- 树莓派 (18)
- gwt/gxt (1)
- 工具(IDE)/包(jar) (18)
- web前端 (17)
- java 算法 (8)
- 其它 (5)
- chrome (7)
- 数据库 (8)
- 经济/金融 (0)
- english (2)
- HTML5 (7)
- 网络安全 (14)
- 设计欣赏/设计窗 (8)
- 汇编/C (8)
- 工具类 (4)
- 游戏 (5)
- 开发频道 (5)
- Android OpenGL (1)
- 科学 (4)
- 运维 (0)
- 好东西 (6)
- 美食 (1)
最新评论
-
liangzai_cool:
请教一下,文中,shell、C、Python三种方式控制led ...
树莓派 - MAX7219 -
jiazimo:
...
Kafka源码分析-序列5 -Producer -RecordAccumulator队列分析 -
hp321:
Windows该命令是不是需要安装什么软件才可以?我试过不行( ...
ImageIO读jpg的时候出现javax.imageio.IIOException: Unsupported Image Type -
hp321:
Chenzh_758 写道其实直接用一下代码就可以解决了:JP ...
ImageIO读jpg的时候出现javax.imageio.IIOException: Unsupported Image Type -
huanghonhpeng:
大哥你真强什么都会,研究研究。。。。小弟在这里学到了很多知识。 ...
android 浏览器
关机的,大家都会……想比我就不说了吧!
通过IP,使用shutdown 命令,外加参数……附上地址,OK。
通过IP,使用shutdown 命令,外加参数……附上地址,OK。
package com.iaiai.test; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetAddress; /** * * <br/> * Title: TestOpenOS.java<br/> * E-Mail: 176291935@qq.com<br/> * QQ: 176291935<br/> * Http: iaiai.iteye.com<br/> * Create time: 2013-1-29 上午11:37:56<br/> * <br/> * * @author 丸子 * @version 0.0.1 */ public class TestOpenOS { private int port = 10000; private String mac = "8C-89-A5-19-82-9A"; private String ipAddress = "255.255.255.255"; public TestOpenOS() { // TODO Auto-generated constructor stub } private void setMac(String mac) { this.mac = mac; } public TestOpenOS(int port, String mac, String ipAddress) { this.port = port; this.mac = mac; this.ipAddress = ipAddress; } public void sendOpenOS() { InetAddress destHost = null; DatagramSocket ds = null; try { destHost = InetAddress.getByName(ipAddress); byte[] destMac = getMacBytes(mac); byte[] magicBytes = new byte[102]; // 将数据包的前六位放入0xFF即“FF”的二进制 // 发一个BroadCast包,包的内容包括以下数据就可以了。 // FF FF FF FF FF FF,6个FF是数据的开始, // 紧跟着16次MAC地址就可以了。 for (int i = 0; i < 16; i++) { for (int j = 0; j < destMac.length; j++) { magicBytes[6 + destMac.length * i + j] = destMac[j]; magicBytes[j] = (byte) 0xFF; } } // --------------------查看数据报发出的数据--------------------- for (int i = 1; i <= 102; i++) { if (((i - 1) % 6) == 0) { System.out.println(); } System.out.print(magicBytes[i - 1] + "==="); } // System.out.println("port =" + port + ", destHost=" + destHost + // ",magicBytes.length = " + magicBytes.length); DatagramPacket dp = null; try { dp = new DatagramPacket(magicBytes, magicBytes.length, destHost, port); ds = new DatagramSocket(); ds.send(dp); } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } finally { if (null != ds) { // 关闭数据报流 ds.close(); } } } // 远程关机 public void sendCloseOS() { } /** * 将16进制的mac地址转换为二进制 * * @param macStr * @return * @throws IllegalArgumentException */ private static byte[] getMacBytes(String macStr) throws IllegalArgumentException { byte[] bytes = new byte[6]; String[] hex = macStr.split("(\\:|\\-)"); if (hex.length != 6) { throw new IllegalArgumentException("mac 地址有问题,你看看对不对?Invalid MAC address."); } try { for (int i = 0; i < 6; i++) { bytes[i] = (byte) Integer.parseInt(hex[i], 16); } } catch (NumberFormatException e) { throw new IllegalArgumentException("Invalid hex digit in MAC address."); } return bytes; } public static void main(String[] args) { TestOpenOS w = new TestOpenOS(); w.sendOpenOS(); w.setMac("8C-89-A5-19-80-3D"); w.sendOpenOS(); } }
发表评论
-
小程序textarea完美填坑
2020-07-07 16:09 521相信做微信小程序的码友们都被textarea这个原生组件坑过 ... -
Nginx+Https自己敲命令生成证书
2020-05-18 09:35 947一、准备 环境:centos6.8 ... -
https证书生成环境搭建配置(基于Tomcat和Nginx)
2020-04-24 11:06 821一、基于Tomcat、JDK内置密钥工具: 1、生成服务端证 ... -
史上最强Tomcat8性能优化
2019-11-01 21:41 885授人以鱼不如授人以渔 ... -
SpringBoot配置HTTPS,并实现HTTP访问自动转HTTPS访问
2019-10-07 09:13 5611.使用jdk自带的 keytools 创建证书 打开cmd ... -
Spring Boot工程集成全局唯一ID生成器 UidGenerator
2019-09-16 09:04 856概述 流水号生成器(全局唯一 ID生成器)是服务化系统的基础 ... -
CentOS7下Redis的安装与使用
2019-08-17 11:45 606一、手动安装过程 1、准备工作(安装gcc依赖) yum ... -
Nginx与tomcat组合的简单使用
2019-08-17 10:05 430配置tomcat跳转 请求http出现400的时候在这里配置 ... -
linux下lvs+keepalived安装配置
2019-07-10 14:20 463keepalived主机:192.168.174. ... -
使用Docker搭建Tomcat运行环境
2019-02-08 21:32 4881 准备宿主系统 准备一 ... -
Netty笔记-GlobalEventExecutor
2019-02-06 23:00 6371.概念 /** * Single-thread si ... -
Netty4转发服务的实现方案
2019-02-06 15:03 1135如果用Netty做转发服务(不需要同步应答),Netty中有一 ... -
java手机号归属地查询
2018-12-25 17:16 746所需的包:carrier-1.75.jar 、geocoder ... -
基于Netty4的HttpServer和HttpClient的简单实现
2018-10-17 20:02 689Http 消息格式: Http request: Met ... -
javafx : 支持使用微调(spinner)控制的数字的文本框(NemberTextField)
2018-10-16 00:00 1093最近花了一些时间学习javaFX, 要更深入地理解新GUI包, ... -
我的Java(定制你的Java/JavaFX Runtime)
2018-10-12 23:29 678最新的JDK 11发布了,撒花 新版本的JDK终于有了ope ... -
javaFX的几个新特性,让swing彻底过时
2018-10-12 22:42 667首先声明,Java的GUI曾经 ... -
mac os系统用install4j把jar包生成app
2018-10-05 23:02 1428install4j有windows版也有mac版 mac电脑 ... -
JavaFX Alert对话框
2018-10-05 22:01 23661. 标准对话框 消息对话框 Alert alert = ... -
IDEA Properties中文unicode转码问题
2017-02-17 19:54 1034摘要: 如何让IDEA的properties中的中文进行uni ...
相关推荐
Java网络唤醒工具是一种基于Java编程语言开发的软件,它允许用户通过输入目标计算机的MAC地址和网络广播地址来远程启动该计算机。这个工具利用了"网络唤醒"(Wake-on-LAN,简称WOL)技术,这项技术使得在电源关闭或...
Java通过网络远程开机的技术主要基于 Wake-on-LAN (WoL) 协议,这是一种允许计算机在接收到特定的网络数据包后从休眠或关闭状态唤醒的功能。在同一个局域网(LAN)环境下,我们可以利用Java编程语言来发送WoL魔法包...
例如,当公司服务器需要定期更新或维护时,IT管理员可以在非工作时间远程唤醒服务器,完成任务后再将其关闭,节省能源。对于家庭用户,如果有一台电脑被设置为下载机,也可以利用WOL在需要时启动下载,不需保持电脑...
WakeOnLan是一种网络技术,允许用户通过网络远程启动计算机,即便该计算机处于关闭状态。...了解并掌握这一技术,可以帮助你更好地管理和维护网络中的设备,特别是在需要远程唤醒服务器或工作站的场景下。
- **唤醒网络(WOL)**:这是一种可以在网络上远程唤醒处于休眠或关闭状态的计算机的技术。它的工作原理是通过发送一个特定的“魔法包”(Magic Packet)到目标计算机的MAC地址,从而使其从休眠状态中唤醒。 - **...
通过利用Java的`NetworkInterface`类,可以实现无需依赖底层操作系统的纯Java MAC地址读取功能,进而支持更广泛的网络应用需求,如远程唤醒和版权保护等。 #### 关键词 Java;MAC地址查询;跨平台 #### 1 引言 在...
魔术包(Magic Packet)是一种网络通信协议,常用于远程唤醒(Wake-on-LAN,WOL)功能,允许用户通过网络启动远程计算机。该技术主要应用于局域网环境,通过发送特定格式的数据包来唤醒处于待机或休眠状态的设备。在...
例如,IT管理员可以在晚上关闭所有电脑,然后在需要时通过发送魔术包远程唤醒指定的机器进行更新或维护。 需要注意的是,不是所有的硬件和BIOS都支持WOL功能,因此在尝试使用此代码之前,应确保目标计算机的硬件和...
Wake On Lan(WOL)是一种网络唤醒技术,允许远程启动处于待机或关闭状态的计算机。这个技术通过发送一个特定的“魔术包”到目标计算机的网络接口来实现。现在,我们将深入探讨如何使用Java来实现Wake On Lan功能,...
9. **唤醒功能**:一些高级的远程协助软件,如向日葵,还支持远程唤醒(Wake-on-LAN)功能,即使目标电脑处于休眠状态,也能远程启动并进行控制。 10. **日志记录与审计**:为了追踪和审核远程操作,软件通常会记录...
Java WakeOnLan 开源项目是一个实用的工具,专门用于通过网络远程唤醒具有LAN唤醒功能的计算机。这个项目是基于Java编程语言实现的,因此它具备跨平台的特性,可以在任何安装了Java 1.4或更高版本的系统上运行。这种...
如果目标计算机支持WOL且网络设置正确,它将被远程唤醒。 4. **使用Ping功能**:在执行WOL之前,用户可以先进行Ping测试,确保目标计算机可达到且网络连接稳定。 对于开发者而言,这个开源项目提供了一个学习Java ...
在IT领域,通过电子邮件(Email)来控制和唤醒远程设备是一种常见的技术,尤其适用于远程管理和自动化操作。在Java开发中,这种技术可以帮助我们实现许多创新的功能。本文将深入探讨如何利用Email来唤醒计算机以及...
总的来说,SleepyPowerOnRest 是一个利用Java实现的 Wake-on-LAN 解决方案,旨在方便用户远程唤醒处于休眠或待机状态的计算机。通过深入理解和应用这些知识点,用户可以实现远程管理自己的设备,提高工作效率。
4. **编程语言**:远程开机源码可以使用各种编程语言实现,如Python、C++、Java等。这些代码通常会依赖于特定的库或API来处理网络通信。 5. **安全考虑**:尽管远程开机非常方便,但也要注意安全问题。确保只有授权...
远程开机技术,也被称为WOL(Wake-on-LAN),是一种允许用户通过网络唤醒处于休眠或关机状态的计算机的技术。这项技术基于“魔法封包”(Magic Packet)的概念,它是一个特殊格式的数据包,包含了目标设备的MAC地址...
"WakeOnLan-Deamon-开源"是一个专为MacOS X设计的开源软件,它以守护进程的形式运行,能够实现远程唤醒局域网(LAN)中的设备。这个程序的核心功能是通过网络发送特定的数据包,这些数据包被称为Magic Packet,能够...
"Nameless-WOL"是一款专为Android平台设计的Wake-On-LAN(WOL)应用程序,其特色在于能够与Tasker集成,提供了一种方便的方式来远程唤醒支持WOL功能的计算机。Wake-On-LAN技术允许用户通过网络启动或唤醒处于休眠...
什么是 Bullet内网穿透?Bullet是一款开源的反向代理内网穿透利器,...远程网络唤醒(v1.2.3开始支持);Bullet的管理界面目前实现了Mac、linux、window全环境适配.理论上还可以支持ARM,有这方面用户需求的可以联系作