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