Virtual hosting refers to the practice of hosting multiple websites on a single server. Virtual Hosts can be name-based, or IP based.
Name-based Virtual Hosts (common in shared hosting environments) differ by their domain name. In a name-based virtual host environment, the websites for example1.com and example2.com would both be hosted on the same machine, with the same IP address.
IP-based Virtual Hosts have a separate IP address for each virtual host. In this case, each separate website would require it's own unique IP address on the machine.