linux wake on lan功能通过ethtool配置

本文详细解析了ethtool工具中关于WOL(Wake On LAN)功能的实现逻辑,包括其背后的参数说明和具体代码实现过程。通过分析不同选项如物理接口、单播、多播、广播、ARP包、magic包及其加密版本等如何影响WOL功能的激活方式,读者可以深入了解如何利用这些选项来唤醒处于休眠状态的网络设备。

ethtool工具中的wol功能一直很迷惑。今天看了代码将其帮助中下面的参数说明下,如果有不懂wake on lan的请自己到

intel官网查下。

p|u|m|b|a|g|s|d

 

        if (wolopts & WAKE_PHY)//物理接口
            *p++ = 'p';
        if (wolopts & WAKE_UCAST)//单播
            *p++ = 'u';
        if (wolopts & WAKE_MCAST)//多播
            *p++ = 'm';
        if (wolopts & WAKE_BCAST)//广播
            *p++ = 'b';
        if (wolopts & WAKE_ARP)//arp包
            *p++ = 'a';
        if (wolopts & WAKE_MAGIC)//magic 包
            *p++ = 'g';
        if (wolopts & WAKE_MAGICSECURE)//magic 加密包
            *p++ = 's';

d很明显了是关闭。

 


ethtool.c: if (adapter->wol & E1000_WUFC_EX)
ethtool.c:  wol->wolopts |= WAKE_UCAST; u
ethtool.c: if (adapter->wol & E1000_WUFC_MC)
ethtool.c:  wol->wolopts |= WAKE_MCAST; m
ethtool.c: if (adapter->wol & E1000_WUFC_BC)
ethtool.c:  wol->wolopts |= WAKE_BCAST; b
ethtool.c: if (adapter->wol & E1000_WUFC_MAG)
ethtool.c:  wol->wolopts |= WAKE_MAGIC; g
ethtool.c: if (adapter->wol & E1000_WUFC_LNKC)
ethtool.c:  wol->wolopts |= WAKE_PHY;  p
ethtool.c: if (adapter->wol & E1000_WUFC_ARP)
ethtool.c:  wol->wolopts |= WAKE_ARP;  a
ethtool.c:static int e1000_set_wol(struct net_device *netdev,
ethtool.c:    struct ethtool_wolinfo *wol)
ethtool.c:     (wol->wolopts & ~(WAKE_UCAST | WAKE_MCAST | WAKE_BCAST |
ethtool.c: adapter->wol = 0;
ethtool.c: if (wol->wolopts & WAKE_UCAST)
ethtool.c:  adapter->wol |= E1000_WUFC_EX;
ethtool.c: if (wol->wolopts & WAKE_MCAST)
ethtool.c:  adapter->wol |= E1000_WUFC_MC;
ethtool.c: if (wol->wolopts & WAKE_BCAST)
ethtool.c:  adapter->wol |= E1000_WUFC_BC;
ethtool.c: if (wol->wolopts & WAKE_MAGIC)
ethtool.c:  adapter->wol |= E1000_WUFC_MAG;
ethtool.c: if (wol->wolopts & WAKE_PHY)
ethtool.c:  adapter->wol |= E1000_WUFC_LNKC;
ethtool.c: if (wol->wolopts & WAKE_ARP)
ethtool.c:  adapter->wol |= E1000_WUFC_ARP;

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值