Мне нужно решить проблему.
Сценарий:
LAN network 192.168.190.0/255 (1 server, 60 clients)
Server Windows 2008 (server roles: mail server, print server, dhcp server...etc)
5 pxe-clients
Debian Linux server
Несколько дней назад я установил другой сервер (Linux Debian), предназначенный для работы в качестве сервера pxe. Основная задача сервера pxe - обслуживать 5 клиентов только для загрузки по сети pxe (клиенты принадлежат к той же локальной сети, что и упоминалось выше). Казалось, все работает нормально, но, к сожалению, я неожиданно обнаружил, что несколько проблем не за горами. Несмотря на то, что я дал серверу (Debian) статический IP-адрес, подсеть и шлюз, два из пяти pxe-клиентов получили IP-адрес сервера Debian в качестве шлюза по умолчанию. Вкратце, IP-адрес сервера Debian - 192.168.190.216, а его шлюз по умолчанию - 192.168.190.254. Два клиента pxe имели свой собственный IP-адрес, но у них был тот же шлюз, что и 192.168.190.216 (IP-адрес сервера Debian). Это, конечно, не позволяло клиентам pxe просматривать сеть.
Вопросы:
Вы пытаетесь запустить два DHCP-сервера в одной сети уровня 2. Это рецепт катастрофы.
Серверы получают неправильный шлюз, что означает, что DHCP-сервер в вашем Linux-сервере неправильно настроен. Вы должны это исправить.
Но большая проблема в том, что с двумя DHCP-серверами никогда нельзя быть уверенным, какой из них ответит первым. Некоторые клиенты PXE будут получать адреса с сервера Windows, а не с загрузки PXE. Другие обычные машины получат DHCP-адрес от Linux-машины и тоже будут иметь проблемы.
VLAN - это один из способов решения этой проблемы. По сути, виртуальные локальные сети разделяют один коммутатор на группу коммутаторов меньшего размера. Итак, если у меня есть 48-портовый коммутатор, и порты 1-24 помещены в VLAN1, а 25-47 - в VLAN2, у меня теперь почти то же самое, что и 2 отдельных 24-портовых коммутатора. Заметили, что я не включил порт 48? Этот порт настраивается как магистраль, содержащая обе сети VLAN, и идет на мой брандмауэр. Брандмауэр также может обрабатывать VLAN и обеспечивает доступ в Интернет к обеим сетям. Таким образом, они остаются отдельными, но мне не нужно связывать 2 интерфейса на брандмауэре и прокладывать 2 кабеля. Они функционируют как отдельные сети, каждая со своей собственной подсетью (вы можете использовать одно и то же для обеих, но это очень быстро запутывает), свои собственные DHCP- и DNS-серверы, свой собственный шлюз и т. Д. На коммутаторе вы назначаете каждый порт для конкретная VLAN.
Другой вариант - использовать параметры DHCP 66 и 67 на DHCP-сервере Windows для направления клиентов PXE на Linux-машину. Простой поиск в Google по запросу "linux pxe windows dhcp" дал множество руководств. В этом случае вы должны отключить DHCP-сервер на Linux-машине и просто использовать DHCP-сервер Windows. Этот вариант, вероятно, будет проще, если у вас нет других причин использовать их в разных сетях.
Вам необходимо запустить свой PXE-сервер в "проксиDHCP". Таким образом, ваш сервер Windows 2008 DHCP будет (как обычно) отвечать за назначение IP-адресов, шлюзов по умолчанию и т. будет предоставлять дополнительную информацию DHCP, связанную с PXE, «только» для клиентов, загружаемых PXE. Эта «дополнительная» информация DHCP для клиентов PXE в основном состоит из имени файла NBP (программа сетевой загрузки) и IP-адреса TFTP-сервера, на котором он находится ( сервер Debian в вашем случае).
Затем оставьте текущий DHCP нетронутым и установите proxyDHCP на своем сервере Debian PXE.
Совершенно нормально запускать сервер DHCP и сервер proxyDHCP в одной подсети.