разрешить виртуальные машины в поддомене

разрешить виртуальные машины в поддомене

У меня есть выделенный сервер, который имеет только один публичный IP-адрес (например, 10.20.30.40) и выделенный для него домен (example.com)

На этом сервере у меня размещено множество виртуальных машин на гипервизоре ESXi, и каждая виртуальная машина выполняет свою задачу (почтовый сервер, сервер чата, файловый сервер и т. д.). Каждая виртуальная машина получила локальный IP-адрес от моего DNS-vm DHCP.

Как мне преобразовать каждую локальную виртуальную машину в поддомен?

Я думаю, что размещение виртуальной машины в качестве DNS-сервера спереди могло бы разрешить ВСЕ запросы к виртуальной машине, но я не знаю как. Пожалуйста, ознакомьтесь с топологией внутренней сети моего сервера:

сеть-topo.jpg

например, если кто-то отправляет запрос на mail.example.com, его запрос сначала достигнет DNS, а DNS направит весь трафик (прямой и обратный) на определенную виртуальную машину (192.168.1.10)

решение1

Если бы они не были все разнородными, я бы предложил балансировщик нагрузки. Но поскольку вы в основном используете http-серверы, я бы использовал один NGINX-бокс для обратного прокси-сервера обратно в сервис. Затем вы можете вручную перенаправить порт 25 (или любой другой, который использует ваш почтовый сервер)

При использовании веб-сервера Nginx серверные блоки (аналогичные виртуальным хостам в Apache) можно использовать для инкапсуляции деталей конфигурации и размещения более одного домена на одном сервере.

https://www.digitalocean.com/community/tutorials/how-to-set-up-nginx-server-blocks-virtual-hosts-on-ubuntu-16-04

https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/

Связанный контент