当前位置: 首页 > 面试题库 >

获取远程PC的MAC地址?

钦德佑
2023-03-14
问题内容

我需要从PC获取MAC地址。到目前为止,我已经编写了代码(这只是代码的一小部分)。

public byte[] getMac(L2PcInstance player)
{
    try
    {
        NetworkInterface ni = NetworkInterface.getByInetAddress(player.getClient().getConnectionAddress());
        if (ni != null)
        {
            byte[] mac = ni.getHardwareAddress();
            if (mac != null)
            {
                return mac;
            }
        }
    }
    catch (SocketException e)
    {
        _log.log(Level.SEVERE, "No MAC address.", e);
    }
    return null;
}

此代码查找运行它的PC的MAC,但是我需要获取远程MAC。


问题答案:

您无法在Java中做到这一点,并且如果您进行了一些研究,您会发现MAC地址除了以太网层和与其相连的NIC之外并没有什么用。



 类似资料:
  • 问题内容: 我需要一种跨平台的方法来在运行时确定计算机的MAC地址。对于Windows,可以使用“ wmi”模块,在Linux下,我能找到的唯一方法是运行ifconfig并在其输出中运行正则表达式。我不喜欢使用只能在一个OS上运行的程序包,而且更不用说容易出错的语法解析另一个程序的输出。 有谁知道跨平台方法(Windows和Linux)方法来获取MAC地址?如果没有,还有谁比我上面列出的方法更优雅

  • 我正在开发一个获取设备MAC地址的应用程序,但由于Android6.0,我的代码无法运行,给了我一个不正确的值。 这是我的代码... 它返回的不是真正的MAC地址,而是一个奇怪的代码:。

  • 我想要得到机器的MAC地址..但下面写的代码只显示MAC地址时,互联网连接到我的机器,否则它将返回空...我用的是Windows7

  • 问题内容: 我不完全了解如何获取远程用户IP地址。 假设我有一个简单的请求路由,例如: 以上方法是正确的以获得真实用户IP地址还是有更好的方法?代理呢? 问题答案: 如果您是在像NGiNX这样的代理服务器上运行或者只有什么,那么您应该检查’x-forwarded-for’: 如果代理不是“您的”,那么我将不信任“ x-forward-for”标头,因为它可能是被欺骗的。

  • 我不完全理解如何获得远程用户IP地址。 假设我有一个简单的请求路由,例如: 上面的方法是正确的,还是有更好的方法来获得真正的用户IP地址?代理呢?