1 .\" Copyright (c) 1988, 1989, 1991 Carnegie Mellon University
10 .Nd Internet Boot Protocol server/gateway
14 .Op Fl c Ar chdir-path
32 implements an Internet Bootstrap Protocol (BOOTP) server as defined in
33 RFC951, RFC1532, and RFC1533.
36 utility implements a simple BOOTP gateway which can be used to forward
37 requests and responses between clients on one subnet and a
45 will forward BOOTREPLY packets, only
47 will forward BOOTREQUEST packets.
49 One host on each network segment is normally configured to run either
55 by including one of the following lines in the file
58 .Dl bootps dgram udp wait root /usr/libexec/bootpd bootpd /etc/bootptab
59 .Dl bootps dgram udp wait root /usr/libexec/bootpgw bootpgw server
61 This mode of operation is referred to as "inetd mode" and causes
65 to be started only when a boot request arrives.
67 receive another packet within fifteen minutes of the last one
68 it received, it will exit to conserve system resources.
71 option controls this timeout (see OPTIONS).
73 It is also possible to run
77 in "standalone mode" (without
79 by simply invoking it from a shell like any other regular command.
80 Standalone mode is particularly useful when
82 is used with a large configuration database, where the start up
83 delay might otherwise prevent timely response to client requests.
84 (Automatic start up in standalone mode can be done by invoking
89 Standalone mode is less useful for
92 has very little start up delay because
93 it does not read a configuration file.
95 Either program automatically detects whether it was invoked from inetd
96 or from a shell and automatically selects the appropriate mode.
101 option may be used to force standalone or inetd mode respectively
104 The following options are available:
105 .Bl -tag -width indent
107 Skip ARP table modifications.
111 value (in minutes) that a
115 process will wait for a BOOTP packet before exiting.
116 If no packets are received for
118 minutes, then the program will exit.
119 A timeout value of zero means "run forever".
120 In standalone mode, this option is forced to zero.
121 .It Fl d Ar debug-level
124 variable that controls the amount of debugging messages generated.
129 4 will set the debugging level to 4.
130 For compatibility with older versions of
132 omitting the numeric parameter (i.e., just
134 will simply increment the debug level by one.
135 .It Fl c Ar chdir-path
136 Set the current directory used by
138 while checking the existence and size of client boot files.
140 useful when client boot files are specified as relative pathnames, and
142 needs to use the same current directory as the TFTP server
145 This option is not recognized by
148 Specify the hostname corresponding to the IP address to listen on.
151 listens on the IP address corresponding to the machine's hostname, as
156 This option is obsolete, but remains for
157 compatibility with older versions of
160 Force standalone mode.
161 This option is obsolete, but remains for
162 compatibility with older versions of
165 Specify the name of the configuration file from which
167 loads its database of known clients and client options
171 Specify the name of the file that
173 will dump its internal database into when it receives a
177 This option is only recognized if
179 was compiled with the -DDEBUG flag.
181 Specify the name of a BOOTP server to which
183 will forward all BOOTREQUEST packets it receives
192 operate similarly in that both listen for any packets sent to the
194 port, and both simply forward any BOOTREPLY packets.
195 They differ in their handling of BOOTREQUEST packets.
199 is started, it determines the address of a BOOTP server
200 whose name is provided as a command line parameter.
203 receives a BOOTREQUEST packet, it sets the "gateway address"
204 and "hop count" fields in the packet and forwards the packet
205 to the BOOTP server at the address determined earlier.
206 Requests are forwarded only if they indicate that
207 the client has been waiting for at least three seconds.
211 is started it reads a configuration file, (normally
213 that initializes the internal database of known clients and client
215 This internal database is reloaded
216 from the configuration file when
218 receives a hangup signal (SIGHUP) or when it discovers that the
219 configuration file has changed.
223 receives a BOOTREQUEST packet, it
224 .\" checks the modification time of the
225 .\" configuration file and reloads the database if necessary. Then it
226 looks for a database entry matching the client request.
227 If the client is known,
229 composes a BOOTREPLY packet using the database entry found above,
230 and sends the reply to the client (possibly using a gateway).
231 If the client is unknown, the request is discarded
232 (with a notice if debug > 0).
236 is compiled with the -DDEBUG option, receipt of a SIGUSR1 signal causes
237 it to dump its internal database to the file
239 or the dumpfile specified as a command line parameter.
241 During initialization, both programs
242 determine the UDP port numbers to be used by calling
245 .Pa /etc/services ) .
246 Two service names (and port numbers) are used:
248 .Dl bootps BOOTP Server listening port
249 .Dl bootpc BOOTP Client destination port
251 If the port numbers cannot be determined using
253 then the values default to bootps=67 and bootpc=68.
255 .Bl -tag -width /tmp/bootpd.dump -compact
257 Database file read by
259 .It Pa /tmp/bootpd.dump
260 Debugging dump file created by
263 Internet service numbers.
265 Current directory typically used by the TFTP server and
273 DARPA Internet Request For Comments:
274 .Bl -tag -width RFC1533 -compact
278 Clarifications and Extensions for the Bootstrap Protocol
280 DHCP Options and BOOTP Vendor Extensions
283 This distribution is currently maintained by
284 .An Walter L. Wimer Aq Mt walt+@cmu.edu .
286 The original BOOTP server was created by
288 at Stanford University in January 1986.
290 The current version of
292 is primarily the work of
294 .An Drew D. Perkins ,
296 .An Walter L. Wimer ,
297 at Carnegie Mellon University.
299 Enhancements and bug-fixes have been contributed by:
301 (in alphabetical order)
304 .An Danny Backx Aq Mt db@sunbim.be
305 .An John Brezak Aq Mt brezak@ch.hp.com
306 .An Frank da Cruz Aq Mt fdc@cc.columbia.edu
307 .An David R. Linn Aq Mt drl@vuse.vanderbilt.edu
308 .An Jim McKim Aq Mt mckim@lerc.nasa.gov
309 .An Gordon W. Ross Aq Mt gwr@mc.com
310 .An Jason Zions Aq Mt jazz@hal.com .
312 Individual host entries must not exceed 1024 characters.