Home | History | Annotate | Line # | Download | only in bootpd
      1  1.1  gwr 
      2  1.1  gwr This is an enhanced version of the CMU BOOTP server which was derived
      3  1.1  gwr from the original BOOTP server created by Bill Croft at Stanford.
      4  1.1  gwr This version merges all the enhancements and bug-fixes from the
      5  1.1  gwr NetBSD, Columbia, and other versions.
      6  1.1  gwr 
      7  1.2  gwr Please direct questions, comments, and bug reports to the list:
      8  1.2  gwr 	<bootp (a] andrew.cmu.edu>
      9  1.1  gwr 
     10  1.1  gwr You can subscribe to this mailing list by sending mail to:
     11  1.1  gwr 	bootp-request (a] andrew.cmu.edu
     12  1.1  gwr (The body of the message should contain: "Add <your-address>")
     13  1.1  gwr 
     14  1.1  gwr [ From the NetBSD README file: ]
     15  1.1  gwr 
     16  1.1  gwr BOOTPD is a useful adjunct to the nfs diskless boot EPROM code.
     17  1.1  gwr 
     18  1.1  gwr The alternatives for initiating a boot of a kernel across a network
     19  1.1  gwr are to use RARP protocol, or BOOTP protocol. BOOTP is more flexible;
     20  1.1  gwr it allows additional items of information to be returned to the
     21  1.1  gwr booting client; it also supports booting across gateways.
     22  1.1  gwr 
     23  1.1  gwr [ From the CMU README file: ]
     24  1.1  gwr 
     25  1.1  gwr Notes:
     26  1.1  gwr 1) BOOTP was originally designed and implemented by Bill Croft at Stanford.
     27  1.1  gwr    Much of the credit for the ideas and the code goes to him.  We've added
     28  1.1  gwr    code to support the vendor specific area of the packet as specified in
     29  1.1  gwr    RFC1048.  We've also improved the host lookup algorithm and added some
     30  1.1  gwr    extra logging.
     31  1.1  gwr 
     32  1.1  gwr 2) The server now uses syslog to do logging.  Specifically it uses the 4.3bsd
     33  1.1  gwr    version.  I've #ifdef'd all of these calls.  If you are running 4.2 you
     34  1.1  gwr    should compile without the -DSYSLOG switch.
     35  1.1  gwr 
     36  1.1  gwr 3) You must update your /etc/services file to contain the following two lines:
     37  1.1  gwr 	bootps		67/udp		bootp		# BOOTP Server
     38  1.1  gwr 	bootpc		68/udp				# BOOTP Client
     39  1.1  gwr 
     40  1.1  gwr 4) Edit the bootptab.  It has some explanitory comments, and there
     41  1.1  gwr    is a manual entry describing its format (bootptab.5)
     42  1.1  gwr    If you have any questions, just let us know.
     43  1.1  gwr 
     44  1.1  gwr Construction:
     45  1.1  gwr     [ See the file Installation which is more up-to-date. -gwr ]
     46  1.1  gwr 
     47  1.1  gwr     Make sure all of the files exist first.  If anything is missing,
     48  1.1  gwr     please contact either Walt Wimer or Drew Perkins by E-mail or phone.
     49  1.1  gwr     Addresses and phone numbers are listed below.
     50  1.1  gwr 
     51  1.1  gwr     Type 'make'.  The options at present are: -DSYSLOG which enables logging
     52  1.1  gwr     code, -DDEBUG which enables table dumping via signals, and -DVEND_CMU
     53  1.1  gwr     which enables the CMU extensions for CMU PC/IP.
     54  1.1  gwr 
     55  1.1  gwr     Edit the bootptab.  The man page and the comments in the file should
     56  1.1  gwr     explain how to go about doing so.  If you have any problems, let me know.
     57  1.1  gwr 
     58  1.1  gwr     Type 'make install'.  This should put all of the files in the right place.
     59  1.1  gwr 
     60  1.1  gwr     Edit your /etc/rc.local or /etc/inetd.conf file to start up bootpd upon
     61  1.1  gwr     reboot.  The following is a sample /etc/inetd.conf entry:
     62  1.1  gwr 	# BOOTP server
     63  1.1  gwr 	bootps dgram udp wait root /usr/etc/bootpd bootpd -i
     64  1.1  gwr 
     65  1.1  gwr Care and feeding:
     66  1.1  gwr     If you change the interface cards on your host or add new hosts you will
     67  1.1  gwr     need to update /etc/bootptab.  Just edit it as before.  Once you write
     68  1.1  gwr     it back out, bootpd will notice that there is a new copy and will
     69  1.1  gwr     reread it the next time it gets a request.
     70  1.1  gwr 
     71  1.1  gwr     If your bootp clients don't get a response then several things might be
     72  1.1  gwr     wrong.  Most often, the entry for that host is not in the database.
     73  1.1  gwr     Check the hardware address and then check the entry and make sure
     74  1.1  gwr     everything is right.  Other problems include the server machine crashing,
     75  1.1  gwr     bad cables, and the like.  If your network is very congested you should
     76  1.1  gwr     try making your bootp clients send additional requests before giving up.
     77  1.1  gwr 
     78  1.1  gwr 
     79  1.1  gwr November 7, 1988
     80  1.1  gwr 
     81  1.1  gwr 
     82  1.1  gwr Walter L. Wimer			Drew D. Perkins
     83  1.1  gwr ww0n (a] andrew.cmu.edu		ddp (a] andrew.cmu.edu
     84  1.1  gwr (412) 268-6252			(412) 268-8576
     85  1.1  gwr 
     86  1.1  gwr 4910 Forbes Ave
     87  1.1  gwr Pittsburgh, PA  15213
     88  1.1  gwr 
     89  1.1  gwr [ Contents description by file: ]
     90  1.1  gwr 
     91  1.1  gwr Announce*	Text of release announcements
     92  1.2  gwr Changes  	Change history, reverse chronological
     93  1.1  gwr Installation	Instructions for building and installing
     94  1.1  gwr Makefile*	for "make"
     95  1.1  gwr README		This file
     96  1.2  gwr ToDo		Things not yet done
     97  1.1  gwr bootp.h		The protocol header file
     98  1.1  gwr bootpd.8	Manual page for bootpd, boopgw
     99  1.1  gwr bootpd.c	BOOTP server main module
    100  1.1  gwr bootpd.h	 header for above (and others)
    101  1.1  gwr bootpef.8	Manual page for bootpef
    102  1.1  gwr bootpef.c	BOOTP extension file compiler
    103  1.1  gwr bootpgw.c	BOOTP gateway main module
    104  1.1  gwr bootptab.5	A manual describing the bootptab format
    105  1.1  gwr bootptab.cmu	A sample database file for the server
    106  1.1  gwr bootptab.mcs	Another sample from <gwr (a] mc.com>
    107  1.1  gwr bootptest.8	Manual page for bootptest
    108  1.1  gwr bootptest.c	BOOTP test program (fake client)
    109  1.1  gwr bootptest.h	 header for above
    110  1.1  gwr dovend.c	Vendor Option builder (for bootpd, bootpef)
    111  1.1  gwr dovend.h	 header for above
    112  1.1  gwr dumptab.c	Implements debugging dump for bootpd
    113  1.1  gwr getether.c	For bootptest (not used yet)
    114  1.1  gwr getif.c		Get network interface info.
    115  1.1  gwr getif.h		 header for above
    116  1.1  gwr hash.c		The hash table module
    117  1.1  gwr hash.h		 header for above
    118  1.1  gwr hwaddr.c	Hardware address support
    119  1.1  gwr hwaddr.h	 header for above
    120  1.1  gwr lookup.c	Internet Protocol address lookup
    121  1.1  gwr lookup.h	 header for above
    122  1.1  gwr patchlevel.h	Holds version numbers
    123  1.1  gwr print-bootp.c	Prints BOOTP packets (taken from BSD tcpdump)
    124  1.1  gwr readfile.c	The configuration file-reading routines
    125  1.1  gwr readfile.h	 header for above
    126  1.1  gwr report.c	Does syslog-style messages
    127  1.1  gwr report.h	 header for above
    128  1.1  gwr strerror.c	Library errno-to-string (for systems lacking it)
    129  1.1  gwr syslog.conf	Sample config file for syslogd(8)
    130  1.1  gwr syslog.h	For systems that lack syslog(3)
    131  1.1  gwr try*.c		Test programs (for debugging)
    132  1.1  gwr tzone.c		Get timezone offset
    133  1.1  gwr tzone.h		 header for above
    134