Как получить публичные IP-адреса на виртуальных машинах ESXi?
У нас есть выделенный сервер с хостинг-провайдером. Мы работаем с ESXi 6.0. Сервер имеет один общедоступный IP-адрес, который в настоящее время используется для интерфейса управления. Поставщик также назначил нам блок /29, чтобы наши виртуальные машины могли иметь публичные IP-адреса. Мы можем использовать только 1 физический сетевой адаптер, который, я думаю, вызывает некоторые проблемы.
Они сказали нам, что шлюз по умолчанию для IP-адресов из этого блока должен быть установлен на IP-адрес сервера ESXi. Всякий раз, когда мы пытаемся настроить это, виртуальные машины жалуются, говоря, что шлюз находится в другой подсети, которой он является.
Они указали, что из-за того, как настроена их сеть, нам нужно направить любые IP-адреса из блока, который они нам присвоили, через IP-адрес сервера ESXi. Насколько я знаю, ESXi не поддерживает маршрутизацию, что делает это невозможным.
Мы спросили, могут ли они назначить этот блок (или даже один IP-адрес) серверу, чтобы они соответствовали IP-адресу ESXi, чтобы мы могли использовать их на виртуальных машинах, но они сказали нам, что их сетевая настройка не позволяет за это.
В идеале мы хотим иметь возможность назначать эти публичные IP-адреса нашим виртуальным машинам, чтобы они были напрямую доступны из Интернета. Есть ли способ сделать это? Мы что-то упустили?
Если вышеперечисленное невозможно, можем ли мы сделать переадресацию портов или что-то еще, чтобы мы могли связаться с нашими виртуальными машинами из Интернета?
Мы не изменили ни одну сетевую конфигурацию в ESXi, поэтому у нас все еще есть только один vSwtich с подключенной к нему сетью управления и сетью виртуальных машин. Этот vSwitch подключен к одному физическому сетевому адаптеру на сервере, которому назначены все IP-адреса.
Рад предоставить любую дополнительную информацию, если это необходимо.
2 ответа
Ваш хостинг-провайдер (Hetzner, по-вашему?) Правильный.
Вам нужно будет назначить один статический IP-адрес интерфейсу VMK вашего сервера VMware. Это позволит вам подключиться к серверу через консоль VMware и создать виртуальные машины.
Ваш хостинг-провайдер должен иметь возможность направить вашу подсеть /29 на MAC-адрес сервера.
У вас также будет один vSwitch (я бы лично переименовал его в "Public" для здравого смысла), настроенный в vSphere, который подключен к вашей физической сетевой карте.
Вам нужно будет создать второй vSwitch (для здравого смысла я рекомендую называть его "Private"), который не привязан ни к каким физическим сетевым интерфейсам.
После того как эти два vSwitch настроены, вы можете создать виртуальную машину с двумя vNIC - по одному на каждый vSwitch. Используйте любую "роутерную" ОС, которая вам нравится (обычно что-то вроде ipfire или pfSense подойдет), и сконфигурируйте ее для NAT-пакетов между вашими коммутаторами WAN (Public) и LAN (Private).
Чтобы использовать ваши /29 IP-адреса, вам нужно будет создать виртуальные машины, подключенные к вашему частному коммутатору vSwitch, а затем при необходимости переадресовать порт NAT.
Я бы действительно настоятельно рекомендовал вам не размещать интерфейс управления ESXi в Интернете напрямую. Тогда ваш единственный контроль безопасности - это ваш пароль, который дает вам полные ключи от королевства.
Я бы посоветовал вам установить Unified Threat Manager (UTM), например pfsense или Untangle, в качестве маршрутизатора с открытым IP-адресом. Ваша сеть будет выглядеть так:
Internet ---> VSWitch1 ---> UTM ---> VSwitch2> --- Virtual Machines
Куда:
- VSWitch1 подключен к реальной сетевой карте, которая обращена к Интернету
- UTM подключен к VSWitch1 (с одним из ваших общедоступных 29-битных IP-адресов) и VSwitch2 (с частным IP-адресом)
- VSwitch2 не подключен ни к каким реальным сетевым картам
- Все виртуальные машины подключены к NIC и имеют частные IP-адреса (например, 192.168.0.0/24 или 10.0.0.0/8).
В этой конфигурации вы будете использовать UTM для выполнения NAT, чтобы ваши виртуальные машины имели доступ к Интернету (и наоборот, используя переадресацию портов, где это необходимо). Эти UTM поставляются с функциями брандмауэра, IPS и всеми полезными средствами для защиты вашей сети.
Для доступа ESXI я бы порекомендовал вам сделать VPN для вашей частной сети. Поместите свой VMKernel в частную сеть (например, 192.168.0.101/24). Таким образом, вы проходите аутентификацию через VPN, и весь ваш трафик шифруется. VPN - это особенность UTM, о которой я упоминал.
Плюс! Бонус! Они бесплатны и с открытым исходным кодом:-)
Если вам нужен прямой доступ в Интернет к вашему ESXI - я все равно рекомендовал бы, по крайней мере, установить межсетевой экран /NAT между ESXI и Интернетом, в противном случае вы останетесь на [несуществующих] функциях безопасности ESXi.