
У меня установлена XenServer с машинами Debian (lenny), которые создаются ежедневно с помощью скрипта, который создает машину из шаблона и назначает ей новое имя хоста.
В нашей сети есть устройство Fortinet 60B, которое служит в качестве DHCP-сервера, и контроллер домена Microsoft Windows 2008, который также служит DNS-сервером. Я хотел бы настроить шаблон виртуальной машины для отправки своего имени хоста на DNS-сервер, когда он получает арендованный IP-адрес от DHCP.
В настоящее время Fortinet назначает DC в качестве DNS-сервера вместе с арендой IP. Я пробовал добавить строку 'send host-name "my-host-name"' в /etc/dhcp3/dhclient.conf, но в DC ничего не обновляется.
решение1
То есть вы хотите, чтобы ваш клиент отправлял свое имя хоста на ваш DNS-сервер?
Это отлично работает с клиентами Windows, но для машин Linux я бы пошел наоборот: настроил бы клиентов на запрос IP-адреса у DHCP-сервера.иимя хоста. Используя опцию «запросить имя хоста», dhclient запрашивает у DHCP-сервера отправку имени хоста вместе с IP-адресом, а затем устанавливает имя хоста виртуальной машины.
Конечно, вам нужно будет подготовить в DNS имя хоста для каждого IP-адреса в диапазоне DHCP.
Таким образом, у вас не возникнет проблем с кэшированием DNS/задержкой распространения, и у вас будет централизованное место со всеми IP-адресами и именами хостов — ваш DNS-сервер.
Я не знаю, поддерживает ли DHCP-сервер вашего устройства отправку имен хостов (большинство поддерживает), но я думаю, что это самый простой способ для клиентов Linux.
Примечание: Если вы настроили свой DHCP-сервер так, чтобы одна и та же машина всегда получала один и тот же IP-адрес (например, используя MAC-адрес), то она, очевидно, всегда будет получать одно и то же имя хоста. На некоторых DHCP-серверах вы можете использовать непосредственно имя хоста вместо IP-адреса в файлах конфигурации.
решение2
В итоге я использовал скрипт, который запускает nsupdate после создания виртуальной машины из шаблона и при каждой загрузке.
решение3
Это немного похоже намой собственный вопрос. Взгляните на мой последний комментарий к единственному полученному мной ответу, где я ссылаюсь на dhclient.conf.
решение4
Хм. Никогда не пробовал именно эту конфигурацию - у меня это работало с клиентами Linux на серверах DHCP Windows, но в этой настройке сервер DHCP выполняет обновление. Не уверен, делает ли Fortinet box то же самое.
Вы можете попробовать заставить клиента напрямую взаимодействовать с DNS-сервером, например:
send fqdn.server-update off;
send fqdn.encoded on;
send fqdn.fqdn "hostname.example.com.";
в /etc/dhcp3/dhclient.conf. Проверьте man dhclient.conf
для получения дополнительной информации. Мне пришлось установить по крайней мере, send fqdn.fqdn
чтобы это заработало в моей настройке.
Вам также придется включить небезопасные обновления ваших DNS-зон.