xref: /netbsd-src/usr.sbin/ndbootd/ndbootd.8 (revision 73d8bdb949e4a1b438e5c7b800ea68caac4f6f1d)
1*73d8bdb9Swiz.\"	$NetBSD: ndbootd.8,v 1.4 2002/02/02 01:21:00 wiz Exp $
22d0f1618Sfredette.\"	<<Id: ndbootd.8,v 1.2 2001/05/15 14:42:25 fredette Exp >>
32d0f1618Sfredette.\"
42d0f1618Sfredette.\" Copyright (c) 2001 Matthew Fredette.  All rights reserved.
52d0f1618Sfredette.\"
62d0f1618Sfredette.\" Redistribution and use in source and binary forms, with or without
72d0f1618Sfredette.\" modification, are permitted provided that the following conditions
82d0f1618Sfredette.\" are met:
92d0f1618Sfredette.\"   1. Redistributions of source code must retain the above copyright
102d0f1618Sfredette.\"      notice, this list of conditions and the following disclaimer.
112d0f1618Sfredette.\"   2. Redistributions in binary form must reproduce the above copyright
122d0f1618Sfredette.\"      notice, this list of conditions and the following disclaimer in the
132d0f1618Sfredette.\"      documentation and/or other materials provided with the distribution.
142d0f1618Sfredette.\"   3. All advertising materials mentioning features or use of this software
152d0f1618Sfredette.\"      must display the following acknowledgement:
162d0f1618Sfredette.\"        This product includes software developed by Matthew Fredette.
172d0f1618Sfredette.\"   4. The name of Matthew Fredette may not be used to endorse or promote
182d0f1618Sfredette.\"      products derived from this software without specific prior written
192d0f1618Sfredette.\"      permission.
202d0f1618Sfredette.\"
212d0f1618Sfredette.\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
222d0f1618Sfredette.\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
232d0f1618Sfredette.\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
242d0f1618Sfredette.\"
252d0f1618Sfredette.Dd May 9, 2001
262d0f1618Sfredette.Dt NDBOOTD 8
272d0f1618Sfredette.Os
282d0f1618Sfredette.Sh NAME
292d0f1618Sfredette.Nm ndbootd
302d0f1618Sfredette.Nd
312d0f1618Sfredette.Tn Sun
322d0f1618SfredetteNetwork Disk (ND) Protocol server
332d0f1618Sfredette.Sh SYNOPSIS
342d0f1618Sfredette.Nm
352d0f1618Sfredette.Op Fl s Ar boot2
362d0f1618Sfredette.Op Fl i Ar interface
372d0f1618Sfredette.Op Fl w Ar windowsize
382d0f1618Sfredette.Op Fl d
392d0f1618Sfredette.Ar boot1
402d0f1618Sfredette.Sh DESCRIPTION
412d0f1618Sfredette.Nm
422d0f1618Sfredetteis a server which supports the
432d0f1618SfredetteSun Network Disk (ND) Protocol.
442d0f1618SfredetteThis protocol was designed by Sun before they designed
452d0f1618Sfredette.Tn NFS .
462d0f1618SfredetteND simply
472d0f1618Sfredettemakes the raw blocks of a disk available to network clients.  Contrast
482d0f1618Sfredettethis with the true namespace and file abstractions that
492d0f1618Sfredette.Tn NFS
502d0f1618Sfredetteprovides.
512d0f1618Sfredette.Pp
522d0f1618SfredetteThe only reason you're likely to encounter ND nowadays is if you have
532d0f1618Sfredettean old Sun 2 machine, like the 2/120 or 2/50.  The Sun 2 PROMs can
542d0f1618Sfredetteonly use ND to boot over the network.  (Later, the Sun 3 PROMs would
552d0f1618Sfredetteuse
562d0f1618Sfredette.Tn RARP
572d0f1618Sfredetteand
582d0f1618Sfredette.Tn TFTP
592d0f1618Sfredetteto boot over the network.)
602d0f1618Sfredette.Pp
612d0f1618Sfredette.Nm
622d0f1618Sfredetteis a very simple ND server that only supports client reads for
632d0f1618Sfredettebooting.  It exports a disk that the clients consider to be
642d0f1618Sfredette.Pa /dev/ndp0
652d0f1618Sfredette(ND public unit zero).  The disk is available only to clients that are
662d0f1618Sfredettelisted in
672d0f1618Sfredette.Pa /etc/ethers
682d0f1618Sfredetteand have valid hostnames.
692d0f1618Sfredette(Sun 2 PROMs don't do RARP, but they do learn their IP
702d0f1618Sfredetteaddress from the first ND response they receive from the server.)
712d0f1618Sfredette.Pp
722d0f1618Sfredette.Ar boot1
732d0f1618Sfredetteis a file containing the mandatory first-stage network boot
742d0f1618Sfredetteprogram, typically
752d0f1618Sfredette.Pa /usr/mdec/bootyy .
762d0f1618SfredetteThe layout of the exported disk is:
772d0f1618Sfredette.Bl -bullet -offset indent
782d0f1618Sfredette.It
792d0f1618Sfredetteblock 0: normally a Sun disklabel (but ignored by the PROM)
802d0f1618Sfredette.It
812d0f1618Sfredetteblocks 1-15: the first-stage network boot program
822d0f1618Sfredette.El
832d0f1618Sfredette.Pp
842d0f1618SfredetteWith the
852d0f1618Sfredette.Fl s Ar boot2
862d0f1618Sfredetteoption,
872d0f1618Sfredette.Nm
882d0f1618Sfredettewill also make a second-stage network
892d0f1618Sfredetteboot program available to clients, typically
902d0f1618Sfredette.Pa /usr/mdec/netboot .
912d0f1618SfredetteWhen
922d0f1618Sfredette.Ar boot2
932d0f1618Sfredetteis a filename, that file is the single second-stage network boot program
942d0f1618Sfredetteto be served to all clients.
952d0f1618Sfredette.Pp
962d0f1618SfredetteWhen
972d0f1618Sfredette.Ar boot2
982d0f1618Sfredetteis a directory name, typically
992d0f1618Sfredette.Pa /tftpboot ,
1002d0f1618Sfredette.Nm
1012d0f1618Sfredettefinds a
1022d0f1618Sfredetteclient's second-stage network boot program by turning its IP address
1032d0f1618Sfredetteinto a filename in that directory, in the same manner later Sun 3
1042d0f1618SfredettePROMs do when TFTPing (i.e., if a client has IP address 192.168.1.10,
1052d0f1618Sfredette.Nm
1062d0f1618Sfredetteexpects to find
1072d0f1618Sfredette.Pa /tftpboot/C0A8010A.SUN2
1082d0f1618Sfredette).
1092d0f1618Sfredette.Pp
1102d0f1618SfredetteWhen used in this last manner with an ND-aware first-stage boot program,
1112d0f1618Sfredette.Nm
1122d0f1618Sfredetteserves the same purpose in the Sun 2 netboot process as
1132d0f1618Sfredette.Xr tftpd 8
1142d0f1618Sfredetteserves in the Sun 3 netboot process.
1152d0f1618Sfredette.Pp
1162d0f1618SfredetteAny second-stage network boot program always begins at block 16 of the
1172d0f1618Sfredetteexported disk, regardless of the length of the first-stage network
1182d0f1618Sfredetteboot program.
1192d0f1618Sfredette.Pp
1202d0f1618SfredetteAll first- and second-stage network boot programs must have all
1212d0f1618Sfredetteexecutable headers stripped off; they must be raw binary programs.
1222d0f1618Sfredette.Pp
1232d0f1618SfredetteThe remaining options are:
1242d0f1618Sfredette.Bl -tag -width "directory"
1252d0f1618Sfredette.It Fl i Ar interface
1262d0f1618SfredetteOnly listen for ND clients on interface
1272d0f1618Sfredette.Ar interface .
1282d0f1618SfredetteNormally
1292d0f1618Sfredette.Nm
1302d0f1618Sfredettelistens for clients on the first non-loopback IP interface
1312d0f1618Sfredettethat is up and running.
1322d0f1618Sfredette.It Fl w Ar windowsize
1332d0f1618SfredetteThis adjusts the window size of the ND protocol.  This is
1342d0f1618Sfredettethe number of 1-kilobyte packets that can be transmitted before
1352d0f1618Sfredettewaiting for an acknowledgement.  Defaults to 6.
1362d0f1618Sfredette.It Fl d
1372d0f1618SfredetteRun in debug mode.  Debugging output goes to standard error
1382d0f1618Sfredetteand the server will not fork.
1392d0f1618Sfredette.El
1402d0f1618Sfredette.Sh FILES
1412d0f1618Sfredette.Bl -tag -width Pa -compact
1422d0f1618Sfredette.It Pa /etc/ethers
1432d0f1618Sfredette.It Pa /etc/hosts
1442d0f1618Sfredette.\" .It Pa /tftpboot
1452d0f1618Sfredette.El
1462d0f1618Sfredette.Sh SEE ALSO
1472d0f1618Sfredette.Xr tftpd 8
1482d0f1618Sfredette.Sh BUGS
1492d0f1618SfredetteWhether or not there is a second-stage network boot program, the
1502d0f1618Sfredetteexported disk appears to all clients to have infinite length.  The
1512d0f1618Sfredettecontent of all blocks not used by the first- or second-stage network
1522d0f1618Sfredetteboot programs is undefined.  All client reads of undefined blocks
1532d0f1618Sfredetteare silently allowed by the server.
154