Доброго времени суток!
Сегодня хотелось бы написать о том, как я провел Интернет в виртуальную сеть ESXi 5.5 при условии, что адресация реальной сети, к которой подключён гипервизор, совпадает с той, что настроена в приватной сети на одном из местных виртуальных коммутаторов, связанному с внешним миром чуть более, чем никак.
Предыстория такова - один из клиентов нашей фирмы у задумал себя провести миграцию серверов с Windows Server 2003 на Windows Server 2012 R2 вместе с доменом и почтой в виде Exchange 2003. Чтобы не возникло проблем во время миграции, было решено предварительно прогнать процесс в тестовой виртуальной среде сервера на базе ESXi 5.5 U3 (благо аппаратные ресурсы позволяли это сделать).
После P2V конвертации, подключения всех виртуальных машин (ВМ) серверов к виртуальному коммутатору с приватной сетью, повешенному на отключённый от сети интерфейс, проверки работы DHCP-сервера, добавления в домен серверов и всяких прочих установок-настроек, возник вопрос - как обеспечить машины Интернетом?
Итак, исходные условия:
- Сервер - ESXi 5.5 U3;
- Подключение к сети - vmnic0, подсеть 172.16.0.0/16, поделённая на 15 частей по /24. В сети работает DHCP-сервер, администрирующий все сегменты. Интернет, для простоты описания, есть сразу после получения узлом IP-адреса;
- Виртуальные сети - vNetwork0 на vSwitch0 (привязан к подключённому к сети vmnic0), vNetwork1 на vSwitch1 (привязан к отключённому от сети vmnic1). Адресации и в той и в другой сети совпадает, сервера одни и те же (по количественным показателям);
- Цель - подключение машин из сети vNetwork1 к Интернету посредством сети vNetwork0.
Поскольку не хотелось особо трогать конфигурации маршрутизаторов клиента, ибо сеть там не слишком тривиальна с точки зрения структуры, то мозг попробовал найти решение, по минимуму задевающее исходную инфраструктуру. Логичное предположение в данном случае - сделать пограничную ВМ, подключённую и к vSwitch0 и к vSwitch1, настройка на ней NAT. Всё бы хорошо, если бы не одинаковая адресация двух сетей.
Собственно, решение:
- Создание разделяющей сети на vSwitch1. Под этим тезисом скрывается привязка новой виртуальной сети vGate c адресацией, например, 192.168.42.0 и присвоения ей VLAN за номером, скажем, 101. Определение VLAN имеет ключевое значение для разделения сетей vGate и vNetwork1.
- Присвоение vNetwork1 номера VLAN 100.
Как это выглядит - Создание ВМ Router, имеющей 2 сетевые карты, подключённые к vNetwork0 и vGate соответственно. На ней поднимается CentOS, прописываются настройки интерфейсов - либо статика, либо резервация DHCP для интерфейса, смотрящего в vNetwork0 (например, 172.16.20.20/24) и статика для интерфейса, смотрящего в vGate (например, 192.168.42.1/24). Важный момент, который нужно учесть при настройке сетевых интерфейсов - маршрут по умолчанию должен быть один и идти через интерфейс, настроенный на vNetwork0.
Свойства ВМ Router - Установка и настройка пакета dhcp на ВМ Router, выдающим адреса из диапазона 192.168.42.100-150, привязанного к интерфейсу, смотрящему в vGate.
- Доустановка компонентов и настройка iptables на ВМ Router. Разбираться, что за зверь FirewallD и с чем его едят, на тот момент времени не было. Плюс, дополнительным аргуметом был слегка непривычный вид конфигурационного файла iptables при работающем FirewallD. Собственно, самый доходчивый мануал по настройке NAT под Linux при помощи iptables можно почитать тут.
- Подключение к ВМ-ам из vNetwork1 дополнительных сетевых карт, смотрящих в vGate. Вот так они подключаются к сети, в которой есть свои DHCP-сервер и NAT с
блекджеком и плюхамиИнтернетом.Свойства ВМ с подведённым Интернетом
Пункты с 3-го по 5-ый я расписал вот здесь. Как-то так. Решение не универсальное, но вполне позволило не трогать конфигурацию боевой сети, не заняло много времени и дало результат. Не знаю, насколько оно масштабируемо, но когда ВМ не так много (не больше пары десятков) - думаю, сойдёт.
На этом закончу, пожалуй. Всего тебе, читатель, доброго+)
На этом закончу, пожалуй. Всего тебе, читатель, доброго+)
Комментариев нет:
Отправить комментарий