有没有办法以编程方式进入 BIOS 并为那些支持它的机器打开 LAN 唤醒功能?
理想情况下,解决方案将是跨 BIOS,但也可以使用单独的解决方案来打击每个主要供应商。
有没有办法以编程方式进入 BIOS 并为那些支持它的机器打开 LAN 唤醒功能?
理想情况下,解决方案将是跨 BIOS,但也可以使用单独的解决方案来打击每个主要供应商。
BIOS 配置是操作系统为避免病毒问题而有意限制的内容(当时有很多 BIOS 病毒!)。
您需要查看系统管理界面以查看是否普遍可用。您可能需要在 windows 中的 ring0 (或 linux 中的 root/kernel)中工作。此外,您可能需要学习如何直接访问硬件,学习并保存最常见的 BIOS 制造商和类型的数据库,即使那样也无法涵盖所有这些。
SMBIOS可能有帮助?
我知道在我以前的工作中,我们有一个实用程序可以从常规的 windows 程序中读取BIOS 一次。
我想您会发现 LAN 唤醒是一个 CMOS 设置选项,因此无法通过与硬件无关的操作系统接口进行编程。
Dell Inc. 为客户提供 OpenManage 实用程序套件,用于远程操作其客户端机器上的设置设置。一些链接:
启用 LAN 唤醒有几个步骤。首先它必须在 BIOS 中启用,其次它必须在网卡本身上启用。
在 Windows 中,您可以在网络适配器的高级选项对话框下找到设置。对于 Linux,您可以使用ethtool
命令。
用于ethtool eth0
显示 eth0 接口的当前状态:
Settings for eth0:
Wake-on: g
用于ethtool -s eth0 wol XYZ
设置选项,但请记住,并非所有卡都支持所有 WoL 方法,并且某些卡在重新启动时会记住设置,但其他卡不会(然后您需要将此命令添加到启动脚本中)。
wol p|u|m|b|a|g|s|d... 设置 LAN 唤醒选项。并非所有设备都支持这一点。此选项的参数是一个字符串 指定要启用哪些选项的字符。 p 唤醒 phy 活动 u 唤醒单播消息 m 多播消息唤醒 b 广播消息唤醒 ARP 唤醒 g 唤醒 MagicPacket(tm) s 为 MagicPacket(tm) 启用 SecureOn(tm) 密码 d 禁用(什么都不唤醒)。此选项清除所有以前的选项。