确定Linux上的MAC地址是物理还是虚拟

时间:2011-04-05 06:40:06

标签: linux tcp virtualization ethernet

我尝试过使用几个命令以及几个使用C / C ++的示例,但仍然无法找到可以区分物理或虚拟以太网适配器的完美方法。物理方式,在您的电路板上可用或在外部安装,虚拟方式由VirtualBox / VMWare / Virtual PC或VPN等创建。

任何指针?

2 个答案:

答案 0 :(得分:1)

没有完美的方法。虚拟适配器可以具有任何MAC地址,包括可能由构造函数分配给物理设备的MAC地址。另一方面,假设可以更改物理适配器的MAC地址。你只能做出有根据的猜测。

答案 1 :(得分:0)

您可能会发现更容易检测到您是否正在运行虚拟化,而不是查找有关NIC的特定信息。 virt-what(1)工具查看正在运行的系统的各个方面,以猜测系统是否已虚拟化。 (这个脚本并不像你想象的那么聪明,但 在一个地方有很多小的信息收集工具。)

有人故意试图绕过许可证检查可能不会发现很难打败这种机制。