我正在尝试使用 java 实现 WOL,下面是我的代码。
public void wakeonlan(String ipaddress, String macaddress) {
try {
byte[] macBytes = getMacBytes(macaddress);
byte[] bytes = new byte[6 + 16 * macBytes.length];
for (int i = 0; i < 6; i++) {
bytes[i] = (byte) 0xff;
}
for (int i = 6; i < bytes.length; i += macBytes.length) {
System.arraycopy(macBytes, 0, bytes, i, macBytes.length);
}
InetAddress address = InetAddress.getByName(ipaddress);
DatagramPacket packet = new DatagramPacket(bytes, bytes.length, address, PORT);
DatagramSocket socket = new DatagramSocket();
socket.send(packet);
socket.close();
}
catch (Exception e) {
e.printStackTrace();
}
}
我的要求是在 PC 启动后运行一个脚本。是否可以获得以下详细信息。
机器接受魔术包后的响应。
电脑启动需要多长时间,我需要等待多长时间。
与其通过网络将其发送到所有机器,我可以将其发送到特定机器并从中获取响应。