I know ISP see the hostnames of devices connected to them Does ISP see the hostname of VirtualBox Machines ? Also do they see MAC address of Virtual Machines ?
TL,DR: Don't worry, your VM's MAC/Hostname/IP are safe from your ISP.
Your ISP knows the MAC of the modem/router connected to their network, the WAN IP of this router, and nothing else. Anything from your internal network is hidden from them.
Who can see the MAC and hostname and IP from your virtual machines? It depends on your virtual machine network settings. If the virtual network card is defined as bridge, anyone on your local network can see it. If you define as anything else (NAT, host-only, internal network), nobody can see anything but your host.
No matter what, MAC addresses are visible only on the local network. Local MAC addresses don't travel outside of your network. This question have a lot of info on MAC addresses, so you can get a lot of useful knowledge.
Hostnames are only a matter of convenience. You don't want to call your computers by IP address, so you give them any name you want. And outside your network, they don't make any sense either. If your desktop is called
darkbox, nobody outside of the LAN can know anything about it, like IP or MAC. Even if MAC and IP addresses on the local network means nothing elsewhere. Probably your computer have an IP from the
192.168.1.0/24 network, like almost everyone else.
You begin by stating that ISPs see the hostnames of devices which is not precise. ISPs can see public IP addresses.
For a regular scenario where you have a simple home router, the ISP cannot see your VM's IP address or MAC address, since the network is behind NAT by default. This means access to the internet is made using the routers public IP. So to the ISP, all connections coming out will seem like they come from the same device.
As mentioned in ThoriumBR's answer, whether other devices on the local network can see your IP or MAC depends on the setting of the virtual interface. Basically NAT, host-only and internal network mean they won't see either. Bridge will let them see both, and in a more advanced scenario using a (not necessarily) virtual router you can let them see the IP but not the MAC.
A side note would be that you can change the MAC address of a VM quite easily. Have a look here
There are a couple of answers in this already but my sense is that they don't address the common case, at least in the US.
Most ISPs provide their customers a modem and a router, sometimes in a single device. The router will do DHCP- hand out IP addresses to MAC addresses- for your internal network. In that context, the ISP will absolutely have visibility into the goings on on the internal network- how many and what type of devices, what names they advertise (if any), what protocols they speak to each other, what software they're running, etc.
So, if you are running some virtualization software on a physical machine, you can decide if you want the virtualization software to request IPs from DHCP on the network the physical machine is on for the virtual machines, or if it should NAT the VMs. The common case is the latter; if you choose the former, the ISP's router will see the MAC address of the VM.