租用专用服务器,但获得 VPS。如何检测?

租用专用服务器,但获得 VPS。如何检测?

当租用专用服务器时,如何确定他/她获得的不是 VPS 或其他虚拟机变体,而是真正的专用硬件盒?

可以运行哪些检查(假设它是一个 Linux 机器)来检测这种情况?

答案1

首先,物理机的内存往往比 VPS 大。问题 512MB 或更少。其次,您可以检查几项来查找 VPS。您通常会发现虚拟机中的硬件看起来非常基本。例如 KVM 有一个“Cirrus Logic GD 5446”显卡。VMWare 曾经有一个 RTL8129 网卡。因此,大多数操作系统安装介质都有虚拟设备的驱动程序。

因素(Puppet 的一部分)虚拟.rb脚本有几种有用的技术可以找出您正在运行的机器类型。

开放VZ

寻找/proc/vz/veinfo

西恩

查找以下之一/proc/sys/xen/sys/bus/xen/proc/xen

虚拟服务器

查找s_contextVxID/proc/self/status

VMWare 或 Parallels

  • 运行lspci并查找 VMWare VGA 适配器
  • 运行dmidecode并查找对 VMWare 或 Parallels 的提及

虚拟机

运行 lspci 并查找RAM memory: Qumranet, Inc. Virtio memory balloon

答案2

没有 100% 可靠的方法来检测您是否在 VM 中,就像没有办法检测您是否真的在 Matrix 中,或者您是否实际上是计算机模拟中一样。

然而,如果提供商是个白痴,您可以从以下方便的列表中判断您是在虚拟机中:

  • Xen:/proc/sys/xen存在
  • OpenVZ/Virtuozzo:/proc/vz存在
  • VMWare:在输出中查找 VMWare 显卡lspci
  • Linux VServer:/proc/self/status具有s_contextVxID字段
  • Solaris 区域:/sbin/zonename存在

这些并不是 100% 可靠的,因为提供商控制环境并可以修改系统以不显示这些。但是,任何便宜到卖给你专用服务器并给你虚拟机的人可能都不够聪明,无法做到这一点。

答案3

查看你的机器的 MAC 地址。你看到任何特定于虚拟机的 OUI

答案4

尝试设置虚拟机环境。如果在虚拟机内,则应该会失败。

相关内容