一天中的好时光。
红宝石代码:
def hw_address(iface)
sock = Socket.new(Socket::AF_INET, Socket::SOCK_DGRAM,0)
buf = [iface,""].pack('a16h16')
sock.ioctl(SIOCGIFHWADDR, buf);
sock.close
return buf[18..24].to_etheraddr
end
puts hw_address('lo0')
它的作用:获取接口的 mac 地址。
按预期在 Debian 上运行。但在 Mac OS X 上,我收到错误:“ioctl”:套接字不支持操作 (Errno::EOPNOTSUPP)`
有没有办法修复/传递此错误消息并开始工作ioctl
在套接字上?
http://hintsforums.macworld.com/showthread.php?t=97909 http://hintsforums.macworld.com/showthread.php?t=97909
“以下功能在 Mac OS X 上不可用:
1) POSIX定时器库(-librt Real Time)
2) ioctl 命令 SIOCGIFHWADDR - 获取网络接口的 Mac 地址。”
这就是生活。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)