A DHCP network table contains information related to IP address allocation. Each network has a separate network table. The tables, called dhcp_network tables in DHCP, derive their names from the IP address of the network they serve. For example, the network table for the network 120.146.5.0 is 120_146_5_0, with underscores replacing periods in the IP address notation.
Each subnet in a DHCP network has a dhcp_network table containing entries for the clients in the subnet. When a client boots and a DHCP server answers its request for parameters, information is recorded as a dhcp_network entry for the client. Among other information, the table includes the client's IP address and a pointer into the dhcptab table.
A network table contains the following specific information:
IP addresses, both assigned and unassigned
Client identifier (for assigned records only)
Lease expiration time
Flag that indicates the type of lease: dynamic, permanent, manual, unusable or BOOTP only
Name of the dhcptab configuration macro for each IP address
IP address of the server that owns the original client IP address
The network table functions as a list of the IP addresses that DHCP servers can assign on a particular network. Each network has its own network table. The key element in the network table is the list of IP addresses. All other elements in the table are significant in relation to the IP address. For example, the client ID identifies the client to which a particular IP address is currently assigned. If the IP address is not currently assigned, then the client ID for that IP address is zero. The expiration time is also zero. When the IP address is assigned, then the client ID and lease expiration time are filled in.
In certain implementations, the client ID becomes the hardware address of the client machine, with a prefix that indicates the network type. For example, a client with an Ethernet address would have 0102608BA614C1 as its client ID, where 01 indicates that the client is an Ethernet network. Other implementations of DHCP may use other identifiers, such as DNS names or property numbers. The important thing is that the client IDs must be unique within the network.
When an IP address is assigned, the lease expiration time for that IP address is set to a specific date and time, or it is marked "No Expiration."
The lease flag and the dhcptab configuration macro name are the same, regardless of whether the IP address is currently assigned to a client. When a client gets a particular IP address, it also gets the type of lease specified by the lease flag and the configuration specified by the property name. The lease flag indicates the conditions under which the IP address can be assigned. The pntadm command manages the dhcp_network table. Example 16-1 shows an example of pntadm output.
Client ID Flags Client IP Server IP Lease Macro Comment Explanation 010800207CBA2C 04 129.146.86.153 129.146.86.181 Zero mrcoffee 0108002022519C 00 129.146.86.205 129.146.86.181 7/3/1996 inet11 01080011043B65 08 129.146.86.29 129.146.86.181 Zero inet11 0100A024A9BCEE 08 129.146.86.198 129.146.86.181 7/22/1996 inet11 0100A024A791DE 00 129.146.86.200 129.146.86.181 8/4/1996 inet11 0100A02463D6EC 00 129.146.86.199 129.146.86.181 8/1/1996 inet11 0100A024636AB7 00 129.146.86.201 129.146.86.181 8/3/1996 inet11 010080C72EE4A3 00 129.146.86.206 129.146.86.181 7/5/1996 inet11 010020AF4A3B31 0 129.146.86.214 129.146.86.181 Zero hobbs 00 00 129.146.86.202 129.146.86.181 Zero inet11