About the boot process of LTSP clients, I think it's better not to focus
on LTSP, but on the simplest possible netbooted system that works out of
the box in all Debian/Ubuntu versions (and many other Linux distros)
without using a custom initramfs:
Let's say we have an "rw" NFS export for a single client on some server.
And we just pass "root=/dev/nfs ip=dhcp boot=nfs" in the client command
line.
The *stock* initramfs (related packages: initramfs-tools, klibc) then
brings up the network interface and mounts the NFS root file system and
chains to it.
That NFS export (chroot) may have any package installed in it, gnome,
kde, apache, network-manager, avahi etc.
There's no special handling of anything; everything works without
customizing any configuration file, the only part that is needed is to
put "manual" in $CHROOT/etc/network/intefaces.
If "manual" is not inserted there, then the packages that use ifupdown
won't receive the appropriate events.
We can get a list of those packages from http://packages.debian.org, but
I don't think it's important; we don't want to special-case any one of them.
For example, ntpdate needs an if-up.d event to sync the clock, ethtool
adjusts the WOL and other NIC settings, and there's also avahi, openssh,
resolvconf etc.
So to sum up, a netbooted system needs a way to "have all the events
sent for the boot interface, but prohibit its IP from being changed and
prohibit it from getting down".
In practise, the "manual" flag covered that fine so far.
But if that's ...abusing its intented purpose, and another solution is
necessary, I would propose this:
1) initramfs-tools, dracut etc could create a file somewhere in /run to
mark the boot interface
2) ifupdown, network-manager, wicd etc could read that file and handle
that interface in that aforementioned special way (send events, maybe
even show the connection speed and status in the network-manager UI, but
don't change the IP or ifdown it).