maniac_by, когда идёт речь о DNS, то вы можете забыть о hosts файле.
В случае с зоопарком:
Каждая виртуалка должна быть доступна по своему IP-адресу (можно в пределах одной виртуальной сети);
Выбираете виртуалку, на которой поднимаете DNS-сервер;
Прописываете в DNS-сервере нужные хосты и IP адреса, соответствующие им;
На тех виртуалках, где нет DNS-сервера, ничего делать не нужно (кроме, как открытия доступа к ним по IP);
На хосте (W10, в данном случае) прописываете в настройках сети в качестве первичного DNS-сервера IP-адрес той виртуалки, на которой, соответственно, поднят DNS. В качестве вторичного - любой публичный DNS (8.8.8.8, 1.1.1.1, и т.д);