NDBOOTD(8) BSD System Manager's Manual NDBOOTD(8)
ndbootd -- Sun Network Disk (ND) Protocol server
ndbootd [-s boot2] [-i interface] [-w windowsize] [-d] boot1
ndbootd is a server which supports the Sun Network Disk (ND) Protocol. This protocol was
designed by Sun before they designed NFS. ND simply makes the raw blocks of a disk avail-
able to network clients. Contrast this with the true namespace and file abstractions that
The only reason you're likely to encounter ND nowadays is if you have an old Sun 2 machine,
like the 2/120 or 2/50. The Sun 2 PROMs can only use ND to boot over the network. (Later,
the Sun 3 PROMs would use RARP and TFTP to boot over the network.)
ndbootd is a very simple ND server that only supports client reads for booting. It exports
a disk that the clients consider to be /dev/ndp0 (ND public unit zero). The disk is avail-
able only to clients that are listed in /etc/ethers and have valid hostnames. (Sun 2 PROMs
don't do RARP, but they do learn their IP address from the first ND response they receive
from the server.)
boot1 is a file containing the mandatory first-stage network boot program, typically
/usr/mdec/bootyy. The layout of the exported disk is:
o block 0: normally a Sun disklabel (but ignored by the PROM)
o blocks 1-15: the first-stage network boot program
With the -s boot2 option, ndbootd will also make a second-stage network boot program avail-
able to clients, typically /usr/mdec/netboot. When boot2 is a filename, that file is the
single second-stage network boot program to be served to all clients.
When boot2 is a directory name, typically /tftpboot, ndbootd finds a client's second-stage
network boot program by turning its IP address into a filename in that directory, in the
same manner later Sun 3 PROMs do when TFTPing (i.e., if a client has IP address
192.168.1.10, ndbootd expects to find /tftpboot/C0A8010A.SUN2 ).
When used in this last manner with an ND-aware first-stage boot program, ndbootd serves the
same purpose in the Sun 2 netboot process as tftpd(8) serves in the Sun 3 netboot process.
Any second-stage network boot program always begins at block 16 of the exported disk,
regardless of the length of the first-stage network boot program.
All first- and second-stage network boot programs must have all executable headers stripped
off; they must be raw binary programs.
The remaining options are:
Only listen for ND clients on interface interface. Normally ndbootd listens for
clients on the first non-loopback IP interface that is up and running.
This adjusts the window size of the ND protocol. This is the number of 1-kilo-
byte packets that can be transmitted before waiting for an acknowledgement.
Defaults to 6.
-d Run in debug mode. Debugging output goes to standard error and the server will
Whether or not there is a second-stage network boot program, the exported disk appears to
all clients to have infinite length. The content of all blocks not used by the first- or
second-stage network boot programs is undefined. All client reads of undefined blocks are
silently allowed by the server.
BSD May 9, 2001 BSD