У меня есть быстрый вопрос. У меня есть несколько виртуальных машин (VMWare Workstation), работающих на сервере Ubuntu, и я обнаружил, что служба VMWare NAT (DHCP) работает ненадежно и медленно. Я должен использовать NAT вместо моста, потому что у меня недостаточно статических IP-адресов для всех виртуальных машин.
Можно ли настроить хост Linux (Ubuntu) как DHCP-сервер, но только для локальных виртуальных машин?
На сервере есть 2 сетевых адаптера, поэтому, если я установил eth0 как статический IP-адрес, который подключается к внешней работе, и eth1 для прослушивания DHCP. Теперь я думаю, что если я не хочу, чтобы DHCP транслировался, я бы просто не подключал кабель к eth1 и не настраивал виртуальную машину для подключения к eth1 для адресов DHCP. Таким образом, DHCP не будет транслировать через мою сеть, но будет прослушивать этот интерфейс.
Будет ли такая установка работать?
РЕДАКТИРОВАТЬ
Я должен использовать NAT или DHCP для гостевых виртуальных машин, потому что серверы находятся в центре обработки данных, который не предлагает DHCP, и у нас недостаточно статических IP-адресов.
Спасибо.
Я уверен, что вы можете использовать iptables, чтобы просто блокировать любые входящие DHCP-запросы с других машин, но другой вариант - настроить ваш DHCP-сервер с достаточным объемом для обеспечения ваших виртуальных машин, которые должны иметь резервирование для каждого. Таким образом не будет других адресов, которые можно было бы передать, даже если сервер действительно получил запрос.
По моему опыту использования Virtualbox 4.x в ситуации NAT, Virtualbox создает виртуальную сеть внутри хоста со своим собственным диапазоном IP-адресов и шлюзом (шлюз является хостом со статическим IP-адресом), в котором находятся виртуальные машины. Весь внешний доступ осуществляется через шлюз NAT на виртуальном сетевом адаптере отдельно от любых физических адаптеров и кабелей.
Следовательно, в Virtualbox можно, зная детали внутренней сети NAT, отключить DHCP-сервер Virtualbox и предоставить свой собственный из виртуальной сети.
DHCP не будет проходить за пределами шлюза, если он специально не маршрутизируется, например, через туннель VPN.
Я не могу комментировать конкретно VMWare, но предполагаю, что он работает аналогичным образом.
Если это удастся, вам необходимо убедиться, что виртуальная машина, предоставляющая DHCP, предоставляет те же сетевые данные, что и хост, иначе вы потеряете доступ к ним через сеть. Однако с моим небольшим опытом работы с VMWare у вас должен быть доступ к консольному сеансу для настройки DHCP-машины в случае потери доступа к сети.
Если вам нужен простой DHCP-сервер, я бы предложил использовать dnsmasq ( http://thekelleys.org.uk/dnsmasq/doc.html ). Это мощный сервер пересылки DNS, но со встроенным DHCP-сервером. Я не уверен, можно ли полностью отключить часть DNS, но если это будет проблемой, вы можете настроить ее на другом порту.
Настройка DHCP - это один из вариантов конфигурации (--dhcp-range), и то же самое с более продвинутыми функциями.