I'm moving from a sharedhosting to a VPS and I'm struggling with DNS'. My hosting company only provides me my VPS' IP, and my domain, say mydomain.com is registered a registrar called bookmyname.com. This registrar seems to provide me with 3 DNS called nsa.bookmyname.com (and nsb, nsc).
After contacting my hosting company, they told me I had to run my own dns server because they didn't provide one for the basic VPS solution I have. I also read about setting up bind9 on my server, but I'm not sure if it's what I'm supposed to do in this case. How could I host the dns server on the same server that runs the web server.
Isn't the DNS supposed to make the connection between the client and the web server? I think I'm missing something fundamental here about how DNS works, what is it?