Есть в природе такой забавный сабж. Это когда интеловский сетевой загрузчик (или там ipxe) конфигурирует интерфейс, подымает iscsi сессию на удалённый таргет и полученные устройства представляет как обычные диски bios, ну, там, 0x80 и т.д. Потом всякие bootы и loaderы делают своё дело, грузят с файловой системы ядро и модули, причём сабж (isboot.ko) должен быть среди модулей. После старта он находит в памяти таблицу, оставленную там ещё ipxe, по её данным перехватывает (или открывает заново, в деталях не разбирался) iscsi сессию и предоставляет ядру, во-первых, блочное устройство (или несколько, это уж как на таргете настроено), а в-главных, сконфигурированный интерфейс. Как правило, сконфигуированный ещё ipxe по dhcp.
Сам сабж dhcp не умеет, по крайней мере пакетов от него я в сети не видал. А вот теперь на загруженной системе пытаемся запустить dhclient. Он (dhclient) радостно очищает параметры интерфейса перед тем как послать туда свой бродкаст реквест, но тут ему что-то на диске понадобилось, то ли егойные /var/db/dhclient.leases, то ли кусок libc, то ли лог записать. А диск-то к этому моменту уже тю-тю, ибо адрес на интерфейсе сброшен. Hесчастный сабж даже пытается время от времени приконнектиться к таргету, дабы восстановить сессию, но куда ему без сети-то...
Есть какой-нибудь общий принцип работы с dhclientом, чтобы он, значит, не прерывал connectivity?