I don't have extensive experience to computer networks and I would like to practice using a Linux distribution and virtual machines like virtualbox or vmware.
I imagine a host Ubuntu/Linux PC and a number of virtual machines installed on this running Linux too. I would like to connect the VMs using a virtual TCP/IP network and to experiment on this using routers, DNS servers, switches etc.
a) Are all these possible?
b) What are the constraints?
c) What is the best virtual machine for these purposes?
Thank you!