Вы покупаете виртуальный сервер - уменьшенную копию реального сервера, то есть маленький компьютер. С ним вы можете делать всё, что захотите. Даже захостить 100500 сайтов. И для этого достаточно 1 ip. В dns ко всем доменам, которые хотите захостить на своём vps прописываете ip вашего vps, а в vps уже настраиваете виртуальные хосты на вашем веб-сервере.
Как vps будет понимать какой сайт показать?
Когда вы вбиваете адрес сайта в браузер, он спрашивает у dns ip адрес машины, соответствующий данному домену и соединяется с машиной и установленным веб-сервером на ней по HTTP протоколу, при этом отсылая заголовки. В одном из заголовков (Host:) браузер присылает адрес сайта, который он хочет получить в ответ, веб-сервер смотрит на этот заголовок, сверяет со своим конфигом и отдаёт, грубо говоря, всё содержимое папки, которая соответствует данному хосту в конфиге. Такая практика называется "virtual hosts", виртуальные хосты.