Subject: Re: Sun 3/60 diskless boot w/ Linux Bootserver
To: Matthew Sparby <matthews@scc.net>
From: Peter Svensson <petersv@df.lth.se>
List: port-sun3
Date: 02/15/1996 09:40:43
On Wed, 14 Feb 1996, Matthew Sparby wrote:

> RARP:
> The first step was to get the Linux kernel compiled with RARP support.  That was the easiest of all.
> 
> Next I had to put a hostname entry for the Sun in the Linux Box's /etc/hosts file.  No problem it's name is now 'fjord'.
> 
> Next I had to put an entry in the kernel's RARP table for the Sun's Ethernet Address.  This was a little confusing.  It was easy enough to do it manually with the command:
> 
>      rarp -s fjord 8:0:20:0:4A:2E
> 
> That worked fine and the Sun found the appropriate IP address when I turned it on.  My question about this is, Is there a way to set a RARP config file so the Linux box has the information when it boots... or do I have to manually put the rarp command in the rc.local file?

The rarp command as distributed with Slackware from about a year ago 
listed the missing feature of reading /etc/ethers as a bug. So you had to 
enter the rarp-commands in rc.local.

> TFTP:

> Next I have to configure tftp so the Sun can obtain the 'netboot' file,
> and again I'm a little confused here.  I have a /tftpboot directory now
> and I have the 'netboot' file in that directory.  I understand that I need
> to make a symlink to from the netboot file to a filename derived from the
> Sun's IP address expressed in Hexadecimal (ie CFCFCF17 for
> 199.199.199.23). 

Some architectures use CFCFCF17.SUN3. Experimentation and tcpdum will 
show the correct name. Beware that some linux versions of tftpd does the 
wrong thing with respect to chroot:ing to /tftpboot. I had to recompile 
mine with an added chroot command. YMMV.

> BOOTP:
> Assuming it finds the bootfile correctly, the way I understand it, it should then query my Linux box's bootp daemon for instructions on where it's root filesystem will be and from there it will obtain it's kernel and continue booting.  This is where I am really confused.  I need to know what information is REQUIRED in the /etc/bootptab file in order for the Sun to boot.  Also, how do I express the Ethernet Address (8:0:20:0:4A:2E) in hex for the ha= parameter?

No, you need to use the bootparams system. Some linux distibutions come 
without it, so you may have to compile your own. You then enter something 
like:
  "diskless.my.org	root=server:/export/root swap=server:/export/swap"
in /etc/bootparams. Remember to export the necesarry filesystemd by NFS.

Tcpdump is really an invaluable tool the first time you are setting up a 
diskless client, there are so many things to get right.

Peter