rpld, which at present runs only under Linux, will net-boot IBM style RPL boot ROMs (this is not the same as the Novell IPX-style RPL protocol, despite the name).
We wrote rpld by reverse-engineering the protocol from Sun's rpld(1) Solaris RPL server (which doesn't really work) and a net-boot ROM in a Davicom dm9102 fast-ethernet chipset. This is also the only client with which the server has been tested. We would appreciate feedback from anyone who succeeds (or fails!) in making this work with any other clients. We'd also like to see some real documentation for RPL/RIPL (IBM seems to use both terms); we weren't able to find any, largely it seems because IBM have many different products referred to as RPL and RIPL, few of which seemed to have anything to do with remote booting (actually, from the documents we saw, they could have been to do with pretty much anything, given the number of TLAs in them).
In addition, we have written for the Davicom NIC a small assembly language program which switches it off, since (like many modern ethernet chips) it is a shared-memory device, and will unless instructed otherwise scribble all over a Linux kernel as it boots. This program (dmfix) is in the rpld distribution.
rpld is distributed under the GNU Public License, a copy of which is included in the distribution. This means that there is no warranty for rpld, not even an implied warranty. As you are undoubtedly aware, this means that you are on your own, however badly our code breaks.
Get the source distribution (as a gzip'd tar file). This includes all the code for rpld, the documentation (some of which is actually helpful and has even been spell-checked), and sample config files.
There is no binary distribution. If you can't compile it (type "make" twice), you probably aren't clueful enough to use it.
© 1999 James McKenzie and Chris Lightfoot.
IBM is a trademark of IBM Corp.; Sun is a trademark of Sun Microsystems; Novell is a trademark of Novell Corp.; Davicom is a trademark of Davicom Corp.; for all we know, other terms may be trademarks or registered trademarks in some jurisdictions too.
You can read the man page for rpld(8), and for rpld.conf(5).
The change log is here