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