To support BOOTP clients on your DHCP server, you must set up your DHCP server to be BOOTP compatible. You can register BOOTP clients in the DHCP server's database or reserve a number of IP addresses for allocation to BOOTP clients, depending how you set up BOOTP compatibility.
You can set up support for BOOTP clients in one of the following ways:
Automatic BOOTP support - Any BOOTP client on a DHCP-managed network, or on a network connected by a BOOTP relay agent to a DHCP-managed network can obtain an IP address from the server. This requires you to reserve a pool of addresses for exclusive use by BOOTP clients. This option may be more useful if the server must support a large number of BOOTP clients.
Manual BOOTP support - Only those BOOTP clients that have been manually registered with the DHCP service will receive a response from the server. This requires you to bind a client's ID to a particular IP address that has been marked for BOOTP clients. This option is useful for a small number of BOOTP clients, or in the event that you want to restrict the BOOTP clients that can use the server.
BOOTP addresses are permanently assigned, whether or not you explicitly assign them a permanent lease.
The following task map lists tasks you need to perform to support BOOTP clients and the procedures used to carry them out.
Table 11-4 BOOTP Support Task Map
Tasks.... |
Description |
For Instructions, Go To |
---|---|---|
Set up automatic BOOTP support |
Provide IP address for any BOOTP client on a DHCP-managed network, or on a network connected by a relay agent to a DHCP-managed network. | |
Set up manual BOOTP support |
Provide IP address for only those BOOTP clients that have been manually registered with the DHCP service. |
"How to Set Up Support of Registered BOOTP Clients (DHCP Manager)" "How to Set Up Support for Registered BOOTP Clients (Command Line)" |
Select Modify from the Service menu.
The Modify Service Options dialog box opens.
In the BOOTP Compatibility section of the dialog box, select Automatic.
Select Restart Server, if it is not already selected.
Click OK.
Select the Addresses tab in DHCP Manager.
Select addresses that you want to reserve for BOOTP clients.
Select a range of addresses by clicking the first address, pressing the Shift key, and clicking the last address.
Select multiple non-concurrent addresses by pressing the Control key while clicking each address.
Select Properties from the Edit menu.
The Modify Multiple Addresses dialog box opens.
In the BOOTP section, select Assign All Address Only to BOOTP Clients.
All other options should be set to Keep Current Settings.
Click OK.
Any BOOTP client can now obtain an address from this DHCP server.
Select Modify from the Service menu.
The Modify Service Options dialog box opens.
In the BOOTP Compatibility section of the dialog box, select Manual.
Select Restart Server if it is not already selected.
Click OK.
Select the Addresses tab in DHCP Manager.
Select an address you want to assign to a particular BOOTP client.
Choose Properties from the Edit menu.
The Address Properties dialog box opens.
Select the Lease tab.
In the Client ID field, type the client's identifier.
For a BOOTP client running the Solaris operating environment on an Ethernet network, the client ID is a string derived from the client's hexadecimal Ethernet address, preceded by the ARP type for Ethernet (01). For example, a BOOTP client having the Ethernet address 8:0:20:94:12:1e would use the Client ID 0108002094121E. See Table 13-4 for the ARP types.
As superuser on the client machine, type the following to obtain the Ethernet address for the interface: ifconfig -a
Select Reserved to reserve the IP address for this client.
Select Assign Only to BOOTP Clients.
Click OK.
In the Addresses tab, BOOTP is displayed in the Status field, and the client ID you entered is listed in the Client ID field.
Log in to the system as root or become superuser, and type the following:
# /usr/sbin/dhcpconfig |
The text-based DHCP Configuration menu is displayed.
Type 1 and press Return to select Configure DHCP Service.
Answer the following prompts as shown to skip to the BOOTP compatibility options.
If no user input is indicated, press Return to accept the default.
Would you like to stop the DHCP service? (recommended) ([Y]/N) Enter datastore (files or nisplus) [files]: Enter absolute path to datastore directory [/var/dhcp]: Would you like to specify nondefault daemon options (Y/[N]): Would you like to specify nondefault server options (Y/[N]):Y How long (in seconds) should the DHCP server keep outstanding OFFERs? [10]: How often (in minutes) should the DHCP server rescan the dhcptab? [Never]: |
Answer the prompts as follows to enable BOOTP compatibility:
Do you want to enable BOOTP compatibility mode? (Y/[N]):Y Do you want the server to allocate IP addresses to new BOOTP clients? ([Y]/N) |
Answer the following prompts as shown to advance to prompts for creating addresses:
### Initialize dhcptab table ### The dhcptab table already exists. Do you want to merge initialization data with the existing table? (Y/[N]): ### Select Networks For BOOTP/DHCP Support ### Enable DHCP/BOOTP support of networks you select? ([Y]/N): |
If you want to create BOOTP addresses on the local network, continue with the next step.
If you want to create BOOTP addresses on a remote network, skip to Step 7.
Answer the following prompts as shown to create the BOOTP addresses on the local network:
Note this is an example of adding four addresses for network 172.21.0.0. You should substitute appropriate responses for your network.
### Configure Local Networks ### Configure BOOTP/DHCP on local LAN network: 172.21.0.0? ([Y]/N): Do you want hostnames generated and inserted in the nisplus hosts table? (Y/[N]): Enter starting IP address [172.21.0.0]: 172.21.0.15 Enter the number of clients you want to add (x < 65535): 4 BOOTP compatibility with automatic allocation is enabled. Do you want any of your 4 addresses to be BOOTP specific? ([Y]/N): How many (x <= 4): 4 The dhcp network table: 172.21.0.0 already exists. Do you want to add entries to it? ([Y]/N): dhcptab macro "172.21.0.0" already exists. Do you want to merge initialization data with the existing macro? ([Y]/N):N Disable (ping) verification of 172.21.0.0 address(es)? (Y/[N]): / 75% Complete. Configured 4 entries for network 172.21.0.0. |
If you want to create BOOTP addresses on a remote network, answer the prompts as follows:
Note this is an example of adding four addresses for network 172.23.0.0, where clients access the network via LAN connection. You should substitute appropriate responses for your network.
### Configure Remote Networks ### Would you like to configure BOOTP/DHCP service on remote networks? ([Y]/N): Enter Network Address of remote network, or <RETURN> if finished: 172.23.0.0 Do clients access this remote network via LAN or PPP connection? ([L]/P): Do you want hostnames generated and inserted in the nisplus hosts table? (Y/[N]): Enter Router (From client's perspective), or <RETURN> if finished. IP address: Optional: Enter Remote Network's MTU (e.g. ethernet == 1500): Enter starting IP address [172.23.0.0]: 172.23.0.10 Enter the number of clients you want to add (x < 65535): 4 BOOTP compatibility with automatic allocation is enabled. Do you want any of your 4 addresses to be BOOTP specific? ([Y]/N): How many (x <= 4): 4 The dhcp network table: 172.23.0.0 already exists. Do you want to add entries to it? ([Y]/N): dhcptab macro "172.23.0.0" already exists. Do you want to merge initialization data with the existing macro? ([Y]/N):N Disable (ping) verification of 172.23.0.0 address(es)? (Y/[N]): / 75% Complete. Configured 4 entries for network 172.23.0.0. Enter Network Address of remote network, or <RETURN> if finished: |
Type 4 and press Return to exit dhcpconfig.
Log in to the system as root or become superuser, and type the following:
# /usr/sbin/dhcpconfig |
The text-based DHCP Configuration menu is displayed.
Type 1 and press Return to select Configure DHCP Service.
Answer the following prompts as shown to skip to the BOOTP compatibility options.
If no user input is indicated, press Return to accept the default.
Would you like to stop the DHCP service? (recommended) ([Y]/N)Y Enter datastore (files or nisplus) [files]: Enter absolute path to datastore directory [/var/dhcp]: Would you like to specify nondefault daemon options (Y/[N]): Would you like to specify nondefault server options (Y/[N]):Y How long (in seconds) should the DHCP server keep outstanding OFFERs? [10]: How often (in minutes) should the DHCP server rescan the dhcptab? [Never]: |
Answer the BOOTP prompts as follows:
Do you want to enable BOOTP compatibility mode? (Y/[N]):Y Do you want the server to allocate IP addresses to new BOOTP clients? ([Y]/N):N |
Type N to prevent unregistered BOOTP clients from obtaining IP addresses. This is analogous to DHCP Manager's "manual" option.
The dhcptab table already exists. Do you want to merge initialization data with the existing table? (Y/[N]):N Enable DHCP/BOOTP support of networks you select? ([Y]/N):N |
Typing N here avoids prompts for adding networks to the DHCP service.
Would you like to restart the DHCP service? (recommended) ([Y]/N):Y |
Type 4 and press Return to exit dhcpconfig.
Modify or add addresses and reserve them for use by specific BOOTP clients by typing a command using one of the following formats:
To modify an existing address for BOOTP:
# pntadm -M ip-address -i client-id -f BOOTP -e -1 -m macro-name network-ip-address |
For example, to modify the address 172.21.20.33, assign it to a client whose Ethernet hardware address is 8:0:20:89:a1:d2 and set the BOOTP flag, type the following:
# pntadm -M 172.21.20.33 -i 0108002089A1D2 -f BOOTP |
To add a new BOOTP address:
# pntadm -A ip-address -i client-id -f BOOTP -m macro-name network-ip-address |
For example, to add the address 172.21.20.34, assign it to a client whose Ethernet hardware address is 8:0:20:89:a1:d2, set the BOOTP flag, and to have the client receive the contents of the blue2 macro, type the following:
pntadm -A 172.21.20.34 -i 0108002089A1D2 -f BOOTP -m blue2 172.21.0.0 |
You should reserve one BOOTP address for each BOOTP client on the network.