Rzakg
Rzakg
IBM i
Networking
Dynamic Host Configuration Protocol
7.1
IBM
IBM i
Networking
Dynamic Host Configuration Protocol
7.1
Note
Before using this information and the product it supports, read the information in “Notices,” on
page 59.
This edition applies to IBM i 7.1 (product number 5770-SS1) and to all subsequent releases and modifications until
otherwise indicated in new editions. This version does not run on all reduced instruction set computer (RISC)
models nor does it run on CISC models.
This edition replaces SCnn-nnnn-nn.
© Copyright IBM Corporation 1998, 2010.
US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract
with IBM Corp.
Contents
Dynamic Host Configuration Protocol . . 1 | Using ISC's DHCP 4 . . . . . . . . . 47
What's new for IBM i 7.1 . . . . . . . . . . 1 | Considerations for using the ISC DHCP server 48
PDF file for DHCP . . . . . . . . . . . . 1 | DHCP failover . . . . . . . . . . . 48
DHCP concepts . . . . . . . . . . . . . 2 Configuring clients to use DHCP . . . . . . 49
DHCP client/server interaction . . . . . . . 2 Enabling DHCP for Windows Me clients . . 49
Leases . . . . . . . . . . . . . . . 4 Checking the DHCP lease for Windows Me
Relay agents and routers . . . . . . . . . 6 clients . . . . . . . . . . . . . 49
DHCP client support . . . . . . . . . . 7 Enabling DHCP for Windows 2000 clients . . 49
BOOTP . . . . . . . . . . . . . . . 8 Checking the MAC address and DHCP
Dynamic updates . . . . . . . . . . . . 8 lease. . . . . . . . . . . . . . 50
DHCP options lookup . . . . . . . . . . 9 Updating DNS A records . . . . . . . 50
Examples: DHCP . . . . . . . . . . . . 24 Enabling DHCP for Windows XP clients . . . 50
Example: Simple DHCP subnet . . . . . . . 25 Checking the MAC address and DHCP
Example: Multiple TCP/IP subnets . . . . . 26 lease. . . . . . . . . . . . . . 50
Example: DHCP and multihoming. . . . . . 29 Updating DNS A records . . . . . . . 51
Example: DNS and DHCP on the same System i 33 Configuring DHCP to send dynamic updates to
Example: DNS and DHCP on different System i DNS . . . . . . . . . . . . . . . . 51
models . . . . . . . . . . . . . . . 35 Disabling DNS dynamic updates . . . . . 52
Example: PPP and DHCP on a single System i. . 37 Managing leased IP addresses . . . . . . . . 52
Example: DHCP and PPP profile on different Troubleshooting DHCP . . . . . . . . . . 53
System i models . . . . . . . . . . . . 39 Gathering detailed DHCP error information . . 53
Planning for DHCP. . . . . . . . . . . . 42 Tracing the DHCP server . . . . . . . . 53
Security considerations . . . . . . . . . 42 Problem: Clients are not receiving an IP address
Network topology considerations . . . . . . 42 or their configuration information . . . . . . 54
Configuring DHCP . . . . . . . . . . . . 45 Problem: Duplicate IP address assignments on
Configuring the DHCP server and the same network . . . . . . . . . . . 54
BOOTP/DHCP relay agent . . . . . . . . 45 Problem: DNS records are not being updated by
Configuring or viewing the DHCP server . . 45 DHCP . . . . . . . . . . . . . . . 55
Starting or stopping the DHCP server . . . 46 Problem: DHCP job log has DNS030B messages
Configuring the DHCP server to be started with error code 3447 . . . . . . . . . . 56
automatically . . . . . . . . . . . . 46 Related information for DHCP . . . . . . . . 56
Accessing the DHCP server monitor . . . . 46
Configuring the BOOTP/DHCP relay agent 46 Appendix. Notices . . . . . . . . . . 59
Starting or stopping the BOOTP/DHCP relay Programming interface information . . . . . . 61
agent . . . . . . . . . . . . . . 47 Trademarks . . . . . . . . . . . . . . 61
Configuring the BOOTP/DHCP relay agent to Terms and conditions . . . . . . . . . . . 61
be started automatically . . . . . . . . 47
| Configuring the DHCP server to use ISC's DHCP
| 4 . . . . . . . . . . . . . . . . . 47
A DHCP server responds to requests from clients, dynamically assigning properties to them.
ISC DHCP 4
The industry standard implementation of DHCP version 4 by the Internet Systems Consortium (ISC), Inc.
is now available to be used on the IBM® i.
v ISC's DHCP 4 provides functions and abilities that are currently not available with the DHCP server
implementation of IBM i.
v Information on how to use ISC's DHCP 4.
v Migration considerations for using the ISC DHCP server.
v The ISC DHCP 4 server supports DHCP failover between two DHCP server peers.
To help you see where technical changes have been made, the information center uses:
v The image to mark where new or changed information begins.
v The image to mark where new or changed information ends.
In PDF files, you might see revision bars (|) in the left margin of new and changed information.
To find other information about what's new or changed this release, see the Memo to users.
To view or download the PDF version of this document, select DHCP (about 625 KB).
You need Adobe Reader installed on your system to view or print these PDFs. You can download a free
copy from the Adobe Web site (www.adobe.com/products/acrobat/readstep.html) .
© Copyright IBM Corp. 1998, 2010 1
Related reference:
“Related information for DHCP” on page 56
IBM Redbooks® and Web sites contain information that relates to the DHCP topic collection. You can
view or print any of the PDF files.
DHCP concepts
Dynamic Host Configuration Protocol (DHCP) provides an automated method for dynamic client
configuration. Here are some DHCP-related concepts to help you better understand DHCP.
This process occurs through a series of steps, illustrated in the following figure.
Leases
When DHCP sends configuration information to a client, the information is sent with a lease time. This is
the length of time that the client can use the IP address it has been assigned. The duration of the lease
time can be changed according to your specific requirement.
During the lease time, the DHCP server cannot assign that IP address to any other clients. The purpose of
a lease is to limit the length of time that a client can use an IP address. A lease prevents unused clients
Lease renewal
The client starts to renew a lease when half of the lease time has passed. For example, for a 24-hour lease,
the client will attempt to renew the lease after 12 hours. The client requests the renewal by sending a
DHCPREQUEST message to the server. The renewal request contains the current IP address and
configuration information of the client.
If the server accepts the request, it will send an DHCPACK message back to the client. If the server does
not respond to the request, the client can continue to use the IP address and configuration information
until the lease expires. If the lease is still active, the client and server do not need to go through the
DHCPDISCOVER and DHCPREQUEST process. When the lease has expired, the client must start over
with the DHCPDISCOVER process.
If the server is unreachable, the client can continue to use the assigned address until the lease expires. In
the previous example, the client has 12 hours from when it first tries to renew the lease until the lease
expires. During a 12-hour outage, new users cannot get new leases, but no leases will expire for any
computer turned on at the time that the outage starts.
The default lease time for the DHCP server is 24 hours. When setting the lease time on your DHCP
server, consider your goals, usage patterns of your site, and service arrangements for your DHCP server.
Use the following questions to help you decide on an appropriate lease time.
Do you have more users than addresses?
If so, the lease time must be short so that clients do not need to wait for unused leases to expire.
Do you have a minimum amount of time that you need to support?
If your typical user is on for an hour at minimum, that suggests an hour lease at minimum.
How much DHCP message traffic can your network handle?
If you have a large number of clients or slow communication lines over which the DHCP packets
will run, network traffic might cause problems. The shorter the lease, the heavier traffic the server
and network load from the renewal request on your network.
What kind of service plan do you have in place, and to what extent can your network handle an
outage?
Consider any routine maintenance, and the potential impact of an outage. If the lease time is at
least twice the server outage time, then running clients who already have leases will not lose
them. If you have a good idea of your longest likely server outage, you can avoid such problems.
What type of network environment is the DHCP server in? What does a typical client do?
Consider what the clients do on the network that the DHCP server is servicing. For example, if
you have an environment where the clients are primarily mobile, connecting to the network at
varying times, and checking their e-mail typically only once or twice a day, you might want a
relatively short lease time. In this case, it might not be necessary to have a single IP address set
aside for every client. By limiting the lease time, you can use fewer IP addresses to support the
mobile clients.
Alternatively, if you have an office environment where most of the employees have primary
workstations in a fixed location, a lease time of 24 hours might be more appropriate. It might also
be necessary in this environment to have an IP address available for each client that connects to
Initially, DHCP clients broadcast their DHCPDISCOVER packets because they do not know what network
they are connected to. In some networks, the DHCP server might not be on the same LAN as the client.
Therefore, it is necessary to forward the client's broadcast DHCP packets to the LAN where the DHCP
server is located. Some routers are configured to forward DHCP packages. If your router supports DHCP
packet forwarding, your router forwards the DHCP packets to the LAN where the DHCP server is
located. However, many routers do not support forwarding packets that have a destination IP address of
the broadcast address (DHCP packets). In this case, the LAN must have a Bootstrap protocol
(BOOTP)/DHCP relay agent to forward the DHCP packets to the LAN that has the DHCP server. See
“Example: DHCP and PPP profile on different System i models” on page 39 for a sample network using a
relay agent and a router.
In either case, because the DHCP server is on a separate network, your clients must have the IP address
of the router that connects your clients’ network to the network that has the DHCP server specified in the
router option (option 3).
This DHCP setup method allows only the clients identified by the DHCP server to receive IP address and
configuration information.
People often think about using DHCP to distribute IP addresses from an address pool to a subnet of
clients. When you use subnets, any client that requests DHCP information from the network might
receive an IP address from the address pool, unless they are explicitly excluded by the DHCP
administrator. However, the DHCP server can also limit DHCP service to only specific clients.
The DHCP server can limit service at the individual client level or by the type of client (Bootstrap
protocol (BOOTP) or DHCP).
To limit service at the individual client level, you must identify each network client individually in your
DHCP configuration. Each client is identified by its client ID (typically their MAC address). Only the
clients that are identified in the DHCP configuration will be served an IP address and configuration
information from the DHCP server. If a client is not listed in the DHCP configuration, it is refused service
by the DHCP server. This method prevents unknown hosts from obtaining an IP address and
configuration information from the DHCP server.
If you want even more control over your network clients and the configuration information that they
receive, you can set up your DHCP clients to receive a static IP address rather than receiving an IP
address from an address pool. If you set up the client to receive a defined IP address, that client must be
the only client that can receive that IP address to avoid address overlap. If you use dynamic IP address
allocation, the DHCP server will manage IP address assignment for the clients.
On a broader level, the DHCP server can limit service to a client based on the type of client (BOOTP or
DHCP). The DHCP server can refuse service to BOOTP clients.
Related concepts:
“BOOTP” on page 8
The Bootstrap Protocol (BOOTP) is a host configuration protocol that was used before the Dynamic Host
Configuration Protocol (DHCP) was developed. BOOTP support is a subset of DHCP.
BOOTP
The Bootstrap Protocol (BOOTP) is a host configuration protocol that was used before the Dynamic Host
Configuration Protocol (DHCP) was developed. BOOTP support is a subset of DHCP.
In BOOTP, clients are identified by their MAC addresses and are assigned a specific IP address.
Essentially, each client in your network is mapped to an IP address. BOOTP does not have dynamic
address assignment: each network client must be identified in the BOOTP configuration, and the clients
can only receive a limited amount of configuration information from the BOOTP server.
Because DHCP is based on BOOTP, the DHCP server can support BOOTP clients. If you are currently
using BOOTP, you can set up and use DHCP without affecting your BOOTP clients. To support BOOTP
clients successfully, you must specify the IP address of the bootstrap server and the boot file name option
(option 67), and turn on the BOOTP support for the entire system or for various subnets.
Using DHCP to support BOOTP clients is preferred over using a BOOTP server. Even when you use
DHCP to support your BOOTP clients, each BOOTP client is essentially being mapped to a single IP
address, and that address is therefore not reusable by another client. The advantage, however, of using
DHCP in this case is that there is no need to configure a one-to-one mapping of BOOTP clients to IP
addresses. The DHCP server will still dynamically assign an IP addresses to the BOOTP client from the
address pool. After the IP address is assigned to the BOOTP client, it is permanently reserved for use by
that client until you explicitly delete the address reservation. Eventually, you might want to consider
converting your BOOTP clients to DHCP for easier host configuration management.
Related concepts:
“DHCP client support” on page 7
You can use a DHCP server to manage each client in your network individually, rather than managing all
of the clients as a large group (subnet).
BOOTP
“Network topology considerations” on page 42
When planning for your Dynamic Host Configuration Protocol (DHCP) setup, you must consider several
factors, such as your network topology, the devices on the network (for example, routers), and how you
want to support your clients in DHCP.
Dynamic updates
You can configure a Dynamic Host Configuration Protocol (DHCP) server to work with a Domain Name
System (DNS) server to dynamically update the client information in the DNS when DHCP assigns the
client an IP address.
DNS is a distributed database system for managing host names and their associated IP addresses. With
DNS, users can locate hosts using simple names, such as www.example.com, rather than using the IP
address (xxx.xxx.xxx.xxx).
In the past, all DNS data was stored in static databases. All DNS resource records had to be created and
maintained by the administrator. Now, DNS servers running BIND 8 can be configured to accept requests
from other sources to update zone data dynamically.
You can configure your DHCP server to send update requests to the DNS server each time it assigns a
new address to a host. This automated process reduces DNS server administration in rapidly growing or
changing TCP/IP networks, and in networks where hosts change locations frequently. When a client
You can configure DHCP to update address mapping (A) records, reverse-lookup pointer (PTR) records,
or both on behalf of a client. The A record maps the client's DNS name to its IP address. The PTR record
maps a host's IP address to its host name. When a client's address changes, DHCP can automatically send
an update to the DNS server so that other hosts in the network can locate the client through DNS queries
at its new IP address. For each record that is updated dynamically, an associated text (TXT) record is
written to identify that the record was written by DHCP.
Note: If you set DHCP to update only PTR records, you must configure DNS to allow updates from
clients so that each client can update its A record.
Dynamic zones are secured by creating a list of authorized sources that are allowed to send updates.
DNS verifies that incoming request packets are coming from an authorized source before updating the
resource records.
Dynamic updates can be performed between DNS and DHCP on a single System i® model, different
System i models, or other systems that are capable of dynamic updates.
Related concepts:
Domain Name System
“Network topology considerations” on page 42
When planning for your Dynamic Host Configuration Protocol (DHCP) setup, you must consider several
factors, such as your network topology, the devices on the network (for example, routers), and how you
want to support your clients in DHCP.
“Problem: DNS records are not being updated by DHCP” on page 55
The System i DHCP server is capable of dynamically updating DNS resource records. The DHCP server
uses name resolution functions and programming interfaces to determine the appropriate dynamic DNS
server to update. You can use this information when troubleshooting dynamic update errors.
Related tasks:
“Configuring DHCP to send dynamic updates to DNS” on page 51
The Dynamic Host Configuration Protocol (DHCP) server can be configured to send update requests to
the DNS server each time it assigns a new address to a host. This automated process reduces DNS server
administration in rapidly growing or changing TCP/IP networks, and in networks where hosts change
locations frequently.
Configuring DNS to receive dynamic updates
Related reference:
Domain Name System resource records
DHCP options define additional configuration data that the DHCP server passes along to clients in
addition to an IP address. Typical options include subnet mask, domain name, router IP addresses,
domain name server IP addresses, and static routes.
Standard DHCP options, based on definitions in RFC 2132: DHCP Options and BOOTP Vendor
Extensions, are described in the following table. You might also configure customized options using the
DHCP Options display in System i Navigator.
The code for the subnet mask option is 1, and its length is 4 octets.
2 Time offset The time offset field specifies the offset of the client's subnet in seconds from
Coordinated Universal Time (UTC). The offset is expressed as a two's
complement 32-bit integer. A positive offset indicates a location east of the zero
meridian and a negative offset indicates a location west of the zero meridian.
The code for the time offset option is 2, and its length is 4 octets.
3 Router The router option specifies a list of IP addresses for routers on the client's
subnet. Routers should be listed in order of preference.
The code for the router option is 3. The minimum length for the router option is
4 octets, and the length must always be a multiple of 4.
4 Time server The time server option specifies a list of RFC 868 time servers available to the
client. Servers should be listed in order of preference.
The code for the time server option is 4. The minimum length for this option is 4
octets, and the length must always be a multiple of 4.
5 Name server The name server option specifies a list of IEN 116 name servers available to the
client. Servers should be listed in order of preference.
The code for the name server option is 5. The minimum length for this option is
4 octets, and the length must always be a multiple of 4.
The code for the domain name server option is 6. The minimum length for this
option is 4 octets, and the length must always be a multiple of 4.
7 Log server The log server option specifies a list of MIT-LCS UDP log servers available to
the client. Servers should be listed in order of preference.
The code for the log server option is 7. The minimum length for this option is 4
octets, and the length must always be a multiple of 4.
8 Cookie server The cookie server option specifies a list of RFC 865 cookie servers available to
the client. Servers should be listed in order of preference.
The code for the cookie server option is 8. The minimum length for this option
is 4 octets, and the length must always be a multiple of 4.
9 LPR server The LPR server option specifies a list of RFC 1179 line printer servers available
to the client. Servers should be listed in order of preference.
The code for the LPR server option is 9. The minimum length for this option is 4
octets, and the length must always be a multiple of 4.
10 Impress server The Impress server option specifies a list of Imagen Impress servers available to
the client. Servers should be listed in order of preference.
The code for the Impress server option is 10. The minimum length for this
option is 4 octets, and the length must always be a multiple of 4.
The code for this option is 11. The minimum length for this option is 4 octets,
and the length must always be a multiple of 4.
12 Host name This option specifies the name of the client. The name might or might not be
qualified with the local domain name (see section 3.17 for the preferred way to
retrieve the domain name). See RFC 1035 for character set restrictions.
The code for this option is 12, and its minimum length is 1.
13 Boot file size This option specifies the length in 512-octet blocks of the default boot image for
the client. The file length is specified as an unsigned 16-bit integer.
14 Merit dump file This option specifies the path-name of a file to which the client's core image
should be dumped in the event the client crashes. The path is formatted as a
character string consisting of characters from the NVT ASCII character set.
15 Domain name This option specifies the domain name that client should use when resolving
hostnames through the Domain Name System.
17 Root path This option specifies the path-name that contains the client's root disk. The path
is formatted as a character string consisting of characters from the NVT ASCII
character set.
18 Extensions path A string to specify a file, retrievable via TFTP, which contains information that
can be interpreted in the same way as the 64-octet vendor-extension field within
the BOOTP response, with the following exceptions:
v The length of the file is unconstrained
v All references to Tag 18 (that is, instances of the BOOTP Extensions Path field)
within the file are ignored.
19 IP forwarding This option specifies whether the client should configure its IP layer for packet
forwarding. A value of 0 means disable IP forwarding, and a value of 1 means
enable IP forwarding.
21 Policy filter This option specifies policy filters for non-local source routing. The filters consist
of a list of IP addresses and masks which specify destination/mask pairs with
which to filter incoming source routes.
Any source routed datagram whose next-hop address does not match one of the
filters should be discarded by the client.
The code for this option is 21. The minimum length of this option is 8, and the
length must be a multiple of 8.
22 Maximum This option specifies the maximum size datagram that the client should be
datagram prepared to reassemble. The size is specified as a 16-bit unsigned integer. The
reassembly size minimum value legal value is 576.
23 Default IP time to This option specifies the default time-to-live that the client should use on
live outgoing datagrams. The TTL is specified as an octet with a value between 1
and 255.
25 Path MTU plateau This option specifies a table of MTU sizes to use when performing Path MTU
table Discovery as defined in RFC 1191. The table is formatted as a list of 16-bit
unsigned integers, ordered from smallest to largest. The minimum MTU value
cannot be smaller than 68.
The code for this option is 25. Its minimum length is 2, and the length must be a
multiple of 2.
26 Interface MTU This option specifies the MTU to use on this interface. The MTU is specified as a
16-bit unsigned integer. The minimum legal value for the MTU is 68.
27 All subnets are This option specifies whether the client can assume that all subnets of the IP
local network to which the client is connected use the same MTU as the subnet of that
network to which the client is directly connected. A value of 1 indicates that all
subnets share the same MTU. A value of 0 means that the client should assume
that some subnets of the directly connected network might have smaller MTUs.
29 Perform mask This option specifies whether the client should perform subnet mask discovery
discovery using ICMP. A value of 0 indicates that the client should not perform mask
discovery. A value of 1 means that the client should perform mask discovery.
30 Mask supplier This option specifies whether the client should respond to subnet mask requests
using ICMP. A value of 0 indicates that the client should not respond. A value of
1 means that the client should respond.
31 Perform router This option specifies whether the client should solicit routers using the Router
discovery Discovery mechanism defined in RFC 1256. A value of 0 indicates that the client
should not perform router discovery. A value of 1 means that the client should
perform router discovery.
32 Router solicitation This option specifies the address to which the client should transmit router
address option solicitation requests.
The routes consist of a list of IP address pairs. The first address is the
destination address, and the second address is the router for the destination.
The code for this option is 33. The minimum length of this option is 8, and the
length must be a multiple of 8.
34 Trailer This option specifies whether the client should negotiate the use of trailers (RFC
encapsulation 893) when using the ARP protocol. A value of 0 indicates that the client should
not attempt to use trailers. A value of 1 means that the client should attempt to
use trailers.
35 ARP cache timeout This option specifies the timeout in seconds for ARP cache entries. The time is
specified as a 32-bit unsigned integer.
36 Ethernet This option specifies whether the client should use Ethernet Version 2 (RFC 894)
encapsulation or IEEE 802.3 (RFC 1042) encapsulation if the interface is an Ethernet. A value of
0 indicates that the client should use RFC 894 encapsulation. A value of 1 means
that the client should use RFC 1042 encapsulation.
38 TCP keep-alive This option specifies the interval (in seconds) that the client TCP should wait
interval before sending a keepalive message on a TCP connection. The time is specified
as a 32-bit unsigned integer. A value of zero indicates that the client should not
generate keepalive messages on connections unless specifically requested by an
application.
39 TCP keep-alive This option specifies whether the client should send TCP keepalive messages
garbage with an octet of garbage for compatibility with older implementations. A value
of 0 indicates that a garbage octet should not be sent. A value of 1 indicates that
a garbage octet should be sent.
40 Network This option specifies the name of the client's NIS domain. The domain is
information service formatted as a character string consisting of characters from the NVT ASCII
domain character set.
The code for this option is 41. Its minimum length is 4, and the length must be a
multiple of 4.
42 Network time This option specifies a list of IP addresses indicating NTP servers available to the
protocol servers client. Servers should be listed in order of preference.
option
The code for this option is 42. Its minimum length is 4, and the length must be a
multiple of 4.
44 NetBIOS over The NetBIOS name server (NBNS) option specifies a list of RFC 1001/1002
TCP/IP name NBNS name servers listed in order of preference.
server
The code for this option is 44. The minimum length of the option is 4 octets, and
the length must always be a multiple of 4.
45 NetBIOS over The NetBIOS datagram distribution server (NBDD) option specifies a list of RFC
TCP/IP datagram 1001/1002 NBDD servers listed in order of preference.
distribution server
The code for this option is 45. The minimum length of the option is 4 octets, and
the length must always be a multiple of 4.
In the above chart, the notation '0x' indicates a number in base-16 (hexadecimal).
The code for this option is 46. The length of this option is always 1.
47 NetBIOS over The NetBIOS scope option specifies the NetBIOS over TCP/IP scope parameter
TCP/IP scope for the client as specified in RFC 1001/1002.
The code for this option is 47. The minimum length of this option is 1.
48 X Window System This option specifies a list of X Window System Font servers available to the
Font server client. Servers should be listed in order of preference.
The code for this option is 48. The minimum length of this option is 4 octets,
and the length must be a multiple of 4.
49 X Window System This option specifies a list of IP addresses of systems that are running the X
display manager Window System Display Manager and are available to the client.
The code for the this option is 49. The minimum length of this option is 4, and
the length must be a multiple of 4.
58 Renewal (T1) time This option specifies the time interval from address assignment until the client
value transitions to the RENEWING state.
59 Rebinding (T2) This option specifies the time interval from address assignment until the client
time value transitions to the REBINDING state.
The code for this option is 65. Its minimum length is 4, and the length must be a
multiple of 4.
66 Server name This option is used to identify a TFTP server when the 'sname' field in the
DHCP header has been used for DHCP options.
The code for this option is 66, and its minimum length is 1.
67 Boot file name This option is used to identify a bootfile when the 'file' field in the DHCP header
has been used for DHCP options.
The code for this option is 67, and its minimum length is 1.
68 Home address This option specifies a list of IP addresses indicating mobile IP home agents
available to the client. Agents should be listed in order of preference.
The code for this option is 68. Its minimum length is 0 (indicating no home
agents are available) and the length must be a multiple of 4. It is expected that
the usual length will be four octets, containing a single home agent's address.
69 SMTP servers The SMTP server option specifies a list of SMTP servers available to the client.
Servers should be listed in order of preference.
The code for the SMTP server option is 69. The minimum length for this option
is 4 octets, and the length must always be a multiple of 4.
The code for the POP3 server option is 70. The minimum length for this option
is 4 octets, and the length must always be a multiple of 4.
71 NNTP server The NNTP server option specifies a list of NNTP available to the client. Servers
should be listed in order of preference.
The code for the NNTP server option is 71. The minimum length for this option
is 4 octets, and the length must always be a multiple of 4.
72 WWW server The WWW server option specifies a list of WWW available to the client. Servers
should be listed in order of preference.
The code for the WWW server option is 72. The minimum length for this option
is 4 octets, and the length must always be a multiple of 4.
73 Finger server The Finger server option specifies a list of Finger available to the client. Servers
should be listed in order of preference.
The code for the Finger server option is 73. The minimum length for this option
is 4 octets, and the length must always be a multiple of 4.
74 IRC server The IRC server option specifies a list of IRC available to the client. Servers
should be listed in order of preference.
The code for the IRC server option is 74. The minimum length for this option is
4 octets, and the length must always be a multiple of 4.
The code for the StreetTalk server option is 75. The minimum length for this
option is 4 octets, and the length must always be a multiple of 4.
76 STDA server The StreetTalk Directory Assistance (STDA) server option specifies a list of STDA
servers available to the client. Servers should be listed in order of preference.
The code for the StreetTalk Directory Assistance server option is 76. The
minimum length for this option is 4 octets, and the length must always be a
multiple of 4.
77 User class Specifies the class name of which the host is a member. You must have
previously defined this class to the DHCP server during DHCP server
configuration.
78 Directory agent Specifies the IP address of the directory agent if clients use Service Location
Protocol to transact messages.
79 Service scope Specifies the scope of the directory agent that uses Service Location Protocol to
respond to service request messages.
80 Naming authority Specifies the naming authority for the directory agent if clients use Service
Location Protocol to transact messages. The naming authority specifies the
syntax for schemes that are used in URLs.
Related information:
DHCP Options and BOOTP Vendor Extensions
Examples: DHCP
By reviewing diagrams and examples of how different networks are set up, you can determine which is
the best choice for your installation.
Looking at how someone else has used a technology is often the best way to learn about that technology.
The following examples show how DHCP works, how it is incorporated into different network setups,
and how to tie in some of the V5R4 functions. It is a great place to start whether you are a beginner to
DHCP or an experienced DHCP administrator.
Related concepts:
“Network topology considerations” on page 42
When planning for your Dynamic Host Configuration Protocol (DHCP) setup, you must consider several
factors, such as your network topology, the devices on the network (for example, routers), and how you
want to support your clients in DHCP.
In this example, the System i model acts as a DHCP server for the 10.1.1.0 IP subnet. It is connected to
the LAN with its 10.1.1.1 interface.
With so few PC clients, administrators can easily type the information that is related to each PC's IP
address and maintain this information. (They only need to visit four PCs in this case.) Now imagine that
the four PCs become 200 PCs. Setting up each PC's IP information now becomes a time-consuming task
that might result in accuracy errors too. DHCP can simplify the process of assigning IP information to
clients. If the subnet 10.1.1.0 has hundreds of clients, an administrator only needs to create a single DHCP
policy on the system. This policy distributes IP information to each client.
When PC clients send out their DHCPDISCOVER signals, the server responds with the appropriate IP
information. In this example, the company also has a LAN-based printer that obtains its IP information
from the DHCP server. But because PC clients depend on the printer's IP address remaining the same, the
network administrator must account for that in the DHCP policy. One solution is to assign a constant IP
For a client to communicate with a TCP/IP network, it requires at least an IP address and subnet mask.
The clients will get their IP address from the DHCP server, and the DHCP server passes additional
configuration information (for example, their subnet mask) using the configuration options.
Inherited options
Options from Global configuration
Inherited options
Options from Global configuration
Related reference:
“Example: Multiple TCP/IP subnets”
This example explains how to set up a System i model as a Dynamic Host Configuration Protocol
(DHCP) server with two LANs connected by a DHCP-enabled router.
“Example: DHCP and multihoming” on page 29
This example explains how to set up a System i model as a Dynamic Host Configuration Protocol
(DHCP) server for a LAN that is connected to the Internet by an Internet router.
The router that connects the two networks must be enabled to pass DHCPDISCOVER packets. If it is not,
the data entry clients will not be able to receive their IP information and access the network. Also, the
DHCP policy needs two subnet definitions--one for the data entry subnet and the other for the office
Related reference:
“Example: Simple DHCP subnet” on page 25
This example explains how to set up a System i model as a Dynamic Host Configuration Protocol
(DHCP) server in a simple LAN with four PC clients and a LAN-based printer.
This example is much like the Simple DHCP subnet example. In this example, the data entry clients are
only communicating among themselves and the System i model. They obtain their IP information
dynamically from the System i DHCP server.
However, a new version of their data entry application requires that the network communicates with the
Internet, and the company decides to provide Internet access through an Internet router as shown in the
following figure. In addition to the router, the administrator also adds another interface with an IP
Dynamic Host Configuration Protocol 29
address to communicate with the Internet. When multiple IP addresses are assigned to the same adapter,
the system is multihoming.
Figure 4. Using DHCP with multiple IP addresses assigned to the same adapter
Note: Although this is a feasible way to connect your network to the Internet, it is not the most secure
way. It suits the purposes of this DHCP example, but you must consider the security implications
when you configure your own DHCP server.
When configuring the DHCP setup, take into account that the System i model is known by two different
IP addresses. To understand how to set up DHCP correctly for this scenario, it is helpful to understand
what happens when a client sends out a DHCPDISCOVER packet.
When a client sends out a DHCPDISCOVER packet, it is broadcasted on the ring. Therefore, the System i
DHCP server cannot determine which IP address the packet is intended for. If this packet is marked with
the 10.1.1.1 interface IP (the one used for DHCP), your clients receive their IP information as expected.
To set up DHCP in this situation, you must create not only the data entry DHCP subnet, but also a
subnet for the Internet network. The Internet policy consists of a subnet with no available addresses. The
easiest way to do this is to define the subnet with at least one IP address (like 192.168.1.1), and then
exclude that same IP address. With the two subnets defined, you combine the two (or more) subnets into
a subnet group. If the DHCPDISCOVER packet gets marked with the 192.168.1.1 interface, the data entry
subnet still issues valid IP information.
To make this scenario work, the data entry subnet must pass its clients their router address for access to
the Internet. In this case, the router address is the System i interface of 10.1.1.1. You must also set IP
datagram forwarding to On for the two interfaces to route packets to each other. This example uses
reserved IP addresses to represent both internal and external IP addresses. If your network matches this
scenario, you also need to use network address translation (NAT) for your data entry clients to
communicate with the Internet.
Using subnet groups to eliminate this marking problem is not limited to only multihoming examples.
Any time multiple interfaces are connected to the same network, you might encounter the same problem.
The following figure illustrates how the System i model can have two physical connections to the data
entry network. This network configuration requires a similar DHCP group policy as the multihoming
setup because DHCPDISCOVER packets might conceivably be answered by the 192.168.1.1 interface.
Other setup
v Set IP Datagram forwarding to 'on' for the two interfaces
v Set up NAT for the Data Entry clients
Related reference:
“Example: Simple DHCP subnet” on page 25
This example explains how to set up a System i model as a Dynamic Host Configuration Protocol
(DHCP) server in a simple LAN with four PC clients and a LAN-based printer.
The following illustration depicts how the System i model can act as a DHCP and DNS server for a
simple subnet. In this work environment, suppose that the inventory, data entry, and executive clients
create documents with graphics from the graphics file server. They connect to the graphics file server by
mapping a network drive to its host name.
Previous versions of DHCP and DNS were independent of each other. If DHCP assigned a new IP
address to a client, the DNS records had to be manually updated by the administrator. In this example, if
the graphics file server's IP address changes because it is assigned by DHCP, then its dependent clients
are unable to map a network drive to its host name because the DNS records contain the file server's
previous IP address.
With the current DNS server, you can dynamically update your DNS records in conjunction with
intermittent address changes through DHCP. For example, when the graphics file server renews its lease
and is assigned an IP address of 10.1.1.250 by the DHCP server, the associated DNS records are updated
dynamically. This allows the other clients to query the DNS server for the graphics file server by its host
name without interruption.
You can configure DHCP to update resource records on address mapping (A) records and reverse-lookup
pointer (PTR) records on behalf of a client. The A record maps a client's host name to its IP address. The
PTR record maps a client's IP address to its host name. For each record that is updated dynamically, an
associated text (TXT) record is written to identify that the record was written by DHCP. You can choose
to let DHCP update both A and PTR records, or just PTR records. For more information about how to
configure DNS to accept dynamic updates, refer to Example: DNS and DHCP on the same System i in the
DNS topic collection.
To enable DNS updates, you must create a DNS key for your DHCP server. The DNS key authorizes the
DHCP server to update the DNS records based on IP addresses it has distributed. Then, in the DHCP
configuration, choose the scope level where you want DNS updates to occur. For example, if you want all
subnets to perform DNS updates, set the updates at the Global level. If you want only one subnet to
perform updates, then set only that subnet to update.
Other setup:
Authorize DHCP to send updates to DNS. Refer to Example: DNS and DHCP on the same System i in
the DNS topic collection.
The following illustration depicts a small subnet network with DNS and DHCP running on separate
System i models. The system running DNS is configured the same as when DNS and DHCP are on the
same System i model. However, there are some additional steps to configure the DHCP server to send
dynamic updates.
Refer to “Example: DNS and DHCP on the same System i” on page 33 for examples of the global
configuration options and subnet settings.
Other setup:
You must authorize the DHCP server to send updates to the DNS server. You can either repeat the
process of defining the Dynamic Update Key, or send the file and place it in the appropriate directory
path.
To create a Dynamic Update Key on both System i models, follow these steps:
1. In System i Navigator, expand your system > Network > Servers > DNS.
2. In the left pane, right-click DNS and select Manage Dynamic Update Keys.
3. On the Managing Dynamic Update Keys page, select Add.
4. On the Add Dynamic Update Keys page, complete the following fields:
v Key name: Specify the name for the key, for example mycompany.key. The key name must be
dot-terminated.
v Dynamic update zones: Specify the zone names for which this key will be valid. You can specify
more than one zone.
v Generate key: Select the method that you want to use to generate a secret key.
5. Repeat the preceding steps so that the same key is defined on both the System i model running DNS
and the System i model running DHCP.
Related concepts:
Domain Name System requirements
Related information:
Update DNS API
Remote clients, such as dial-in clients, often require access to a company's network. Dial-in clients can
gain access to a System i model with Point-to-Point Protocol (PPP) . To access the network, the dial-in
client needs IP information just like any directly attached network client. A System i DHCP server can
distribute IP address information to a PPP dial-in client just like any other directly attached client. The
following figure shows a remote client that must dial into the company's network to do some work.
For the remote employee to successfully become part of the company's network, the System i model must
use a combination of Remote Access Services and DHCP. The Remote Access Services function creates the
dial-in capability for the System i model. If set up properly, after the client establishes the dial-in
connection, the PPP server tells the DHCP server to distribute TCP/IP information to the remote client.
In this example, a single DHCP subnet policy covers both the on-site network clients and the dial-in
clients.
If you want your PPP profile to defer to the DHCP for IP distribution, you must do so in the PPP profile.
In the TCP/IP settings of the receiver connection profile, set the remote IP address assignment method
from Fixed to DHCP. To allow the dial-in clients to communicate with other network clients, like the
LAN printer, you must also allow IP forwarding in the TCP/IP settings of the profile and the TCP/IP
configuration (stack) properties. If you only set IP forwarding on in the PPP profile, the System i model
will not pass the IP packets. You must set IP forwarding on in both the profile and the stack.
Also, the local interface IP address in the PPP profile must be an IP address that falls within the subnet
definition in the DHCP server. In this example, the PPP profile local interface IP address must be 10.1.1.1.
This address must also be excluded from the DHCP server's address pool so that it is not assigned to a
DHCP client.
Other setup
v Set the Remote IP address method to DHCP in the PPP receiver connection profile.
1. Enable DHCP WAN client connection with a DHCP server or relay connection using the Services
menu item for Remote Access Services in System i Navigator.
2. Select to use DHCP for the IP address assignment method under the TCP/IP Settings Properties of
the Receiver Connection Profile in System i Navigator.
v Allow remote system to access other networks (IP forwarding) under the TCP/IP Settings Properties of
the Receiver Connection Profile in System i Navigator.
v Enable IP datagram forwarding under the Settings Properties of the TCP/IP Configuration in System i
Navigator.
Related reference:
“Example: DHCP and PPP profile on different System i models”
This example explains how to set up two System i models as the network Dynamic Host Configuration
Protocol (DHCP) server and the BOOTP/DHCP relay agent for two LANs and remote dial-in clients.
The example about PPP and DHCP on a single System i model shows how to use PPP and DHCP on a
single system to permit dial-in clients access to a network. If you are concerned with the physical layout
of your network or with security, it might be better to have the PPP and DHCP servers separated or to
have a dedicated PPP server without DHCP services. The following figure represents a network that has
dial-in clients with the PPP and DHCP policies on different servers.
The remote data entry clients dial into the System i PPP server. The PPP profile on that server must have
a remote IP address method of DHCP, such as the one used in the example of PPP and DHCP on a single
System i model. The PPP profile and the TCP/IP stack properties on the PPP server must have IP
forwarding. Furthermore, because this server is acting as a DHCP relay agent, the BOOTP/DHCP relay
agent must be on. This allows the System i Remote Access server to pass on DHCPDISCOVER packets to
the DHCP server. The DHCP server then responds and distributes TCP/IP information to the dial-in
clients through the PPP server.
The DHCP server is responsible for distributing IP addresses to both the 10.1.1.0 and 10.1.2.0 networks. In
the data entry network, the DHCP server gives out IP addresses ranging from 10.1.2.10 to 10.1.2.40 to
Also, the local interface IP address in the PPP profile must be an IP address that falls within the subnet
definition in the DHCP server. In this example, the PPP profile Local Interface address must be 10.1.2.2.
This address must also be excluded from the DHCP server's address pool so that it is not assigned to a
DHCP client. The local interface IP address must be an address to which the DHCP server can send reply
packets to.
Planning the DHCP setup for DHCP with a DHCP relay agent
Table 16. Global configuration options (applies to all clients served by the DHCP server)
Object Value
Configuration Option 1: Subnet mask 255.255.255.0
options
Option 6: Domain name server 10.1.1.1
Option 15: Domain name mycompany.com
Is the system performing DNS updates? No
Is the system supporting BOOTP clients? No
Object Value
Interface address 10.1.2.2
Relay packets to Server IP address 10.1.2.1
v Set the Remote IP address method to DHCP in the PPP receiver connection profile
Security considerations
The DHCP protocol is not capable of verifying that clients requesting IP addresses are authorized to do
so.
Because of the nature of DHCP's interaction with the network, it is important that you secure your
System i model from outside clients. If your DHCP server is on a System i model that is part of a trusted
internal network, you might be able to use IP filtering and network address translation to further secure
it from any unauthorized parties. If your DHCP server is on a System i model that is attached to an
untrusted network, such as the Internet, refer to the System i and Internet security topic.
Related concepts:
IP filtering and network address translation
Security
One of the most important aspects of planning a DHCP implementation is understanding you network
layout or topology. When you understand your network topology, you will be able to quickly identify the
IP address ranges for DHCP, the configuration information that each client needs, the devices that need to
be configured to forward DHCP messages, and whether DHCP can work with your DNS or PPP servers.
Depending on the complexity of your network, you might even want to sketch your network topology on
a piece of scrap paper. You must include all of the LANs, the devices that connect the LANs, and the IP
addresses for devices and clients (for example, a printer) that need a defined IP address. You might want
to look at some of the DHCP examples to help you sketch out your network topology.
Even with a complex network, you can still manage all of your network clients using only one DHCP
server. Depending on your network topology, you might need to set up a few DHCP/BOOTP relay
agents or enable your routers to forward DHCP packets to make it work.
Using only one DHCP server for your entire network will centralize host configuration management for
all of your clients. However, there are cases where you might want to consider using multiple DHCP
servers in your network.
To avoid a single point of failure, you can configure two or more DHCP servers to serve the same subnet.
If one server fails, the others can continue to serve the subnet. Each of the DHCP servers must be
accessible either by direct attachment to the subnet or by using a DHCP/BOOTP relay agent.
Because two DHCP servers cannot serve the same addresses, address pools defined for a subnet must be
unique across DHCP servers. Therefore, when using two or more DHCP servers to serve a particular
subnet, the complete list of addresses for that subnet must be divided among the servers. For example,
you can configure one server with an address pool consisting of 70% of the available addresses for the
subnet and the other server with an address pool consisting of the remaining 30% of the available
addresses.
Using multiple DHCP servers decreases the probability of having a DHCP-related network access failure,
but it does not guarantee against it. If a DHCP server for a particular subnet fails, the other DHCP server
might not be able to service all the requests from new clients, which might, for example, exhaust the
server's limited pool of available addresses.
If you are considering multiple DHCP servers, remember that multiple DHCP servers cannot share any of
the same addresses. If you use more than one DHCP server in your network, each server must be
configured with their own unique IP address ranges.
Using your network topology, you can document which network address ranges you want the DHCP
server to manage. You must identify which devices have a manually configured IP address (for example,
the router's IP address) that you want to exclude from the DHCP's address pool.
In addition, you will want to consider whether these addresses should be assigned dynamically by the
DHCP server, or you want to assign specific IP addresses to certain clients. You might want to reserve a
specific address and configuration parameters for a specific client on a particular subnet, such as a file
server. Or, you might want to map all of your clients to a specific IP address. Refer to DHCP client
support for more information about assigning IP addresses dynamically versus statically.
The default lease time for the DHCP server is 24 hours. The duration for which you set the lease time on
your DHCP server depends on several factors. You will need to consider your goals, your site's usage
patterns, and service arrangements for your DHCP server. For more information to help you determine
the lease time for your DHCP clients, refer to Leases.
If you are currently using a BOOTP server, consider that the DHCP server can replace the BOOTP server
on your network with little or no impact to your BOOTP clients. There are three options for you if you
have BOOTP clients currently on your network.
Another option is to migrate your BOOTP server configuration to the DHCP server. A DHCP client will
be created for each BOOTP client listed in the BOOTP server configuration. In this option, it is
recommended that you reconfigure your clients to be DHCP clients. However, when you migrate your
BOOTP configuration to DHCP, the DHCP address assignments will work for either a BOOTP or DHCP
client. This might be a good option to transition your BOOTP clients to DHCP. Your BOOTP clients will
still be supported during the process of reconfiguring them to DHCP.
Eventually, you might want to do the third option: change each BOOTP client to DHCP and configure
DHCP to dynamically assign them addresses. Essentially, this option removes BOOTP entirely from the
network.
Using your network topology layout, you can clearly see the devices (for example, routers) that must be
identified in the DHCP configuration. In addition, you must identify other servers in your network, such
as the Domain Name System (DNS) server, that your clients might need to know about. You can either
specify this information for the entire network, a specific subnet, or a specific client regardless of the
subnet.
If you have devices that apply to many clients, you will want to specify them at the highest level possible
(for example, at the Global level for the entire network, or at the subnet level for a specific subnet). This
will minimize the changes you will need to make to the DHCP configuration when the device changes. If
you have specified the same router, for example, for every client in your network, you must change the
configuration for every client when the router has changed. However, if you have specified the router at
the global level (all of the clients will inherit this configuration information), you only need to change the
information once and the information is changed for all clients.
Some of your clients might have unique TCP/IP configuration requirements that require the information
to be configured at the client level. DHCP can recognize those clients and provide the unique
configuration data to them. This is not only true for the configuration options, but also for the lease time
and IP address. For example, a client might need a longer lease time than all the other clients. Or, maybe
only one client, such as a file server, needs a dedicated IP address. Identifying those clients and the
unique information they require beforehand will help you when you start configuring the DHCP server.
For a quick reference to all of the configuration options, refer to “DHCP options lookup” on page 9.
If you are currently using a DNS server to manage all of your client's host names and IP addresses, you
will definitely want to reconfigure your DNS server to accept dynamic updates from DHCP. If you use
Dynamic DNS, the clients will not notice any interruption or changes in the DNS service when you
switch over to DHCP. For more information about using DHCP with your DNS server, refer to Dynamic
updates.
If you are not currently using a DNS server, you might want to consider adding a DNS server when you
add the DHCP server. You can read the DNS topic in the information center to find out more about DNS
benefits and requirements.
If you have any remote clients that connect to your network using PPP, you can set up DHCP to
dynamically assign an IP address to those remote clients when they connect to the network. To see some
examples of networks where this might be useful, see “Example: PPP and DHCP on a single System i” on
page 37 or “Example: DHCP and PPP profile on different System i models” on page 39. These examples
also explain how to set up the network to use PPP and DHCP together for your remote clients.
Related concepts:
“Examples: DHCP” on page 24
By reviewing diagrams and examples of how different networks are set up, you can determine which is
the best choice for your installation.
“Relay agents and routers” on page 6
You can use Dynamic Host Configuration Protocol (DHCP) relay agents and routers to efficiently and
securely transfer data throughout the network.
“DHCP client support” on page 7
You can use a DHCP server to manage each client in your network individually, rather than managing all
of the clients as a large group (subnet).
“Leases” on page 4
When DHCP sends configuration information to a client, the information is sent with a lease time. This is
the length of time that the client can use the IP address it has been assigned. The duration of the lease
time can be changed according to your specific requirement.
“BOOTP” on page 8
The Bootstrap Protocol (BOOTP) is a host configuration protocol that was used before the Dynamic Host
Configuration Protocol (DHCP) was developed. BOOTP support is a subset of DHCP.
“Dynamic updates” on page 8
You can configure a Dynamic Host Configuration Protocol (DHCP) server to work with a Domain Name
System (DNS) server to dynamically update the client information in the DNS when DHCP assigns the
client an IP address.
Domain Name System
Configuring DHCP
Here are instructions for setting up your DHCP server and clients, and for configuring DHCP to send
dynamic updates to Domain Name System (DNS).
Related reference:
“Planning for DHCP” on page 42
Setting up Dynamic Host Configuration Protocol (DHCP) can be a time-consuming and error-prone
process if you do not take time to plan how to configure your DHCP server. To configure your DHCP
server more efficiently, consider network setup and security concerns beforehand.
If you are creating a new DHCP configuration, you will use a wizard that helps you set up the DHCP
server. This wizard asks you some of the basic configuration questions and steps you through the process
of creating a subnet. After you have completed the wizard, you can change and improve the
configuration to your network's needs.
If your DHCP server is already configured, the DHCP server configuration function will display the
current configuration, including all of the subnets and clients that can be managed from the DHCP server
and the configuration information that will be sent to the clients.
Follow these steps if you look at the DHCP configuration frequently and want to create a shortcut to the
DHCP configuration window on your desktop.
1. In System i Navigator, expand your system > Network > Servers > TCP/IP > DHCP.
2. Right-click DHCP, and then select Create Shortcut.
| In order to use ISC's DHCP 4 server on the IBM i, follow these steps:
| 1. Ensure IBM i option 31 (Domain Name System (DNS)) and option 33 (Portable Application Solutions
| Environment (PASE)) are installed on the system.
| 2. Define an environment variable to tell the operating system to use the ISC's DHCP 4 server with the
| following command:
| ADDENVVAR ENVVAR(’QIBM_ISC_DHCP’) VALUE(’Y’) LEVEL(*SYS)
| Note: If the QIBM_ISC_DHCP environment variable is not present the IBM i DHCP server is used.
| 3. Run the Change DHCP Attributes (CHGDHCPA) command. This command migrates any existing DHCP
| configuration into configuration files used by the ISC DHCP server. Not all configuration options
| provided by the IBM i DHCP server are supported by the ISC DHCP server. However, as much of the
| configuration as possible is migrated. After migration, changes to the IBM i DHCP server
| configuration will not be reflected in the ISC DHCP server configuration files.
| 4. Manually edit the newly created configuration files. A graphical interface for managing the ISC DHCP
| server and monitoring the leases it manages is not provided. All associated configuration files must be
| edited manually.
| 5. Determine if you want to run an IPv4, IPv6, or both an IPv4 and IPv6 DHCP server on the same
| system.
| a. If you choose to run both an IPv4 and IPv6 DHCP server on the same system, run the following
| command:
| CHGDHCPA IPVERSION(*ALL)
| b. If you choose to run only an IPv6 DHCP server, run the following command:
| CHGDHCPA IPVERSION(*IPV6)
| c. If you choose to run only an IPv4 DHCP server, run the following command:
| CHGDHCPA IPVERSION(*IPV4)
| 6. Start the server using the command:
| The files used by the ISC DHCP server are stored in the Integrated File System (IFS) directory:
| /QIBM/USERDATA/OS400/DHCP/ETC
| When migrating the configuration files from the existing DHCP server to the ISC DHCP server, the
| following options are not supported.
| 1. Globally defined reserved addresses are not migrated. Reserved addresses must be defined on a
| subnet basis.
| 2. The subnet group attributes for “in order” and “balanced” subnets are not migrated. In addition, after
| the migration it might be necessary to manually group subnets into “shared network” subnet groups.
| A "shared network" subnet group informs the DHCP server if subnets within it are connected to the
| same network segment.
| 3. Logging directives are not migrated; however, it is still possible to manually turn on logging.
| Manually starting the server and passing the –D option for *SERVER mode or the –K option for
| *RELAY mode turns on logging. The option can be specified on the STRTCPSVR command as follows:
| STRTCPSVR SERVER(*DHCP) INSTANCE(*DFT '-D’)
| 4. The following keywords and any associated data in the dhcpsd.cfg file are not migrated:
| appendDomainName, balanced, inOrder, leaseExpireInterval, logFileName, logFileSize, logItem,
| numLogFiles, releaseDNSA, releaseDNSP, reservedTime, statisticSnapshot, and
| usedIPAddressExpireInterval.
| 5. Since the native IBM i DHCP server does not support IPv6, an empty configuration file is created for
| the ISC DHCP server.
| 6. As part of migration, an attempt is made to migrate any active DHCP leases when the ISC DHCP
| server is started. In addition, DNS records might be updated for any expired leases. The migration is
| only attempted the first time that the ISC server is used.
| 7. The ISC DHCP code distribution provides a DHCP client; however, it is not available for use on the
| IBM i. Instead, the IBM i provides its own DHCP client support for both IPv4 and IPv6. Configuring a
| line as a DHCP client is available through the Add TCP/IP Interface (ADDTCPIFC) command.
| Both the native IBM i and the ISC DHCP server can run as either DHCP servers or relay agents. For both
| DHCP implementations, the Mode (MODE) parameter of the CHGDHCPA command specifies whether to run
| as a DHCP server or relay agent. The DHCP exit programs for address binding notification, address
| release notification, and request packet validation support the ISC DHCP server and IPv6.
| Related information:
| Internet Systems Consortium
| ISC DHCP website
| DHCP Server Exit Programs
| DHCP failover
| The ISC DHCP 4 server supports failover between two DHCP server peers.
The following information describes the steps to configure your Windows clients to request their
configuration information from the DHCP server. In addition, it describes how the clients can view their
own DHCP lease information.
Windows Me clients have a utility that displays the client's MAC address and DHCP lease information.
You can also use it to release and renew DHCP leases.
To check the DHCP lease for the client, complete the following steps:
1. Open an MS-DOS Command prompt.
2. Run WINIPCFG.
Note: This utility does not dynamically update the displayed information, so it is necessary to rerun the
utility to view updated status.
Windows 2000 and Windows XP clients have a utility that displays the client's MAC address and DHCP
lease information. You can also use this utility to release and renew DHCP leases.
To check the DHCP lease for a Windows 2000 or a Windows XP client, follow these steps:
1. Open a Command Prompt window.
2. Run IPCONFIG /ALL.
Note: This utility does not dynamically update the displayed information, so it will be necessary to rerun
the utility to view updated status. You can use the same utility with different parameters to release
and renew a lease (IPCONFIG /RELEASE and IPCONFIG /RENEW). Run IPCONFIG /? from an
MS-DOS Command Prompt to see all of the possible parameters for the command.
If you want the DHCP server to update DNS A records on behalf of the client, configure the DHCP
clients of Microsoft Windows 2000 and Windows XP. This configuration might simplify your DNS
administration because DNS updates will then originate from the DHCP server for all clients, rather than
some clients updating their own records.
You can follow these steps to enable Windows 2000 or Windows XP to use the DHCP server to update
DNS A records on behalf of the client.
1. On the Start Menu, complete either of the following steps according to your Windows environment.
v Windows XP: Select Control Panel > Network Connections.
v Windows 2000: Select Settings > Network and Dial-up Connections.
2. Right-click the appropriate connection name and select Properties.
3. Select TCP/IP Protocol, and then select Properties.
4. Click Advanced. On the DNS tab, make sure Register this connection's addresses in DNS is
unchecked.
5. Click OK on the Advanced TCP/IP Settings panel.
6. Click OK on the Internet Protocol (TCP/IP) Properties panel.
7. Click OK.
Windows 2000 and Windows XP clients have a utility that displays the client's MAC address and DHCP
lease information. You can also use this utility to release and renew DHCP leases.
To check the DHCP lease for a Windows 2000 or a Windows XP client, follow these steps:
1. Open a Command Prompt window.
Note: This utility does not dynamically update the displayed information, so it will be necessary to rerun
the utility to view updated status. You can use the same utility with different parameters to release
and renew a lease (IPCONFIG /RELEASE and IPCONFIG /RENEW). Run IPCONFIG /? from an
MS-DOS Command Prompt to see all of the possible parameters for the command.
If you want the DHCP server to update DNS A records on behalf of the client, configure the DHCP
clients of Microsoft Windows 2000 and Windows XP. This configuration might simplify your DNS
administration because DNS updates will then originate from the DHCP server for all clients, rather than
some clients updating their own records.
You can follow these steps to enable Windows 2000 or Windows XP to use the DHCP server to update
DNS A records on behalf of the client.
1. On the Start Menu, complete either of the following steps according to your Windows environment.
v Windows XP: Select Control Panel > Network Connections.
v Windows 2000: Select Settings > Network and Dial-up Connections.
2. Right-click the appropriate connection name and select Properties.
3. Select TCP/IP Protocol, and then select Properties.
4. Click Advanced. On the DNS tab, make sure Register this connection's addresses in DNS is
unchecked.
5. Click OK on the Advanced TCP/IP Settings panel.
6. Click OK on the Internet Protocol (TCP/IP) Properties panel.
7. Click OK.
When a client using DHCP receives an IP address, that data is immediately sent to the DNS server. Using
this method, DNS can continue to successfully resolve queries for hosts, even when their IP addresses
change.
For record updates to occur, Domain Name System (Option 31 of IBM i) must be installed on this server.
The DHCP server uses programming interfaces provided by Option 31 to perform dynamic updates. The
DNS server can be running on a separate System i model that is capable of performing dynamic updates.
For information about verifying that Option 31 is installed, refer to DNS system requirements.
To configure DHCP properties to allow the DHCP server to perform dynamic DNS updates, follow these
steps:
1. Expand Network > Servers > TCP/IP.
2. In the right pane, right-click DHCP and select Configuration.
3. In the left panel of the DHCP Server Configuration window, right-click Global and select Properties.
4. Select the Options tab.
5. Select option 15: Domain name from the Selected options list. If option 15 does not appear in the
Selected options list, select 15: Domain name from the Available options list and click Add.
6. In the Domain Name field, specify the domain name the client uses when resolving host names
using DNS.
To disable DNS dynamic updates from the client, perform the following steps:
1. On the Start Menu, select Settings > Network and Dial-up Connections.
2. Right-click the appropriate connection name and select Properties.
3. Select TCP/IP Protocol, and then select Properties.
4. Select Advanced.
5. On the DNS tab, deselect the "Register this connection's addresses in DNS" and "Use this connections
DNS suffix in DNS registration" options.
6. Click OK.
Follow these steps for all connections that you want to have the DNS records update delegated to the
DHCP server.
The DHCP server monitor is provided to monitor active lease information for a System i DHCP server.
You can use this graphical interface to view which IP addresses are leased, how long they have been
leased, and when they are available to lease again.
You can also use the DHCP server monitor to reclaim IP addresses that are no longer being used. If the
DHCP address pool has been exhausted, you can look through the active lease information. Use the
active lease information to determine if you can delete any leases to make the IP addresses available to
other clients. For example, you might have a client that is no longer on the network, but still has an
active IP address lease. You can delete the active IP address lease for this client. You can only perform
this operation when you are certain that the client will no longer attempt to use the address. The DHCP
server does not notify the clients when you delete their active IP address lease. If you delete an active
lease for a client that is still on the network without releasing the IP address from the client, you might
end up with duplicate IP address assignments on your network.
Related concepts:
“Problem: Duplicate IP address assignments on the same network” on page 54
An IP address must be unique across your network. The Dynamic Host Configuration Protocol (DHCP)
server cannot assign a single IP address to more than one client.
If your problem is not listed here, review the “Planning for DHCP” on page 42 topic to verify that you
have taken everything into consideration for your DHCP configuration.
Select a problem description from the following list, or read Gathering detailed DHCP error information
topic for directions to access server log data and trace information.
Related reference:
Using communications trace to solve communication problems
First, look at the DHCP server job log, using the follow steps:
1. In System i Navigator, expand your system > Network > Servers > TCP/IP > DHCP.
2. Right-click DHCP, and then select Server Jobs.
If there are no messages in the DHCP server job log, it might be necessary to collect the information from
the System i communication trace or the internal program trace of the DHCP server. The communication
trace helps determine whether the client requests are reaching the DHCP server and whether the DHCP
server is responding to the client. If the client requests are reaching the DHCP server, but the server is
not responding, use the DHCP server internal program trace function.
All four steps must take place before the client receives an IP address. Refer to the “DHCP client/server
interaction” on page 2 topic for details about the four-step process.
Under certain conditions, the DHCP server will attempt to verify that an address is not currently in use
before it assigns it to a client. When the DHCP server detects that an address is being used when it
should not be, it will temporarily mark that address as used and will not assign that address to any
client. You can use the DHCP server monitor to view which IP addresses that the server has detected are
in use but were not assigned by the DHCP server. These addresses will have a USED status and an
UNKNOWN_TO_IBMDHCP client identifier.
Check the following points when the DNS records are not being updated dynamically.
Verify which subnets and the type of resource records (A, PTR, or both records) are being updated.
Check the DHCP configuration and verify that the client's subnet is set up to dynamically update
resource records and which type of record is being updated.
Verify that i5/OS Domain Name System, Option 31, is installed on the System i model that is running
DHCP.
The DHCP server uses programming interfaces provided by the i5/OS Domain Name System
feature, Option 31. The DNS that is being dynamically updated does not need to reside on the
same system as the DHCP server.
Verify the DHCP server is authorized to send updates to the DNS server.
Check the DNS configuration to verify that the DNS zone is configured to allow dynamic updates
and that the DHCP server is included in the Access Control List.
Verify that the DNS servers can resolve the client's domain.
Display the list of DNS servers on the System i model where DHCP resides by using the Change
TCP/IP Domain (CHGTCPDMN) command. Verify that these DNS servers can resolve the
domain that is being updated. To do this, run the Name Server Lookup (NSLOOKUP) tool from
the System i model where DHCP is running to resolve a name (or IP address) in the domain that
is failing to be updated. The DHCP server must be able to derive the fully qualified domain
name (FQDN) of the client to update its DNS record. The DHCP server does not attempt to
update a dynamic DNS without an FQDN (the host name and domain name of the client). The
DHCP server derives the FQDN of the client using the following sequence:
1. Option 81 (Client FQDN) in the DHCPREQUEST message from the client.
2. Option 12 (Host Name), Option 15 (Domain Name), or both options in the DHCPREQUEST
message from the client.
3. Option 12 (Host Name) in the DHCPREQUEST message from the client, Option 15 (Domain
Name) configured in the DHCP server, or both of these options. In this case, to derive the
FQDN, the DHCP server must be configured to append the domain name to the host name
(specified on the Properties > Dynamic DNS tab for the global level, subnet, class, or client).
The TXT record might not match the corresponding DNS record.
The DHCP server can be configured to check the existing DNS resource records to determine
which DHCP client they are associated with. The DHCP server accomplishes this by writing a
corresponding TXT record with each A and PTR record that it updates in the DNS. If the system
Problem: DHCP job log has DNS030B messages with error code 3447
Error code 3447 means that the Dynamic Host Configuration Protocol (DHCP) server times out while
waiting for a response from the Domain Name System (DNS) server. This might be due to network or
connection problems between the System i DHCP server and the DNS server.
This message will be accompanied by a TCP5763 message which contains the type of DNS resource
record and detailed data for the resource record that the DHCP server attempted to update.
Because the DHCP server attempts to update DNS resource records each time a lease is renewed, the
resource records might already be present in the zone configuration file from the initial IP address lease
or a prior lease renewal. Check the DNS zone configuration data using a tool, such as NSLOOKUP. You
might find that the resource record is already present with the correct data and that no action is
necessary.
If the resource record is not present in DNS, there are several ways to update the resource record. The
DHCP server attempts to update the resource record at the next lease renewal request. So, you can wait
until that occurs. Or, many clients attempt to renew or reacquire an IP address when they are turned on.
You might want to try to restart the client, which can cause the DHCP server to attempt to update the
DNS resource records again.
If none of these options work for you, you can update the DNS resource records manually. This method
is not recommended because the dynamic zone must not be running when you make manual updates.
So, other dynamic updates from the DHCP server are lost during this downtime. However, you can use
the dynamic update utilities that are provided by some client and BIND DNS server implementations to
update the resource record. Although similar in process to manually updating the zone (an administrator
must enter the resource record data to be updated), dynamic update utilities allow the zone to be
updated while the zone is active.
IBM Redbooks
This IBM Redbooks publication describes the Domain Name System (DNS) server and Dynamic Host
Configuration Protocol (DHCP) server support that are included in i5/OS. The information in this
Redbooks publication helps you install, tailor, configure, and troubleshoot the DNS and DHCP support
through examples.
Requests for Comments (RFCs) are written definitions of protocol standards and proposed
standards used for the Internet. The following RFCs might be helpful for understanding DHCP and
related functions:
v RFC 2136: Dynamic Updates in the Domain Name System (DNS UPDATE)
IBM may not offer the products, services, or features discussed in this document in other countries.
Consult your local IBM representative for information on the products and services currently available in
your area. Any reference to an IBM product, program, or service is not intended to state or imply that
only that IBM product, program, or service may be used. Any functionally equivalent product, program,
or service that does not infringe any IBM intellectual property right may be used instead. However, it is
the user's responsibility to evaluate and verify the operation of any non-IBM product, program, or
service.
IBM may have patents or pending patent applications covering subject matter described in this
document. The furnishing of this document does not grant you any license to these patents. You can send
license inquiries, in writing, to:
IBM Director of Licensing
IBM Corporation
North Castle Drive
Armonk, NY 10504-1785
U.S.A.
For license inquiries regarding double-byte (DBCS) information, contact the IBM Intellectual Property
Department in your country or send inquiries, in writing, to:
Intellectual Property Licensing
Legal and Intellectual Property Law
IBM Japan, Ltd.
3-2-12, Roppongi, Minato-ku, Tokyo 106-8711
The following paragraph does not apply to the United Kingdom or any other country where such
provisions are inconsistent with local law: INTERNATIONAL BUSINESS MACHINES CORPORATION
PROVIDES THIS PUBLICATION “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some
states do not allow disclaimer of express or implied warranties in certain transactions, therefore, this
statement may not apply to you.
This information could include technical inaccuracies or typographical errors. Changes are periodically
made to the information herein; these changes will be incorporated in new editions of the publication.
IBM may make improvements and/or changes in the product(s) and/or the program(s) described in this
publication at any time without notice.
Any references in this information to non-IBM Web sites are provided for convenience only and do not in
any manner serve as an endorsement of those Web sites. The materials at those Web sites are not part of
the materials for this IBM product and use of those Web sites is at your own risk.
IBM may use or distribute any of the information you supply in any way it believes appropriate without
incurring any obligation to you.
Licensees of this program who wish to have information about it for the purpose of enabling: (i) the
exchange of information between independently created programs and other programs (including this
one) and (ii) the mutual use of the information which has been exchanged, should contact:
IBM Corporation
Such information may be available, subject to appropriate terms and conditions, including in some cases,
payment of a fee.
The licensed program described in this document and all licensed material available for it are provided
by IBM under terms of the IBM Customer Agreement, IBM International Program License Agreement,
IBM License Agreement for Machine Code, or any equivalent agreement between us.
Any performance data contained herein was determined in a controlled environment. Therefore, the
results obtained in other operating environments may vary significantly. Some measurements may have
been made on development-level systems and there is no guarantee that these measurements will be the
same on generally available systems. Furthermore, some measurements may have been estimated through
extrapolation. Actual results may vary. Users of this document should verify the applicable data for their
specific environment.
Information concerning non-IBM products was obtained from the suppliers of those products, their
published announcements or other publicly available sources. IBM has not tested those products and
cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM
products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of
those products.
All statements regarding IBM's future direction or intent are subject to change or withdrawal without
notice, and represent goals and objectives only.
All IBM prices shown are IBM's suggested retail prices, are current and are subject to change without
notice. Dealer prices may vary.
This information is for planning purposes only. The information herein is subject to change before the
products described become available.
This information contains examples of data and reports used in daily business operations. To illustrate
them as completely as possible, the examples include the names of individuals, companies, brands, and
products. All of these names are fictitious and any similarity to the names and addresses used by an
actual business enterprise is entirely coincidental.
COPYRIGHT LICENSE:
This information contains sample application programs in source language, which illustrate programming
techniques on various operating platforms. You may copy, modify, and distribute these sample programs
in any form without payment to IBM, for the purposes of developing, using, marketing or distributing
application programs conforming to the application programming interface for the operating platform for
which the sample programs are written. These examples have not been thoroughly tested under all
conditions. IBM, therefore, cannot guarantee or imply reliability, serviceability, or function of these
programs. The sample programs are provided "AS IS", without warranty of any kind. IBM shall not be
liable for any damages arising out of your use of the sample programs.
Each copy or any portion of these sample programs or any derivative work, must include a copyright
notice as follows:
© (your company name) (year). Portions of this code are derived from IBM Corp. Sample Programs. ©
Copyright IBM Corp. _enter the year or years_.
Trademarks
IBM, the IBM logo, and ibm.com are trademarks or registered trademarks of International Business
Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be
trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at
Copyright and trademark information at www.ibm.com/legal/copytrade.shtml.
Adobe, the Adobe logo, PostScript, and the PostScript logo are either registered trademarks or trademarks
of Adobe Systems Incorporated in the United States, and/or other countries.
Microsoft, Windows, Windows NT, and the Windows logo are trademarks of Microsoft Corporation in the
United States, other countries, or both.
Other company, product, or service names may be trademarks or service marks of others.
Personal Use: You may reproduce these publications for your personal, noncommercial use provided that
all proprietary notices are preserved. You may not distribute, display or make derivative works of these
publications, or any portion thereof, without the express consent of IBM.
Commercial Use: You may reproduce, distribute and display these publications solely within your
enterprise provided that all proprietary notices are preserved. You may not make derivative works of
these publications, or reproduce, distribute or display these publications or any portion thereof outside
your enterprise, without the express consent of IBM.
Except as expressly granted in this permission, no other permissions, licenses or rights are granted, either
express or implied, to the publications or any information, data, software or other intellectual property
contained therein.
IBM reserves the right to withdraw the permissions granted herein whenever, in its discretion, the use of
the publications is detrimental to its interest or, as determined by IBM, the above instructions are not
being properly followed.
You may not download, export or re-export this information except in full compliance with all applicable
laws and regulations, including all United States export laws and regulations.
Appendix. Notices 61
62 IBM i: Networking Dynamic Host Configuration Protocol
IBM®
Printed in USA