Обычно, когда я делаю такие вещи (и я делаю это много), я склонен использовать виртуальную машину, действующую как сетевой сервер, который выполняет такие вещи, как DHCP, DNS - и кеширование для всего мира, и локальное подделывание fake.tld
- и т. Д.
Самый простой способ - выполнить базовую, чистую установку Debian с помощью образа netinstall - выберите ни одну из групп пакетов, кроме опции ssh-сервера и, возможно, «стандартных утилит».
После того, как он запущен и работает, чтобы превратить его в DHCP-сервер для вашей внутренней сети виртуальных машин, установите isc-dhcp-server
пакет. Затем отредактируйте/etc/dhcp/dhcpd.conf
Вот простой пример из моего. Это устанавливает короткое время аренды (5 минут), устанавливает клиентский поисковый домен и т. Д. На «fake.tld», указывает их DNS-запросы на 192.168.1.2 и выдает адреса в диапазоне 10.99.98.80-100 с 24 биты сетевой маски. Обратите внимание, что для этой виртуальной машины должен быть настроен адаптер с IP-адресом в подсети 10.99.98.0/24.
В дополнение к общему пулу я даю устройству с 80:c1:6e:2b:b6:cd
явно заданным IP- адресом MAC-адрес (а также любой другой option
используемый DNS-сервер, шлюз и т. Д.) Для .110
ip. Любая такая «статическая аренда» должна быть для адресов вне вашего динамического диапазона, но внутри подсети, настроенной как в файле конфигурации, так и на сетевом адаптере машины, на которой размещается служба.
Когда вы добавляете новый хост и хотите, чтобы у него был определенный IP, просто добавьте другой раздел хоста - имя хоста не должно совпадать с тем, что отправляет клиент, но оно должно быть уникальным в файле. После добавления перезапустите сервисservice isc-dhcp-server restart
ddns-update-style none; option domain-name "fake.tld"; option domain-name-servers 192.168.1.2; option domain-search "fake.tld"; default-lease-time 600; max-lease-time 720; authoritative; log-facility local7; subnet 10.99.98.0 netmask 255.255.255.0{ range 10.99.98.80 10.99.98.100; option routers 10.99.98.1; } host lr-tv { hardware ethernet 80:c1:6e:2b:b6:cd; fixed-address 10.99.98.110; option routers 10.99.98.1; option domain-name-servers 192.168.1.2; }