如何获取通过 VPN 连接的机器上的 MAC 地址?

如何获取通过 VPN 连接的机器上的 MAC 地址?

我经营一家小公司,购买了一款库存软件。该软件需要一台服务器和连接到服务器的工作站才能运行客户端软件。

为了进行身份验证,当客户端软件尝试连接到服务器时,会要求输入客户端的 IP 和 MAC 地址。当 6 台与服务器位于同一本地网络上的客户端计算机连接到服务器并使用该软件时,一切正常。

但是,我有一台远程计算机,我已通过路由器通过 VPN 连接到网络,并且已使用此方法加入了 Windows 域。但是,服务器软件被编程为解析任何连接的客户端计算机的 IP 和 MAC 地址。但由于这台远程计算机是通过 VPN 远程连接的,因此它无法“解析”MAC 地址。

当我通过 VPN 连接时,是否有任何硬件或任何类型的配置可以让我在网络上拥有实际的 MAC 地址?我目前在远程计算机上使用 Windows 10 PRO,并使用其内置的 VPN 连接器功能连接到域。我想这需要就像我坐在实际网络上使用物理 MAC 一样。

另外,在您询问之前,我没有对我们购买的软件做任何违法或越界的事情。我们从该公司购买了该软件,如果我们可以让它与远程机器一起工作,那就完全没问题了。希望得到一些帮助!

答案1

(这应该是一条评论,但是太长了)

从服务器的角度来看,它应该看到终止 VPN 连接的设备的 MAC 地址(除非该设备与服务器位于同一台设备上)。但您没有告诉我们有关网络架构的任何信息。

被编程来解析 IP 和 MAC 地址

以太网上的 TCP/IP(以及最多在其他媒体上,如果不能解析 MAC 地址,则无法正常工作。另一方面,MAC 地址不应在 IP 层之上可见。听起来像是一个狡猾的反盗版系统,由一个相信每个人都想窃取他的软件并且不懂网络的人设计。这意味着一些难以预测 MAC 地址/IP 关联的代码 - 我们无法对其进行远程逆向工程。

答案2

“我知道你的 IP 和 MAC 地址”怎么会成为一种身份验证机制,这简直令人难以置信。有些人想出了疯狂的东西……

无论如何,我能想到两种可能性,其中一种(或两种)可能都有效,具体取决于这种误导性的尝试……无论他们到底想做什么……是如何实施的:

  1. 让本地 VPN 端点对连接进行 NAT。如果检查的性质是“收到的数据包的 MAC 地址是否与数据包源 IP 的已知 MAC 地址匹配?”,那么只需将连接 NAT 到链接 IP 地址即可工作 - 因为连接的明显源 IP 匹配。另一方面,如果客户端软件将其在运行的机器上看到的 IP 地址和/或 MAC 发送到服务器,然后服务器检查传入数据包上的 IP/MAC 地址是否与客户端软件发送的详细信息匹配,那么您就完蛋了 - 在这种情况下,您需要尝试门 2...
  2. 通过 VPN 将远程机器接入网络我不知道 Windows 10 VPN 是否支持此功能(可能不支持),但某些 VPN 软件(我熟悉 OpenVPN,特别是)能够创建相当令人信服的外观,即 VPN 上的计算机实际上与网络上的其他计算机位于同一以太网 LAN 上。这意味着该机器(VPN)的 IP 地址将与 LAN 上的其他机器位于同一 IP 网络中,它将看到以太网广播数据包,并且(显然是此练习的重要部分)LAN 上其他机器接收的数据包的 MAC 地址将与机器的接口 MAC 地址匹配。但是,该机器将为 LAN 访问配置第二个网络接口,并且鉴于该软件制造商迄今为止表现出的一般(无能)能力水平,我无法确信该软件能够正确处理具有多个网络接口的机器。这让我们进入了第三道门……
  3. 将虚拟机置于本地网络上。将一个小型虚拟机放到服务器上,安装客户端软件,通过 RDP 远程连接,然后就大功告成了。它在本地网络上(假设您在桥接网络上设置虚拟机),它将有一个本地 IP 和 MAC 地址,并且这个疯狂的 PoS 可以继续相信它想要的任何关于什么是有效网络拓扑的妄想。

相关内容