After talking with Jeremy and dcantrell, here's the current NBD root proposed way forward. These details may be updated as we experiment more, but here's the general idea.
1) Implement mount to handle nbd in a way similar to loop.
mount -t ext3 /path/to/file.img -o loop,ro /path/to/mntpoint mount -t ext3 192.168.0.254:2000 -o nbd,ro /path/to/mntpoint
-o nbd runs nbd-client to attach the specified IP and port number to the first available /dev/nbdX device. It then uses the normal mount options to mount it, as it behaves just like a normal block device.
2) Propose a new RFC to the IETF for an official NBD root option
option nbd-root "IPADDRESS:PORT"; option nbd-root "192.168.0.254:2000";
DHCP might give the client an option like this. A client might recognize it and use the given IP:PORT to find the NBD block device. Loop then progresses as above.
David is considering IPADDRESS in the specification to be either IPv4 or IPv6. The option details and syntax may change depending on further research.
Warren Togami wtogami@redhat.com
anaconda-devel@lists.stg.fedoraproject.org