Yes, 1 ip is sufficient for a vps, which will act as it's main ip, 2 dns and any number of shared hosting accounts.
Typically 1. You'd really only need an additional IP for SSL (if SNI cannot be used, for old browsers) and also for DNS - but ONLY if it's in a different subnet that takes a different route. Have 2 IP's for DNS that are in the same subnet going to the same end point doesn't make much sense.
If you run a store and want to encrypt your sensitive data (using SSL), you will need a second IP. If you need the second nameserver also the third.
Additional IP really depends on the purpose of server. A maximum 2 Dedicated IPs are enough for VPS as you can use them for nameservers.
If you just need to use private DNS, one additional ip will be enough for you. If you also need SSL for your sites, then more ips will be needed.
I think one additional IP is sufficient with ips, few features are very important like its flexibility, reliability, performance, security etc.