BOOTP operates from a database file describing the devices it should respond to. The database file is a text file. The Edit Database command in BOOTP uses Notepad to edit this file. The file is split into two sections: boot files and client network data. Anything in the database file following a pound (#) sign is ignored as a comment.
The end of the boot file alias area is delimited by a percent sign (%) in the first column. Anything following the % sign on the same line is ignored.
This information is sent to the BOOTP requesting device for it to decode. Each vendor-specific information file consists of lines in the form:
Label=Value
Any line beginning with a pound sign (#) is ignored as a comment.
The vend field of the BOOTP packet is only 64 bytes long. BOOTP will attempt to pack it as full as it can, but you should make sure that all your information fits.
The following describes the available entries.
SubnetMask
one IP-style address to use as a subnet mask
Router
takes a list of space-delimited router IP addresses
Pad
this takes no value, but places a pad (zero) byte in the vend field
End
this places the end (255) byte in the vend field, done automatically if you don't do it.
TimeOffset
this takes no value, but stamps the system time (4 bytes) in the vend field
TimeServer
takes a list of space-delimited time server IP addresses
NameServer
takes a list of space-delimited name server IP addresses
DomainNameServer
takes a space-delimited list of DNS IP addresses
LogServer
takes a space-delimited list of log server IP addresses
CookieServer
takes a space-delimited list of cookie server IP addresses
LprServer
takes a space-delimited list of line printer server IP addresses
ImpressServer
takes a space-delimited list of impress server IP addresses
ResourceLocationServer
takes a space-delimited list of RLS IP addresses
HostName
a single string describing the clients hostname
BootFileSize
an integer describing the number of blocks in the boot file
MeritDumpFile
complete pathname of the merit dump file
DomainName
domain name for the client
SwapServer
the IP address of the swap server
RootPath
string describing the root path
ExtensionsPath
absolute pathname of addition vendor information
IPForwarding
Yes or No
NonLocalSourceRouting
Yes or No
PolicyFilter
a list of address and subnet mask pairs
MaxDatagramReassemblySize
maximum fragmented datagram size, a short integer
IPTimeToLive
sets IP TTL in client, this unsigned value must fit in a byte
sets path MTU aging timeout, a long integer
PathMTUPlateauTable
a list of unsigned shorts
InterfaceMTU
sets the interface MTU, one unsigned short
AllSubnetsAreLocal
Yes or No
BroadcastAddress
one IP address to use as the broadcast address
PerformMaskDiscovery
Yes or No
MaskSupplier
Yes or No
PerformRouterDiscovery
Yes or No
RouterSolicitationAddress
one IP address for router solicitation
StaticRoute
list of IP destination or router pairs for routing
TrailerEncapsulation
Yes or No
ARPCacheTimeout
sets the ARP cache timeout, one unsigned long integer
EthernetEncapsulation
Yes or No
TCPDefaultTTL
sets the TCP time-to-live, this integer must fit in a byte
TCPKeepaliveInterval
sets the TCP keep-alive interval, one unsigned long integer
TCPKeepaliveGarbage
Yes or No
NISDomain
1 string describing the NIS domain
NetworkInfoServer
a list of IP addresses of network information servers
NTPServer
a list of IP addresses of NTP servers
VendorInformation
a list of hex digits and double-quote delimited strings for custom information
NBNameServer
a list of IP addresses of NetBIOS name servers
NBDDServer
a list of IP addresses of NetBIOS DD servers
NBNodeType
sets NetBIOS node type to 1, 2, 4, or 8, or B, P, M, or H
NBScope
sets the NetBIOS scope
XFontServer
a list of IP addresses of X-windows font servers
XDisplayManager
a list of IP addresses of X display managers
Sample BOOTP database file
This is a sample database configuration file for BOOTP, based on the Intel Express 100BASE-TX Stackable Hub NMM (Network Management Module). Lines beginning with # are comments and are ignored by BOOTP.
The first file specified is the default device configuration file, or boot file. It is used when a host in the database section has no alias specified. To set up the contents of a boot file, see the documentation for the network device (for example, in the Intel Express NMM manual). Boot files can be a file name only if your TFTP server specifies as its root the directory the boot file is in. Or they can be a full path (with no drive letter), and the TFTP server can specify the drive root (for example, c:\ldnm).
\uploads\i100hub.cfg
The next files are other boot files. Rather than type the whole path in the database section, give the file an alias here and enter only the alias # in the database section.
| Alias |
Boot file |
| hub2 |
\ldnm\i100hub2.cfg |
| hub3 |
\ldnm\i100hub3.cfg |
% A percent sign marks the start of the database section of the file.
| # hostname |
htype |
hardwareaddr |
ipaddr |
vend |
alias suffix |
| Hub1 |
1 |
00.00.81.2F.C2.68 |
130.130.8.125 |
NONE |
|
| Backhub |
1 |
00.00.81.2F.47.31 |
130.130.1.250 |
NONE |
hub2 |
| Fronthub |
1 |
00.00.81.39.A0.57 |
130.130.9.14 |
NONE |
hub3 |
| Router1 |
1 |
00.A2.05.97.30.25 |
130.130.1.254 |
\bootp \vend |
| |
In this list, Hub1 would use the default boot file (i100hub.cfg). Backhub and Fronthub would use i100hub2.cfg and i100hub3.cfg. Router1 would use i100hub.cfg. The router would not actually use a hub boot file. However, you can configure a device to get from the network an IP address from the network but not a boot file or firmware image file. If you need only an IP address, the boot file is ignored -- but you must still specify a file that exists in that location.