我正在开发一个使用 mongodb、express 和 nodejs 构建基于内联网的 web 应用程序的项目。该项目的目标是通过身份验证获取用户 mac 地址并运行远程 ssh。然而,我发现很难获取远程电脑的 MAC 地址。客户端和服务器应位于同一本地子网中。我尝试使用节点 getmac 模块,但显然它只提供主机服务器的 mac,
var macAddress = require('getmac');
require('getmac').getMac(function(err, macAddress){
if (err) throw err
console.log(macAddress)
});
我还尝试了 macfromip 模块,但是您必须预定义主机 IP 才能获取远程计算机的 mac。
var macfromip = require('macfromip');
macfromip.getMac('192.168.1.100', function(err, data){
if(err){
console.log(err);
}
console.log(data);
});
还有其他方法可以获取用户的 mac 地址吗?
似乎无法从 IP 获取 MAC 地址。
getMac 的文档没有任何相关内容.getMac('192.168.1.100')
我认为这项工作有效的一种方法是拥有一个包含 IP 及其 MAC 地址的数据库。
这需要一些东西来将每个 MAC 地址保存在数据库中。可能是每台计算机启动时运行的脚本。
有人问了这个问题security.stackexchange.com https://security.stackexchange.com/questions/64281/how-to-get-mac-address-via-ip。由于是在同一个网络,如果使用命令ping
在命令行中,该 IP 的 MAC 地址将被注册到 ARP 列表中。
ping your_ip_address
这样你应该能够获得 MAC 地址:
arp -a
考虑到这一点,我发现了您可能感兴趣的这 2 个 Nodejs 包:https://www.npmjs.com/package/ping https://www.npmjs.com/package/ping and https://www.npmjs.com/package/node-arp https://www.npmjs.com/package/node-arp
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)