xref: /dflybsd-src/libexec/bootpd/Problems (revision 86d7f5d305c6adaa56ff4582ece9859d73106103)
1*86d7f5d3SJohn Marino# $FreeBSD: src/libexec/bootpd/Problems,v 1.5 1999/08/28 00:09:15 peter Exp $
2*86d7f5d3SJohn Marino# $DragonFly: src/libexec/bootpd/Problems,v 1.2 2003/06/17 04:27:07 dillon Exp $
3*86d7f5d3SJohn Marino
4*86d7f5d3SJohn MarinoCommon problems and ways to work around them:
5*86d7f5d3SJohn Marino
6*86d7f5d3SJohn MarinoBootpd complains: "bind: Address already in use" and fails to start.
7*86d7f5d3SJohn Marino	You are already running something that has bound the
8*86d7f5d3SJohn Marino	BOOTP listening port number.  Check /etc/inetd.conf or
9*86d7f5d3SJohn Marino	the equivalent for a bootp line (or in startup files).
10*86d7f5d3SJohn Marino
11*86d7f5d3SJohn MarinoBootpd complains that it "can not get IP addr for HOSTNAME"
12*86d7f5d3SJohn Marino
13*86d7f5d3SJohn Marino	If the entry is a "dummy" (not a real host) used only for
14*86d7f5d3SJohn Marino	reference by other entries, put '.' in front of the name.
15*86d7f5d3SJohn Marino
16*86d7f5d3SJohn Marino	If the entry is for a real client and the IP address for
17*86d7f5d3SJohn Marino	the client can not be found using gethostbyname(), specify
18*86d7f5d3SJohn Marino	the IP address for the client using numeric form.
19*86d7f5d3SJohn Marino
20*86d7f5d3SJohn MarinoBootpd takes a long time to finish parsing the bootptab file:
21*86d7f5d3SJohn Marino
22*86d7f5d3SJohn Marino	Excessive startup time is usually caused by waiting for
23*86d7f5d3SJohn Marino	timeouts on failed DNS lookup operations.  If this is the
24*86d7f5d3SJohn Marino	problem, find the client names for which DNS lookup fails
25*86d7f5d3SJohn Marino	and change the bootptab to specify the IP addresses for
26*86d7f5d3SJohn Marino	those clients using numeric form.
27*86d7f5d3SJohn Marino
28*86d7f5d3SJohn Marino	When bootptab entries do not specify an ip address, bootpd
29*86d7f5d3SJohn Marino	attempts to lookup the tagname as a host name to find the
30*86d7f5d3SJohn Marino	IP address.  To suppress this default action, either make
31*86d7f5d3SJohn Marino	the entry a "dummy" or specify its IP numeric address.
32*86d7f5d3SJohn Marino
33*86d7f5d3SJohn Marino	If your DNS lookups work but are just slow, consider either
34*86d7f5d3SJohn Marino	running bootpd on the same machine as the DNS server or
35*86d7f5d3SJohn Marino	running a caching DNS server on the host running bootpd.
36*86d7f5d3SJohn Marino
37*86d7f5d3SJohn MarinoMy huge bootptab file causes startup time to be so long that clients
38*86d7f5d3SJohn Marinogive up waiting for a reply.
39*86d7f5d3SJohn Marino
40*86d7f5d3SJohn Marino	Truly huge bootptab files make "inetd" mode impractical.
41*86d7f5d3SJohn Marino	Start bootpd in "standalone" mode when the server boots.
42*86d7f5d3SJohn Marino
43*86d7f5d3SJohn Marino	Another possibility is to run one bootpd on each network
44*86d7f5d3SJohn Marino	segment so each one can have a smaller bootptab.  Only one
45*86d7f5d3SJohn Marino	instance of bootpd may run on one server, so you would need
46*86d7f5d3SJohn Marino	to use a different server for each network segment.
47*86d7f5d3SJohn Marino
48*86d7f5d3SJohn MarinoMy bootp clients are given responses with a boot file name that is
49*86d7f5d3SJohn Marinonot a fully specified path.
50*86d7f5d3SJohn Marino
51*86d7f5d3SJohn Marino	Make sure the TFTP directory or home directory tags are set:
52*86d7f5d3SJohn Marino	:td=/tftpboot:	(or)
53*86d7f5d3SJohn Marino	:hd=/usr/boot:	(for example)
54*86d7f5d3SJohn Marino
55*86d7f5d3SJohn MarinoMy PC clients running Sun's PC-NFS Pro v1.1 fail to receive
56*86d7f5d3SJohn Marinoacceptable responses from the bootp server.
57*86d7f5d3SJohn Marino
58*86d7f5d3SJohn Marino	These clients send a request with the DHCP "message length"
59*86d7f5d3SJohn Marino	option and the (new) BOOTP "broadcast flag" both set.
60*86d7f5d3SJohn Marino	The bootp server (on SunOS) will send a fragmented reply
61*86d7f5d3SJohn Marino	unless you override the length with :ms=1024: (or less).
62*86d7f5d3SJohn Marino	The "broadcast flag" is not yet supported, but there is
63*86d7f5d3SJohn Marino	a simple work-around, just add :ra=255.255.255.255:
64*86d7f5d3SJohn Marino	for any clients that need their reply broadcasted.
65*86d7f5d3SJohn Marino	You may need to use a differnet broadcast address.
66*86d7f5d3SJohn Marino	(Thanks to Ivan Auger <ivan.auger@wadsworth.org>)
67*86d7f5d3SJohn Marino
68