In case of IP-based hosting, you can run more than one websites on one server machine; however, every website has its own IP address. For doing this, you have to first intimate your operating system of the multiple IP addresses. It is also important to put every IP on DNS so that it resolves to the names that you would like to give to those addresses.
In name-based hosting, you can run multiple websites on the same IP address. However, ion order to do this, you have to use more than one DNS records for your IP address in the DNS database.