获取远程用户Mac地址

2024-03-28

我正在开发一个使用 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(使用前将#替换为@)

获取远程用户Mac地址 的相关文章

随机推荐

  • SpriteKit和粒子碰撞

    我有一个粒子发射器 我想在粒子碰撞某些物理体时检测到它 SpriteKit API 中是否有本地方法可以做到这一点 或者我是否需要 作弊 单个粒子不能碰撞 不是用物理学 也不是任何其他方式 您甚至无法获得有关单个粒子的任何信息 您无法访问它
  • 2个脚本(FitVids.js、Vimeo.js)一起kill调用函数播放视频,导致:VimeoAPI不是函数

    Update以下 好吧 我这里遇到了问题 我使用这个优秀的 vimeo 类来让我的生活更轻松 http www josh ho com vimeo class http www josh ho com vimeo class 源代码在这里
  • GitHub Actions:在可重用工作流程中引用环境机密

    我已经能够在可重用工作流程中传递和引用组织和存储库机密 没有任何问题 问题 错误 是环境特定的秘密没有被传递 我尝试明确并列出所有这些并使用 秘密 继承 如果我使用 秘密 继承 我不必显式列出任何秘密 但是 引用时环境秘密为空 将它们全部列
  • 带有静态单元格的 UITableView 不会出现

    我使用 Storyboards 选项卡视图模板 创建了一个新的 Xcode 项目 我在故事板中添加了几个视图控制器 并希望使用带有静态单元格的 UITableView 我创建了它 但是当我在模拟器中运行时 单元格不会出现 除了这个故事板文件
  • Shinydashboard:Google 地点自动完成。 InvalidValueError:不是 HTMLInputElement 的实例

    我想放一个shinydashboard在一起 并有一个 Google Places 搜索框作为文本输入 下面的代码以常规方式运行shiny页面 但抛出一个InvalidValueError not an instance of HTMLIn
  • InnoDB:发现重复索引 - 这很糟糕吗? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 最近我们的 Magento 商店变得非常慢 我们真的不知道为什么 就在今天 我在检查数据库时注意到超过 900 个索引是相同的重复项 即存在两个 我的
  • 首次启动时无法识别 iCloud 键值存储

    我的应用程序使用 iCloud 键值存储 在多个设备之间同步唯一 ID 在应用程序首次启动时 如果它确实必须工作 那么就可以接受 看起来设备在首次启动时还不熟悉 iCloud 的值 只有在应用程序安装并运行一段时间后才熟悉 我在应用程序主视
  • Java:生成具有透明度的缩略图

    我在生成具有 Alpha 通道 透明度 的图像缩略图时遇到问题 我使用的代码是这样的 public void saveThumbnail File file String imageType if bufferedThumb null re
  • 上传错误 - 无法将 apk 文件上传到 Google Play 开发者控制台?

    我在 Google Play 上有一些应用程序已经有一段时间了 但我已经几个月没有发送更新了 现在我尝试发送更新 但在上传 apk 文件时出现上传错误 我尝试过使用另一个应用程序和另一台计算机 但出现了同样的错误 过去 5 天我一直在尝试解
  • 根据所选父节点显示子节点

    嗨 我一直在寻找这个问题的答案 但找不到答案 我只有 3 个月的使用 python django 经验 所以请原谅我的虚拟问题 我使用 django mptt 来显示一个简单的嵌套集导航 ul class root recursetree
  • 使用 LINQ 实体框架的 LEFT JOIN 或 RIGHT JOIN

    尝试使用 Linq 加入 我应该用什么 左连接还是右连接 APPLICANT TABLE PROFILE TABLE APPLICANT ID profile id Applicant Name profile id Applicant N
  • git 空格问题

    空白冲突很糟糕 空白最终对我来说是一种可怕的痛苦 在使用 git 时 git config apply whitespace strip 似乎增加了你发生冲突的机会 当你脱掉 不需要的空白 然后其他合作者会看到被剥离的空白 空格作为他们提交
  • 谷歌登录可以在模拟器中使用,但不能在手机中使用

    我在使用 Firebase 实施 Google 登录时遇到了非常严重的问题 我可以使用我的模拟器 Android 7 0 为 x86 64 构建的 SDK 登录 但如果我将项目上传到手机 Android 6 0 我将无法使用 Google
  • 访问打字稿联合类型中的不同属性

    我正在创建一个处理数据库中的对象的函数 我有两种不同的数据结构 其中相同的属性具有不同的名称 我无法改变这一点 所以我必须用 JavaScript 来处理它 这些对象还有其他差异 但这对此功能并不重要 我想对两种不同类型的对象使用相同的函数
  • iOS 蓝牙应用程序仅在后台模式下“由于信号 9 而终止”

    我正在 Objective c 中开发一个 IOS 应用程序 它显示来自蓝牙 BLE 的心率以及相应的图形 如果应用程序在前台运行 则一切都可以正常分叉 没有任何问题 但是 如果应用程序进入后台模式 BLE 测量仍然会继续 我正在使用 使用
  • Lollipop Android 锁屏小部件

    棒棒糖中的锁定屏幕小部件是否有任何更改 虽然官方文件明确显示没有变化 但是 http www extremetech com computing 192112 android 5 0 lollipop all details and fea
  • 我可以使用 SocketCAN 读取 CRC 和 ACK 位吗?

    我正在寻找一种方法 通过 PiCan2 将消息从一个 Raspberry Pi 发送到另一个 并接收回来以读取 CRC 和 ACK 位 我搜索了文档但找不到这样的选项 我可能错过了什么吗 你不直接处理CRC and ACK 但当此类事件发生
  • Java 中的 HTTP 标头编码/解码

    自定义 HTTP 标头被传递到 Servlet 应用程序以进行身份 验证 标头值必须能够包含重音符号和其他非 ASCII 字符 因此必须采用某种编码 最好是 UTF 8 控制身份验证环境的开发人员向我提供了这段 Java 代码 String
  • 如何循环 QAbstractItemView 索引?

    我想开火QAbstractItemView doubleClicked以编程方式为具有特定文本的项目插入槽 我想用QAbstractItemView如果可能的话 类而不是它的实现 此任务归结为循环项目和比较字符串 但我找不到任何方法可以给我
  • 获取远程用户Mac地址

    我正在开发一个使用 mongodb express 和 nodejs 构建基于内联网的 web 应用程序的项目 该项目的目标是通过身份验证获取用户 mac 地址并运行远程 ssh 然而 我发现很难获取远程电脑的 MAC 地址 客户端和服务器