Knowing how to verify that your site is running on a dedicated server is a valuable tool. If you’re paying a premium for a dedicated server, you want to be sure that’s what you’re getting.
If you see performance indicators that lead you to believe you may be on a virtual server, that’s a problem that can lead to the disruption of moving to a new server or host.
But before making any drastic moves, it’s important to be sure that your site is indeed running on a VPS and not a dedicated server. So let’s take a look at the server information that can provide clues as to whether your server is hardware or virtual.
Connecting to Your Dedicated Server
All of the commands we’re going to use are run on the dedicated server itself.
If you’re working on a Windows machine you can make an SSH connection to the server using the Windows command prompt (or Windows PowerShell), or an SSH program like PuTTY.
On a Mac you can connect to the server using the Terminal program. There’s also a port of PuTTY for Mac, or you can use an SSH program written for Mac, like Terminus.
The specific hostname and port for your server login will vary depending on your provider. Check with them for details.
Using dmidecode to Expose Dedicated Server Information
The dmidecode command displays BIOS information that can include one or more virtualized components.
When you see any of the following, it’s a sign that you are on a VPS and not a dedicated server.
Run:
# dmidecode | egrep -i 'manufacturer|product'
If you see something like:
Manufacturer: VMware, Inc. Product Name: VMware Virtual Platform
that’s VMware, not a dedicated server.
Similarly, if you see:
Manufacturer: Microsoft Corporation Product Name: Virtual Machine
that’s the Microsoft VM, VirtualPC, also not a dedicated server.
Some other variations of dmidecode and the VMs they indicate:
# dmidecode | egrep -i 'vendor' Vendor: QEMU
VM is QEMU or KVM.
# dmidecode /dev/mem: Permission denied
This VM is Virtuozzo.
# dmidecode | grep -i domU Product Name: HVM domU
This VM is Xen.
Any of the above results indicate that the account is running on a VM, not an OS on a dedicated server.
But it’s worth noting that the lack of a specific manufacturer/vendor result doesn’t verify a dedicated server or rule out the presence of a VM.
We’ve got a few more tests you can run to be a bit more confident in the results.
Checking for Virtualized Disk Devices
Checking the disks can also show results that indicate virtualized components.
Run:
# cat /proc/ide/hd*/model
If your results are similar to:
VMware Virtual IDE CDROM Drive
it’s a VMware virtual drive.
Virtual HD Virtual CD
Are Microsoft VirtualPC.
QEMU HARDDISK QEMU DVD-ROM
Can be either QEMU, KVM, or Xen.
To detect a Virtuozzo virtual drive:
# ls -al /dev/vzfs
If you see:
b-----x--- 1 root root 0, 19 2019-07-20 20:19 /dev/vzfs
that indicates a Virtuozzo VM.
You can also detect a VMware virtual disk by running:
# cat /proc/scsi/scsi
If it’s a VMware virtual disk, you’ll see something like:
Attached devices: Host: scsi0 Channel: 00 Id: 00 Lun: 00 Vendor: VMware Model: Virtual disk Rev: 1.0 Type: Direct-Access ANSI SCSI revision: 02
Other Website Server Information Tests That Can Indicate the Presence of a VM
esxtop
Run:
# esxtop
Virtual machines often employ a tool called esxtop to check performance. Running esxtop on a VM will generate results, but running the command on a dedicated server OS will not.
OpenVZ
Run:
# cat /proc/user_beancounters
If /proc/user_beancounters exists, you’re on a VPS running OpenVZ.
If /proc/vz or /proc/vz/veinfo exist, they also indicate OpenVZ.
Similarly, if /proc/xen or /proc/sys/xen exist, that’s a Xen VM.
IP lookup
A reverse IP lookup shows all the websites running on an IP address. If you do a reverse lookup on your server IP and see domains that aren’t yours, you’re not on a dedicated server.
Run:
dig -x [your server's IP]
Or use WhatIsMyIP.com, MXToolBox, iplocation.net, or a similar online reverse DNS tool.
Virtio memory balloon
Run:
# lspci
If the RAM memory value is “Qumranet, Inc. Virtio memory balloon,” you’re on a VPS.
Can You Really Verify You’re on a Dedicated Server?
Short of being granted access to your host’s data center, the tests we’ve gone over here are as close to definitive results as you can get.
And if you think about it, even if you were led down some endless corridor at your host’s data center and your dedicated server was pointed out to you, you could only verify that your site was on it by pulling the plug (no one wants to do that).
But even that wouldn’t be proof positive. One hundred other sites could still be on the server. The only way to know anything for sure is to test the server, as we’ve done here.
If the tests lead you to the conclusion that your “dedicated server” is a virtual machine, you’ve got a bone to pick with your host. If you’re in that position and now find yourself looking for a host that delivers what they promise, GreenGeeks has a dedicated server for you.
We’ve got a server with the size and power to fit your needs, and we’ve got the only dedicated servers in the world operating on 300% renewable energy. We’re not called GreenGeeks for nothing!
If you want the power of a dedicated server without any of the resource guzzling side effects, look no further.
Hi Michael, thanks for the informative article.
However, the service you have listed under the Reverse IP lookup section actually do reverse DNS or only show the DNS connected to the IP, but not the domains that are pointing to that IP.
For example if I take a random IP of a domain I own (69.195.124.112) what Mxtoolbox returns is box912.bluehost.com. However, if you use a real reverse IP lookup like this one https://hostingchecker.com/tools/reverse-ip-lookup/ it returns 942 domains pointing to this IP address. So yea, obviously a shared hosting.