`
5211422
  • 浏览: 211438 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

远程唤醒

    博客分类:
  • java
阅读更多

硬件要求:

 

1、硬件连接

  网卡安装完毕后将远程唤醒电缆的一端插入到网卡的WOL接口上,另外一端与主板的3针WOL远程唤醒接口相连(该接口旁通常标有WOL_CON的字样,当然如果主板和网卡都支持PCI2.2标准则无须做这一步)。

      需要说明的是,某些主板上已经集成了具有网络唤醒功能的网卡,只要开启“Wake on PCI Card”功能就可以了,没有什么三脚插座,更不需要专用的三芯连线。

 

2、CMOS设置

  打开CMOS远程唤醒功能很简单,只要将CMOS设置中的“Power Management Setup”的“Wake Up On LAN”或“Resume by LAN”项设置为“Enable”或“On”即可。

  ATX电源

  必须要使用ATX电源,而且其+5V Standby电流必须比较大,根据Intel的建议,它需要在600mA以上。该电流的大小可以从电源外部标识中的+5VSB(或+5AUX,5VSB)栏里查到。(绝大部分的网卡在0.7A以下都可唤醒)

  如果远程计算机最后一次关机的时候是属于非正常关机(突然断电或者关机时死机等),唤醒就有可能会失败。在Windows 2000/XP系统中如果在关闭计算机时使用休眠 ,也可能会造成唤醒失败。这是因为一些网卡需要复位一个标记,这只有在操作系统正常关闭的时候才会发生。

 

 代码实现:

 

<!-- 分页 -->

package com.cbf.web.util;

import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketException;

public class WOLOperate {

 private int port=10000;
 private String mac="00:1c:c0:bf:97:f0";
 private String ipAdd="255.255.255.255";
 
 public WOLOperate(){}
 
 public WOLOperate(int port,String mac,String ipAdd){
  this.port=port;
  this.mac = mac;
  this.ipAdd = ipAdd;
 }
 
 public void sendOpenOperate() {
  InetAddress destHost = null;
  DatagramSocket ds = null;
  try {
   destHost = InetAddress.getByName(ipAdd);

   byte[] destMac = getMacBytes(mac);
   byte[] magicBytes = new byte[102];

   // 将数据包的前6位放入0xFF即 "FF"的二进制
   for (int i = 0; i < 6; i++)
    magicBytes[i] = (byte) 0xFF;
   // 从第7个位置开始把mac地址放入16次
   for (int i = 0; i < 16; i++) {
    for (int j = 0; j < destMac.length; j++) {
     magicBytes[6 + destMac.length * i + j] = destMac[j];
    }
   }
   
   DatagramPacket dp = null;
   dp = new DatagramPacket(magicBytes, magicBytes.length, destHost,
     port);
   ds = new DatagramSocket();
   ds.send(dp);
  } catch (SocketException e) {
   e.printStackTrace();
  } catch (IOException e) {
   e.printStackTrace();
  } finally {
   if (ds != null) {
    ds.close();
   }
  }
 }

 public void sendCloseOperate(){
  
 }
 private static byte[] getMacBytes(String macStr)
   throws IllegalArgumentException {
  byte[] bytes = new byte[6];
  String[] hex = macStr.split("(\\:|\\-)");
  if (hex.length != 6) {
   throw new IllegalArgumentException("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){
  WOLOperate w = new WOLOperate();
  w.sendOpenOperate();
 }
}

分享到:
评论

相关推荐

    远程唤醒源代码(vb.net 2005)

    远程唤醒技术,通常被称为网络唤醒或Wake-on-LAN (WOL),是一种允许远程启动计算机的技术。在本文中,我们将深入探讨使用VB.Net 2005实现远程唤醒的原理及其实现过程。VB.Net作为微软.NET框架下的编程语言,提供了...

    电脑的远程唤醒和关机

    ### 电脑的远程唤醒和关机 #### 远程唤醒技术(WOL,Wake-on-LAN) **远程唤醒技术**(WOL,Wake-on-LAN)是一种通过局域网络实现远程开机的技术,允许用户无论身处何地,只要目标计算机与操作者处于同一局域网内,...

    VB中编程实现远程唤醒(开机)方法

    2. **网卡支持**:并非所有的网卡都支持远程唤醒功能,通常支持远程唤醒的网卡会有一个3针的WOL接口,用于连接远程唤醒电缆,不过随着技术的发展,许多新型网卡即便没有此接口也能通过PCI 2.2标准实现远程唤醒。...

    远程唤醒部分源代码

    ### 远程唤醒技术原理与实现 #### 一、远程唤醒概述 远程唤醒(Remote Wake-up)是一项允许网络管理员或用户通过发送特定的数据包来唤醒处于休眠或关闭状态的计算机的技术。这项技术广泛应用于数据中心、网吧管理...

    远程唤醒的主机需要具备以下条件

    ### 远程唤醒技术及其应用条件 #### 一、远程唤醒技术概述 远程唤醒(Wake-on-LAN,简称WOL)是一种计算机网络技术,它允许一台计算机(通常是服务器)通过网络信号来启动或唤醒另一台处于休眠状态的计算机。这项...

    局域网远程唤醒计算机

    在IT领域,局域网远程唤醒计算机是一项实用的技术,它允许用户通过网络远程启动处于关闭状态的计算机。这项技术基于“Wake-on-LAN”(WOL)功能,它依赖于现代计算机硬件,尤其是网络适配器(网卡)的支持。在本文中...

    VC远程唤醒软件,可以选择机器

    【远程唤醒技术详解】 远程唤醒(Wake-on-LAN,简称WOL)是一种计算机网络技术,允许用户通过网络启动或唤醒处于休眠或关机状态的计算机。这项技术依赖于计算机主板上的特殊硬件功能,通常是一个叫做Magic Packet的...

    远程唤醒magic_packet

    远程唤醒技术,通常被称为“Magic Packet”或“Wake-on-LAN (WOL)”,是一种允许用户通过网络远程启动计算机的功能。这项技术对于IT管理员来说非常有用,特别是在需要对多台设备进行更新或维护时,无需亲自到每台...

    易语言远程唤醒

    易语言远程唤醒是一种基于易语言编程的远程控制技术,它允许用户通过网络对远程计算机进行唤醒操作,即使该计算机处于休眠或关机状态。在本文中,我们将深入探讨易语言远程唤醒的核心概念、实现原理以及相关的编程...

    安卓远程唤醒电脑

    安卓远程唤醒计算机,一款非常好用的远程唤醒软件。

    万能控制电脑远程开机远程唤醒软件

    万能控制电脑远程开机远程唤醒软件 远程开机 远程唤醒电脑

    远程唤醒电脑WOL(Wake On LAN - 局域网唤醒)C#源码+exe可执行程序

    远程唤醒电脑技术,通常被称为WOL(Wake On LAN),是一种允许用户通过网络远程启动或唤醒计算机的技术。在局域网环境中,WOL尤其有用,它可以让管理员或用户无需亲自到达机器前就能启动或重启计算机。这项技术依赖...

    VC++实现局域网远程唤醒(WOL)

    【标题】"VC++实现局域网远程唤醒(WOL)"揭示了使用Microsoft Visual C++编程语言在局域网环境中实现远程唤醒功能的技术。这项技术通常被称为Wake-on-LAN (WOL),允许用户通过网络启动处于休眠或关闭状态的计算机。...

    局域网远程唤醒(WOL)源代码.docx

    "局域网远程唤醒(WOL)源代码" 局域网远程唤醒(WOL)是指在局域网中唤醒睡眠或关机的计算机,以便远程管理和维护。WOL 技术可以在局域网中唤醒计算机,而无需人工干预。 Magic Packet 是 WOL 技术的核心组件,它是...

    远程唤醒局域网主机

    实现局域网内主机的远程唤醒,唤醒功能需要主板的支持以及设置BIOS

    远程唤醒-易语言源代码

    远程唤醒-易语言源代码,通过网络,给远程机器开机。

    wakeup.rar--远程唤醒参考代码

    远程唤醒技术,通常被称为Wake-on-LAN (WOL),是一种允许计算机在关闭或休眠状态下通过网络接收特定数据包并启动的技术。这个“wakeup.rar”压缩包包含了一系列与实现远程唤醒相关的源代码和项目文件,如wakeUp.cpp...

    实现局域网内远程唤醒计算机(XP+SP2+VS2005通过)

    在IT领域,远程唤醒计算机(Wake-On-LAN,简称WOL)是一项实用的技术,它允许用户通过网络启动或唤醒处于休眠或关机状态的计算机。这个技术在管理多台设备,尤其是服务器时非常有用。在Windows XP Service Pack 2...

    电脑远程唤醒

    ### 电脑远程唤醒技术解析及实现方案 #### 一、远程唤醒基础知识介绍 电脑远程唤醒技术,也称为WoL(Wake-on-LAN)技术,是一种能够通过网络信号远程唤醒处于休眠状态或关闭状态下的计算机的技术。这项技术广泛...

    远程唤醒软件安卓手机版

    手机远程唤醒软件,安卓版 远程开机

Global site tag (gtag.js) - Google Analytics