A. General 1. What is DHCP? 2. What is DHCP's purpose? 3. Who Created It? How Was It Created? 4. Can DHCP work with Appletalk or IPX? 5. How is it different than BOOTP or RARP? 6. How is it different than VLANs? 7. What protocol and port does DHCP use? 8. What is an IP address? 9. What is a MAC address? 10. What is a DHCP lease? 11. What is a Client ID? 12. Why shouldn't clients assign IP numbers without the use of a server? 13. Can DHCP support statically defined addresses? 14. How does DHCP and BOOTP handle other subnets? 15. Can a BOOTP client boot from a DHCP server? 16. Can a DHCP client boot from a BOOTP server? 17. Is a DHCP server "supposed to" be able to support a BOOTP client? 18. Is a DHCP client "supposed to" be able to use a BOOTP server? 19. Can a DHCP client or server make a DNS server update the client's DNS entry to
match the client's dynamically assigned address?

20. Can a DHCP server back up another DHCP server? 21. When will the server to server protocol be defined? 22. Is there a DHCP mailing list? 23. In a subnetted environment, how does the DHCP server discover what subnet a
request has come from? on subnets other than the primary one? 25. If a physical LAN has more than one logical subnet, how can different groups of clients be allocated addresses on different subnets? 26. Where is DHCP defined? 27. What other sources of information are available? 28. Can DHCP support remote access? 29. Can a client have a home address and still float? 30. How can I relay DHCP if my router does not support it? 31. How do I migrate my site from BOOTP to DHCP? 32. Can you limit which MAC addresses are allowed to roam? 33. Is there an SNMP MIB for DHCP? 34. What is DHCP Spoofing? 35. How long should a lease be? 36. How can I control which clients get leases from my server? 37. How can I prevent unauthorized laptops from using a network that uses DHCP for dynamic addressing? 38. What are the Gotcha's? Info on Implementations 1. What features or restrictions can a DHCP server have? 2. What freeware DHCP servers are available? 3. What commercial DHCP servers are available?

24. If a single LAN has more than one subnet number, how can addresses be served


4. What freeware DHCP clients are available? 5. Which vendors of client software currently support DHCP? 6. What are the DHCP plans of major client-software vendors? 7. What Routers forward DHCP requests? 8. What Routers include DHCP servers? 9. What Routers use DHCP to configure their IP addresses? 10. What Servers forward DHCP requests? 11. Which implementations support or require the broadcast flag? 12. What servers support secondary subnet numbers? 13. What servers support RFC-based dynamic DNS update? 14. How can I run Windows 95 without a DHCP server? 15. Do any servers limit the MAC addresses that may roam? 16. What analyzers decode DHCP? 17. What administration tools administer DHCP configurations? 18. How do I make a client give up its lease? 19. What are the Gotcha's specific to various implementations?
Answers A. General 1. What is DHCP? DHCP stands for "Dynamic Host Configuration Protocol". 2. What is DHCP's purpose? DHCP's purpose is to enable individual computers on an IP network to extract their configurations from a server (the 'DHCP server') or servers, in particular, servers that have no exact information about the individual computers until they request the information. The overall purpose of this is to reduce the work necessary to administer a large IP network. The most significant piece of information distributed in this manner is the IP address. 3. Can DHCP work with AppleTalk or IPX? No, it is too tied to IP. Furthermore, they don't need it since they have always had automated mechanisms for assigning their own network addresses. 4. Who Created It? How Was It Created? DHCP was created by the Dynamic Host Configuration Working Group of the Internet Engineering Task Force (IETF; a volunteer organization which defines protocols for use on the Internet). As such, it's definition is recorded in an Internet RFC and the Internet Activities Board (IAB) is asserting its status as to Internet Standardization. As of this writing (June 1998), DHCP is an Internet Draft Standard Protocol and is Elective. BOOTP is an Internet Draft Standard Protocol and is recommended. For more information on Internet standardization, see RFC2300 (May 1998) 5. How is it different than BOOTP or RARP?

g. VLAN-capable LAN equipment with dynamic VLAN assignment allows you to configure things so a client computer can be plugged into any port and have the same IP number (as well as name) and be on the same subnet. or it makes the determination from the source IP address of the IP packets that the client computer sends. How is it different than VLANs? DHCP and VLANs. VLANs represent a more revolutionary change to a LAN than DHCP. A DHCP server and forwarding agents can allow you to set things up so that you can unplug a client computer from one network or subnet and plug it into another and have it come alive immediately. DHCP dynamic reconfiguration requires a DHCP server. 6. which precludes the use of network to get the configuration information from a DHCP or BOOTP server.    There is an issue with trying to use DHCP (or BOOTP) and VLANs at the same time. VLANs are generally aimed at allowing you to set up subnets on some basis other than geographical. it having been reconfigured automatically. Doing so assumes the client computer is already configured. instead of putting everyone in one office on the same subnet. DHCP and BOOTP are designed so they can be routed. e. In conjunction to Dynamic DNS. While they have a goal in common (easing moves of networked computers). The VLAN-capable network either has its own configuration that lists which MAC addresses are to belong to each VLAN. with the scheme by which the VLAN-capable network determines the client's VLAN based upon the client computer's source IP address. Additionally. but standards are being developed. DHCP can configure a new client computer for you while a VLAN-capable network can't. forwarding agent in each router. and DHCP capability in each client's TCP/IP support. which is one of the protocol parameters typically passed to the client system by DHCP or BOOTP. . The main difference is that BOOTP was designed for manual pre-configuration of the host information in a server database. which are very different in concept. RARP is a protocol used by Sun and other vendors that allows a computer to find out its own IP number. To this point VLAN support is proprietary with no vendor interoperability. putting each person on a subnet that has access to the servers that that person requires. are sometimes cited as different solutions to the same problem. supporting the same VLAN scheme. RARP doesn't support other parameters and using it. or on separate networks. DHCP is generally aimed at giving "easy moves" capability to networks that are divided into subnets on a geographical basis. in particular. while DHCP allows for dynamic allocation of network addresses and configurations to newly attached hosts.DHCP is based on BOOTP and maintains some backward compatibility. it could automatically be given its same name in its new place. DHCP allows for recovery and reallocation of network addresses through a leasing mechanism. a server can only serve a single LAN. Some differences in the two approaches:  DHCP handles changes by reconfiguring the client while a VLAN-capable network handles it by reconfiguring the network port the client is moved to. The analogous capability in VLANs requires that all hubs throughout the network be VLAN-capable.

7. i. 0:80:0:2:20:ef) which uniquely identifes a computer that has an Ethernet interface. 11. The IP address is used by the Internet to direct data to your computer.e.1. What protocol and port does DHCP use? DHCP. and you must be sure the DHCP server will accept it. e. . like BOOTP runs over UDP. 0080002012ef. i.3 or 84. In DHCP's typical use. What is a MAC address? A MAC address (also called an Ethernet address or an IEEE MAC address) is a number (typically written as twelve hexadecimal digits. Some DHCP implementations have a setup option to specify the client ID you want.1.111) which uniquely identifies a computer that is making use of the Internet. in order for DHCP to function. Appletalk is designed around this idea. Why shouldn't clients assign IP numbers without the use of a server? It is theoretically possible to develop software for client-machines that finds an unused address by picking them out of the blue and broadcasting a request of all the other client machines to see if they are using them. 9. it includes no indication of where your computer is located. By default. 10.g. 8. What is a Client ID? What is termed the Client ID for the purposes of the DHCP protocol is whatever is used by the protocol to identify the client computer. this method of IP address assignment has disadvantages. However.e. 107. What is an IP address? An IP address (also called an IP number) is a number (typically written as four numbers separated by periods. you must be certain that no other client is using the client ID you choose. or as six hexadecimal numbers separated by periods or colons. In any case. Unlike the IP number.4. A computer that needs a permanently-assigned IP number might be turned off and lose its number to a machine coming up. One alternative to the MAC address is simply a character string of your choice. A typical server allows its administrator to set the lease time. the data your web browser retrieves and displays when you surf the net. utilizing ports 67 and 68. One task of DHCP is to assist in the problem of getting a functional and unique IP number into the hands of the computers that make use of the Internet. 12. This has problems both for finding services and for security. 0 through 9 and A through F.2. It is analogous to your telephone number in that the telephone number is used by the telephone network to direct calls to you. but the DHCP protocol allows other options. and Apple's MacTCP can be configured to do this for IP. DHCP implementations typically employ the client's MAC address for this purpose. the server uses a requesting computer's MAC address to uniquely identify it. What is a DHCP lease? A DHCP lease is the amount of time that the DHCP server grants to the DHCP client permission to use a particular IP address.

Can DHCP support statically defined addresses? Yes. 2. this statement is one in a list of "general design goals for DHCP". a feature of some routers known as "BOOTP forwarding" to forward DHCP or BOOTP requests to a server on another subnet and to forward the replies back to the client. Typically you have to enable it on the interface to the subnet to be served and have to configure it with the IP address of the DHCP or BOOTP server. Can a BOOTP client boot from a DHCP server? Only if the DHCP server is specifically written to also handle BOOTP queries. This can lead both to hidden configuration errors and to difficulty in changing the range. It would presumably treat a BOOTP reply as an unending lease on the IP address. How does DHCP and BOOTP handle multiple subnets? For the situations where there is more than one LAN. 4. the TCP/IP stack included with Windows 95 does not have this capability. First of all. i. Is a DHCP server "supposed to" be able to support a BOOTP client? The RFC on such interoperability (1534) is clear: "In summary. It is not in a list of requirements for DHCP servers." (section 2). On a Cisco router. A source of confusion on this point is the following statement in section 1. they start malfunctioning. Can a DHCP client boot from a BOOTP server? Only if the DHCP client were specifically written to make use of the answer from a BOOTP server. MAY support BOOTP clients." However. The RFC refers to this as manual allocation. what the designers of the DHCP protocol set as their own goals. The part of such a router (or server acting as a router) that does this is called a "BOOTP forwarding agent". When the network comes back. During this time. At least there is nothing in the protocol to preclude this and one expects it to be a feature of any DHCP server. Secondly. the address is known as the "UDP Helper Address". however useful. you can set up a seperate server on each subnet. In particular. two different client-machines might end up claiming the same IP number. 6. there are two ways. is left as an option. If such dynamic assignment is to be confined to ranges of IP addresses.e. 7. then the ranges are configured in each desktop machine rather than being centrally administered.A network might be temporarily divided into two non-communicating networks while a network component is not functioning.. 5. 3. a DHCP server: . Is a DHCP client "supposed to" be able to use a BOOTP server? . This is really a server matter and the client should work either way. The word "MAY" indicates such support.5 of RFC 1541: "DHCP must provide service to existing BOOTP clients. Another problem with the use of such ranges is keeping it easy to move a computer from one subnet to another. each with its own subnet number..

Using this requires a DNS server that supports this feature and a DHCP server that makes use of it. If each has a dynamic pool accessible to the same Server to server protocol dhcp-dns@bucknell. Is there a DHCP mailing list? There are several: List Purpose ---------dhcp-v4@bucknell.bucknell. however useful. Can a DHCP client or server make a DNS server update the client's DNS entry to match the client's dynamically assigned address? RFCs 2136 and 2137 indicate a way in which DNS entries can be updated dynamically. However. In the mean time. 11. any client with a lease from it will not be able to renew their lease with the other server. In a subnetted General discussion: a good list for server DHCP bakeoffs dhcp-impl@bucknell. Archives for the dhcp-v4 list (which used to be called the host-conf list) are stored at ftp://ftp. there are DNS and DHCP servers that accomplish this through proprietary means. one of those clients can lease an address from the other server. 10. Such communication is the purpose of the "server to server protocol" (see next question).edu/pub/dhcp/. without communication between the two servers to share their information on current leases. The RFCs are very recent (as of 5/97) and implementations are few. When will the server to server protocol be defined? The DHC WG of the IETF is actively investigating the issues in inter-server communication. It is possible that some server vendors have addressed this issue with their own proprietary server-to-server communication. The protocol should be defined "soon".The RFC on such interoperability (1534) is clear: "A DHCP client MAY use a reply from a BOOTP server if the configuration returned from the BOOTP server is acceptable to the DHCP client. which can be used to subscribe and sign off. DNS-DHCP issues dhcp-v6@bucknell. Can a DHCP server back up another DHCP server? You can have two or more servers handing out leases for different addresses. The word "MAY" indicates such support. is left as an option." (section 3). then even if one server is DHCP for IPv6 The lists are run by listserv@bucknell. how does the DHCP server discover what subnet a request has come from? . 8. 9. when one server is Implementations dhcp-serve@bucknell.

In this case. 15. If a physical LAN has more than one logical subnet.DHCP client messages are sent to off-net servers by DHCP relay agents. This is sometimes called doing DHCP by proxy for the client. Note: a DHCP relay agent is the same thing as a BOOTP relay agent. A feature of DHCP under development (DHCPinform) is a method by which a DHCP server can supply parameters to a client that already has an IP number. and technically speaking. Such a communications server may support the use of DHCP to acquire the IP addresses it gives out. 16. A DHCP feature designed for this is the user class option. the client software must allow the user class option to be preconfigured and the server software must support its use to control which pool a client's address is allocated from. A site may find it necessary to support addresses on more than one subnet number associated with a single interface. To do this. 14. I know that Windows NT's remote access support does this. It is possible that a particular server-implementation can handle some of these cases. Dynamic allocation supported on secondary subnet numbers on a LAN which is handled through a DHCP/BOOTP Relay. The other two cases are the same capabilities during manual allocation. Where is DHCP defined? In Internet RFCs. how can different groups of clients be allocated addresses on different subnets? One way to do this is to preconfigure each client with information about what group it belongs to. the others as secondary. The DHCP relay agent records the subnet from which the message was received in the DHCP message header for use by the DHCP server. the latter phrase is correct. Typically. If a single LAN has more than one subnet number. one subnet is designated as primary. but not all of them. 13. . Can DHCP support remote access? PPP has its own non-DHCP way in which communications servers can hand clients an IP address called IPCP (IP Control Protocol) but doesn't have the same flexibility as DHCP or BOOTP in handing out other parameters. Here are four cases a server might have to handle: Dynamic allocation supported on secondary subnet numbers on the LAN to which the server is attached. See section below listing the capabilities of some servers. how can addresses be served on subnets other than the primary one? A single LAN might have more than one subnet number applicable to the same set of ports (broadcast domain). which are often a part of an IP router. DHCP's scheme for handling this is that the server has to be configured with the necessary information and has to support such configuration & allocation. the DHCP/BOOTP Relay sends the server a gateway address associated with the primary subnet and the server must know what to do with it.

Run both a DHCP and a BOOTP server. Thus it is left to the server implementation to support such a feature. one popular BOOTP server. 20.. turn off DHCP and configure them statically: not a good solution. Handle the non-BOOTP clients specially. 17. The answer depends a lot on what BOOTP server you are using and how you are maintaining it. like communications servers supporting PPP. However. then get the rest of its parameters using this feature of DHCP. but will offer a little discussion. Can a client have a home address and still float? There is nothing in the protocol to keep a client that already has a leased or permanent IP number from getting a(nother) lease on a temporary basis on another subnet (i. it makes use of a feature which may or may not be supported by the DHCP server: the ability of the server to use something other than the MAC address to identify the client.e. but occasionally is plugged in in a conference room or class room). It would be good if I could find out the gotcha's of such a setup. For example. e. such communications servers could also support the use of DHCP to acquire the IP addressees to give out. Microsoft has software to make Windows NT do this. Can you limit which MAC addresses are allowed to roam? . client ID type 0 means an ASCII string. How can I relay DHCP if my router does not support it? A server on a net(subnet) can relay DHCP or BOOTP for that net. then the demand to support clients that support DHCP but not BOOTP presents you with problems. a PPP client could get its IP number using IPCP. such as a computer attached through SLIP or PPP.g. the CMU server. The DHCP protocol is capable of allocating an IP address to a device without an IEEE-style MAC address. but need to acquire more than one IP address. 18. SLIP has no standard way in which a server can hand a client an IP address. Client ID type 1 means you're using MAC addresses. but many communications servers support non-standard ways of doing this that can be utilized by scripts. In general. Communications servers that acquire IP numbers for their clients via DHCP run into the same roadblock in that they have just one MAC address.With this. If you depend heavily on BOOTP server software to support your existing clients. I've heard that Microsoft's NT-based server can do it. for that laptop which is almost always in one office. How do I migrate my site from BOOTP to DHCP? I don't have an answer for this. Thus. has been patched so that it will answer DHCP queries. etc. 19. but to do so. you are faced with the choice: Find a server that is administered like your BOOTP server only that also serves DHCP. One way such a communications server can get around this problem is through the use of a set of unique pseudo-MAC addresses for the purposes of its communications with the DHCP server. Another way (used by Shiva) is to use a different "client ID type" for your hardware address. but certainly one that can be done to handle the first few non-BOOTP clients at your site. Adapt your site's administration to one of the available DHCP/BOOTP servers.

See above. . but no lease will expire for any computer turned on at the time that the outage commences. this is avoided. Naturally. new users cannot get new leases. with the intention of giving it an IP number during its connection process. there may be a point beyond which you will want to watch the load. In this situation. and service arrangements for your DHCP server. During a 2day outage. you may be in the situation of having more users than addresses on some particular IP number range. you might see an unusually high load it returns. Are you supporting mobile users? If so. In general. 2 hours. a 2 day lease is not practical. Is there an SNMP MIB for DHCP? There is no standard MIB. a lease of at least 2 hours is long enough that the load of even thousands of clients is negligible. Some relevant questions in deciding on a lease time: Do you have more users than addresses? If so. A very relevant factor is that the client starts trying to renew the lease when it is halfway through: thus. How many clients do you have and how fast are the communications lines over which the DHCP packets will be run? The shorter the lease. Naturally. Note that if you have a communication line down for a long enough time for the leases to expire. if you know you will have 20 users using 10 addresses in within a day. the client which has lost access to its DHCP server has 2 days from when it first tries to renew the lease until the lease expires and the client must stop using the network. I've heard examples cited of 15 minutes. there are degrees. creating one is on the list of possible activities of the DHCP working group. for example. that suggest a hour lease at minimum. 23. your site's usage patterns. See section below on servers that implement this. Most administrators will say it depends upon your goals. and 2 days. 22. 21. For shorter leases. How long should a lease be? I've asked sites about this and have heard answers ranging from 15 minutes to a year. If the lease-time is at least double the communication line outage. the higher the server and network load. with a 4 day lease. It is possible that some servers implement private MIBs. Do you have a typical or minimum amount of time that you are trying to support? If your typical user is on for an hour at minimum. A DHCP server could be designed to implement such a requirement. What is DHCP Spoofing? Ascend Pipeline ISDN routers (which attach Ethernets to ISDN lines) incorporate a feature that Ascend calls "DHCP spoofing" which is essentially a tiny server implementation that hands an IP address to a connecting Windows 95 computer. presumably as an option to the server administrator. Another factor is that the longer the lease the longer time it takes for client configuration changes controlled by DHCP to propogate. you want to keep the lease time short so people don't end up sitting on leases.Sites may choose to require central pre-configuration for all computers that will be able to acquire a dynamic address.

if students might have their computers turned off for as long as three weeks between semesters. Some examples of lease-times that sites have used & their rationals: 15 minutes To keep the maximum number of addresses free for distribution in cases where there will be more users than addresses. For example. other sites want to use DHCP's ability to automate distribution of relatively permanent addresses. 6 days Long enough that a weekend server outage that gets fixed on Monday will not result in leases terminating. then they are looking for an IP number that won't be changing. then running clients who already have leases will not lose them. 4 months Long enough that students can keep their IP address over the summer hiatus. Perhaps you can find DHCP server software that allows you to list which MAC addresses the server will accept. e. The relevant time is the maximum amount of time that you wish to allow the user to keep their machine turned off yet keep their address. While some sites would manually allocate any address that people expected to remain stable. then you know that it will only take one night for the users' lease to expire. then a six hour lease will handle such an outage. For example.g. in a university. You can use the user class option assuming your clients and server support it: it will require you to configure each of your clients with a user  . thus many sites use it. How can I control which clients get leases from my server? There is no ideal answer: you have to give something up or do some extra work. If you might have a server go down on Friday right after work and may need all Monday's work-day to fix it. if your server-coverage is likely to recover the server within three hours at any time that clients are using their addresses. I believe this rational is workable if the summer hiatus is no more than 2 months. Do you have users who want to tell other users about their IP number? If your users are setting up their own web servers and telling people how to get to them either by telling people the IP number or through a permanent DNS entry.    You can put all your clients on a subnet of your own along with your own DHCP server. then they are likely to be gone. and you wish them to keep their IP address. One year If a user has not used their address in six months. DHCP servers that support roaming machines may be adapted to such use.How long would it take to bring back up the DHCP server. Allows administrator to recover those addresses after someone has moved on. 12 hours If you need to take back an address. 6 hours Long enough to allow the DHCP server to be fixed. and to what extent can your users live without it? If the lease time is at least double the server outage. 3 days This is apparently Microsoft's default. You can use manual allocation. then your maximum outage time is 3 days and a 6-day lease will handle it. then a lease of six weeks or longer would suffice. If you have a good idea of your longest likely server outage. you can avoid such problems. 24. 3 hours.

Some of the virtual LAN schemes. possibly intermittent of one or the other is sometimes turned off. DHCP can impose no restrictions on what IP address can use a particular port nor control the IP address used by any client.e. but it doesn't say they "must". Note that BOOTP has the same vulnerabilities. 3. The only way the DHCP server can allocate addresses on one of the LAN's other network (or subnet) numbers is if the DHCP server is specifically written to have a feature to handle such cases..class name.   . in routers) handled DHCP just fine except for the need for this feature. Routers are sometimes configured so that one LAN on one port has multiple network (or subnet) numbers. DHCP does not prevent other clients from using the addresses it is set to hand out nor can it distinguish between a computer's permanent MAC address and one set by the computer's user. relay agents and servers had to implement it. When the router is relaying requests from such a LAN to the DHCP server.g. The definition of DHCP states that implementations "should" honor this flag. don't work when using DHCP to dynamically assign addresses.  The "broadcast flag": DHCP includes a way in which client implementations unable to receive a packet with a specific IP address can ask the server or relay agent to use the broadcast IP address in the replies (a "flag" set by the client in the requests). How can I prevent unauthorized laptops from using a network that uses DHCP for dynamic addressing? This would have to be done using a mechanism other than DHCP. thus they announced new versions stated to handle DHCP. One scenario is a client that loads its OS over the network via tftp being directed to a different file (possibly on a different server). thus allowing the perpetrator to take over the client. and feeds the client its own version of other booting parameters. Given that boot parameters are often made to control many different things about the computers' operation and communication. i. 2. many other scenarios are just as serious. DHCP servers and relay agents use their knowledge of what LAN the client-station is on to select the subnet number for the clientstation's new IP address whereas such switches use the subnet number sent by the client-station to decide which (virtual) LAN to put the station on. which meant in practical terms. Net result is problems using the nodes. those that use the packet's IP number to decide which "virtual LAN" a client-computer is on for the purposes of TCP/IP. A number of BOOTP-relay-agent implementations (e. and it has a configuration describing the situation.  The immediate problem would be a server passing out numbers already belonging to some computer yielding the potential for two or more "innocent bystander" nodes ending up with the same IP number.  A lot of problems are possible if a renegade server manages to get a client to accept its lease offering. What are the Gotcha's?  A malicious user could make trouble by putting up an unofficial DHCP server. Some Microsoft TCP/IP implementations used this flag. You still depend upon the other clients to respect your wishes. it must pass along as IP number that is associated with one of the network (or subnet) numbers.

but does not provide that kind of support. Furthermore. the IP numbers have to be stable. some sites try to keep the continued use of dynamically allocatable IP numbers to a minimum. But in a very mobile environment. Dynamic configuration of the IP numbers undercuts such methods. In particular. (Note: one workaround is to fool with the client computer's clock). The client first connects to the home site and receives an address from one of the two serves. He/she then travels to the remote site (without releasing the lease at the home site) and attempts to use the acquired address. the numbers. and even for identifying resources. mobile clients) can end up with redundant leases. there is nothing to stop someone from implementing a server that uses the DHCP protocol. the maintainer of a BOOTP server-implementation might find it helpful to enhance their BOOTP server to allow DHCP clients that cannot speak "BOOTP" to retrieve statically defined addresses via DHCP. B. if the DNS's names are going to identify IP numbers. An easy mistake to make in setting up a DHCP server is to fail to set all the necessary global parameters. or individuals run DHCP servers with their own small address pools on LANs shared by other departments. it is possible for these transient clients to consume more than their fair share of addresses. Examples are: for security purposes. offices. or functions working when the client is set up manually. Consider a home site with two DHCP servers. or merely waiting a certain amount of time for the leases to be renewed. With two or more servers serving a LAN. What features or restrictions can a DHCP server have? While the DHCP server protocol is designed to support dynamic management of IP addresses. offices. It is NAK'ed but now the client broadcasts a DHCPDISCOVER to get a address. it is possible for the client to acquire an address on the other server and therefore have two leases within the site. consequently. clients that are moved around (e. The server that holds the previous lease will offer the address back to the client but there is no guarantee that the client will accept that address. These are independent "features": a particular server can offer or not offer any of them: .     The knowledge that a particular IP number is associated with a particular node is often used for various functions. The following terminology has become common to describe three kinds of IP address allocation/management. and a mobile client. Long leases can be disadvantageous in cases where you need to change a configuration parameter or withdraw an address from use. For this reason. a remote site with DHCP services. The client then returns home and tries to use the address from the remote site. If departments. It is of course NAK'ed and the client receives an address appropriate for the remote site. for network management. This can result in some functions working while others are not. they can find that their addresses are being used by anyone on the LAN that happens to set their IP configuration to use DHCP. Info on Implementations 4. The problem can be solved by using only one server per subnet/site and can be mitigated by short lease lengths. but failing to work when set to use DHCP. or individuals. The length of the lease can mean the difference between having to go to every affected client and rebooting it.g.

 Ability to import files listing manually allocated addresses (as opposed to a system which requires you to type the entire configuration into its own . e. Ability to associate two or more dynamic address pools on separate IP networks (or subnets) with a single gateway address. Interaction with some other type of name server.g. Dynamic allocation: like automatic allocation except that the server will track leases and give IP addresses whose lease has expired to other DHCP clients. whose use depends upon the gateway address through which the request is relayed. e. Ability to define the pool/pools of addresses that can be allocated dynamically.g. Other features which a DHCP server may or may not have:        Support for BOOTP clients. This is pretty obvious. NIS. once associated with a MAC address. Ability to limit what MAC addresses will be served with dynamic addresses. Administrator-settable lease times on manually allocated addresses. but to the way that it is administered. Note: this is a feature that might be used to assign different client-groups on the same physical LAN to different logical subnets. Note that there are a number of interactions that one might support and that a standard set & method is in the works. which it gives out to clients. Support for the broadcast bit. Use of PING (ICMP Echo Request) to check an address prior to dynamically allocating it. though someone might have a server that forces the pool to be a whole subnet or network. Automatic allocation: the server's administrator creates a configuration for the server that includes only IP addresses.   Manual allocation: the server's administrator creates a configuration for the server that includes the MAC address and IP address of each DHCP client that will be able to get an address: functionally equivalent to BOOTP though the protocol is incompatible. Allows administrator to configure additional DHCP option-types. Server grace period on lease times. is permanently associated with it until the server's administrator intervenes.           Following are some features related not to the functions that the server is capable of carrying out. Allows manual allocation of two or more alternative IP numbers to a single MAC address. Ability to configure groups of clients based upon client-supplied user and/or vendor class. Administrator-settable lease times. Ideally. a router that is acting as a BOOTP relay for an interface which has addresses for more than one IP network or subnet. An IP address. Administrator-settable T1/T2 lengths. Note that there are a number of interactions that one might support and that a standard set & method is in the works. This is the basic support for "secondary nets". Ability to force client(s) to get a new address rather than renew. Interaction with another DHCP server. the server does not force such a pool to consist of contiguous IP addresses. Interaction with a DNS server.

.e. A shrink wrap version of Open Transport is planned. It is likely that many other routers also support BOOTP forwarding. 1996) and supports any 68030. What Routers forward DHCP requests? (This is not necessarily a complete list). What Routers include DHCP servers? DHCP requires disk storage (or some other form of reliable non-volatile storage). Graphical administration. those of Cisco. . modify parameters. Open Transport. What are the DHCP plans of major client-software vendors? Apple MacOS MacTCP's successor. I heard a rumor that BOOTP support will be added. But there are a number of types of servers that can be configured to route and serve DHCP. Even better is the ability to make the server do this via a command that can be used in a script. that apply to all entries. Maintenance of a lease audit trail. these routers probably already had BOOTP forwarding. due in June 1996.. IBM OS/2 Warp supports it. but lacked the support for the BOOTP broadcast flag (see "broadcast flag" under What are the Gotcha's? above).0 (which updates MacOS to version 7. Open Transport 1.g. rdist. Central administration of multiple servers.      input utility). Ability to make global modifications to parameters. rsh. released March 11. This includes Novell servers and computers running Unix. Ability to make changes while the server is running and leases are being tracked. etc.3. Microsoft Windows95 supports it and does not support BOOTP. routing between a LAN and a leased line as well as doing other functions to allow computers on the LAN to reach the Internet (or corporate intranet as the case may be). Bay. add or take away addressees from a pool.1. or ability to make modifications to groups of ports or pools. the native stack will be used so that DHCP is supported. i. i. 6. Client32 for DOS/Windows. Novell LAN Workplace for DOS For supporting DOS/Windows 3. /etc/bootptab as used by the CMU BOOTP daemon. e.e. Fore) don't an will probably never will have a DHCP server function. Note that in general. 68040. One example is Farallon's Netopia Internet Router mentioned above under commercial servers. will provide the TCP/IP stack functions and will support DHCP and BOOTP. The large-scale routers (i. i.e. supports DHCP. making the task of DHCP service more compatible with servers than with dedicated routers.1 ships with System 7. Ability to import data in the format of legacy configurations. 5.5. There are also units designed to handle two or more aspects of your Internet connection. For Windows 95 and Windows NT.g.5 Update 2. a log of the leases granted.e. e. or PowerPC Macintosh. 7.

51 Service Pack 3 (and 4) includes a BOOTP (& DHCP) relay agent as part of "Multi Protocol Router". Version 3. Also. 11. it is important to know its exact configuration rather than leaving that to be automatically done. Which implementations support or require the broadcast flag? The broadcast flag is an optional element of sets the broadcast flag.1. there are remote access Novell software. You can get this support in NetWare 3.11a sets  For Novell servers. 3.  Clients Microsoft Windows NT DHCP client support added with version Novell software. the DHCP server that comes with NetWare/IP 2.11B doesn't.  Warp Server Version 4. tcp/ip-32 for Microsoft Windows for Workgroups (WFW) Version 3.exe and on Netwire. Two other such NLMs (possibly old versions of the same) that are available online:  ftp://netlab2.51). thus DHCP requests.8. The "BOOTPFWD NLM" is included in NetWare 4. The reason is that in maintaining and troubleshooting routers. there are NLMs that forward BOOTP requests. 1991)  Also for Novell servers. through its dhcprd daemon.2 can be configured to be just a BOOTP/DHCP forwarding agent. The exception is in the remote access support: it sets the flag when it uses DHCP to acquire addresses to hand out to its PPP clients.12 also by applying the TCPN01. It may be possible to configure some types of more general-purpose computers or servers to get their addresses from DHCP and to act as 1993)  ftp://netlab2.11 and 3. What Servers forward DHCP requests?  Windows NT's 3. What servers support secondary subnet numbers? (These are not complete lists) The following servers can handle dynamic allocation on secondary subnet numbers:    IPTrack version 2. 10. What Routers use DHCP to configure their IP addresses? The DHCP RFC specifically says that DHCP is not intended for use in configuring routers.51 and later no longer set it.usu. which use DHCP to acquire addresses to hand out to their clients. and also that you do not want your router's operation to depend upon the working of yet another server. but version 3. but a client which sets it works only with a server or relay that supports it.  AIX.EXE patch which is located at ftp://ftp. 9. Microsoft Windows 95 Does not set the broadcast flag. often which are usually not true routers.0 ISC JOIN .

These products might support one or both of these uses. Switch from your current BOOTP server to one that supports both BOOTP and DHCP. Some choices:     Use no server at all for the Windows 95 clients: set the addresses in each client's setup. http://www-leland. The 'billgPC' program uses BOOTP (instead of DHCP) to configure Windows 95's native IP stack: http://www. particularly by sites for which changing from BOOTP represents a lot of work.         SGI's DHCP Server under IRIX 6.html . but it has been asked a lot.0 ISC JOIN QDHCP The following cannot support secondary subnet numbers:  Microsoft Windows NT 3.51 and 4.0 (since service pack 2) Sonic QDHCP ipLease IBM Warp Server Version 4 IBM AIX The following can serve manually allocated addresses on secondary subnet numbers:     IPTrack version 2. How can I run Windows 95 without a DHCP server? Not really a DHCP question. To make use of this ability. Another use might be to associate DNS names with MAC addresses.  American Internet Corp Net Registrar  QDHCP  IBM's Warp Server (version 4 and after)  IBM's AIX server (version 4. A likely use is to create temporary DNS records that associate a fully qualified DNS name derived from the client's netbios name with the client's leased IP number.panix. What servers support RFC-based dynamic DNS update? The following DHCP servers include the ability to make use of the RFC 2136/2137 DNS feature to make dynamic updates to the DNS.0 (through RC1)  WIDE  Sonic DHCP Server (note: it also works with Windows NT). you need a DNS server that supports this feature.stanford. A Document that addresses this question is the Windows 95tm Networking FAQ.1 and after) 13.2 Cisco (previously TGV) NetID Microsoft Windows NT 4. Install a non-Microsoft TCP/IP stack for Windows 95 that supports BOOTP.

00. once available through the following patch: File: Vdhcp.exe program can do it.3:  'When run from inetd.        .e. I've since been told that a newer version is 4. Naturally. new releases have solved the problems that have been identified with various DHCP implementations. ask to continue using the IP number.exe  There are a number of issues regarding the patched bootp servers. but the answer is of necessity specific to the clientimplementation. i.954.'  'Unless you set "dl" to some value in the bootptab file. vdhcpupd.  An extra server feature is required to handle the allocation of addresses on the secondary IP addresses associated with a router port. 15. 17. the winipcfg. While it works with Microsoft's own NTbased server. Do any servers limit the MAC addresses that may roam?  IBM's AIX and OS/2 WARP DHCP servers. These have been reported to re DD2.0 of Network General Corporation's Sniffer software. the DHCP lease time. What analyzers decode DHCP?  Release 5.985 bytes File Version Information: 4. Microsoft is rumored to have developed an updater named VDHCPUPD. 16. How do I make a client give up its lease? This is a general question. What are the Gotcha's specific to various implementations? In many cases.  For a Win95 client. and the problem went away when bootpd is run as a daemon.4..14. you could find such a server unusable. A specific complaint about Microsoft's Windows 95 dhcp client: it times out its requests much more quickly than the times specified by RFC1541 section 4.  One method mentioned is to temporarily change the clock on the client.exe and vdhcpupd. You may find out after the fact that you have such secondary addresses There have been servers that are inflexible as to the list of configuration parameters they were able to serve.00. I hate to cast wide suspicions.386 File Last Modified Date: 02/12/96 File Size: 27.  ISC. but I've heard occasional word on client DHCP implementations that do not implement the entire protocol.txt. I had problems with "Could not bind port" and DHCP request failure. one way to avoid the problem is to keep leases short enough that you are not obliged to do this. This is at least one feature of DHCP that is very hard to implement in some simpler systems. Among the circumstances that can turn this into a practical problem are the latencies due to relay agents and a server's use of ICMP echo to doublecheck the address. renewal time and prebinding time will be rubbish.951 It consists of 2 files.halcyon. Doing so requires that the software module be able to wake up again after a specified period of time and "renew the lease". I've also been told that the exe file is on the net at to patch this problem. I don't know why. If your client requires certain parameters. the problem prevents interoperation with some other DHCP servers under some conditions.

even when renewal requests have been turned down. Thus a server that uses ping to check to see that an IP number is unused before reassigning it may find that it is still in use.255.6. circa March 1996 has shown signs of needing to be shaken out to be more easily compiled outside of its development environment. which is their default. Open Transport 1.3. which impedes interoperability with some clients. I've heard reports that Windows 95. even if configured to do so. Pre 1. Early Microsoft DHCP client implementations required the broadcast bit. I have heard a vague complaints about the Microsoft implementations of DHCP: that it does not follow the standards." The reports suggest that Windows 95 implementations won't allow this statement to be assumed. but does not always exclude them. I can tell which addresses are not being used by the clients simply by checking the server to see which IP addresses have no outstanding leases. I've heard a report that some combinations of versions of Unix & the ISC server will transmit packets to the subnet broadcast address rather than the default broadcast address (255. causing some of the functions to fail. or at least some versions will use an address after the lease has expired under some circumstances. Report: Novell's NetwareIP 2. The very first announced release of Carnegie Mellon's server.255. Early Apple Open Transport implementations did not always fill out packets to BOOTP's 300-byte minimum. Windows 95 DHCP client answers pings from an IP address even after the the client's lease has expired.1 versions of Open Transport experienced interoperability problems with the Microsoft NT DHCP server.' One symptom you might see is Microsoft DHCP implementations using 5-minute leases. Current ones do not.255). Windows NT server v3.51 allows the administrator to specify addresses within its assignment range to be excluded. dhcp-3. which can be a showstopper if you need to use the class option to help decide what pool of addresses the client uses. .            which will cause occasional renewal problems. Some clients have no way to configure a class option.2 server refuses to hand out dynamic bootp assignments to hosts mentioned in the local /etc/hosts file. an IP administrator can safely make the following statement: "As long as all the clients are set to get their addresses through DHCP. thus BOOTP forwarding agents that follow the BOOTP RFC and discard such packets end up discarding such DHCP packets.1 fixes this. Other implementations may not run at all. I could use details. With properly behaving clients. Windows 95 DHCP client cannot handle a lease renewal offered by a different server.

2 Example in Cisco IOS Extended ACL 6 Technical details o 6.1 Example in ipfw firewall o 5. and IP addresses for DNS servers from a DHCP server.2 DHCP offers o 6. The assignment usually occurs when the DHCP configured machine boots up or regains connectivity to the network. subnet masks. This setting is periodically refreshed (it expires. Due to the backward-compatibility of DHCP. DHCP emerged as a standard protocol in October 1993.1 DHCP discovery o 6. . whose leases were given for infinite time and did not support options. The latest non-standard of the protocol. The DHCP server ensures that all IP addresses are unique. appeared in July 2003 as RFC 3315. and other parameters such as default router. meaning the client must obtain another assignment) with typical intervals ranging from one hour to several months. very few networks continue to use pure BOOTP. be set to infinite (never expire). As of 2006. subnet mask. RFC 2131 provides the latest ([dated March 1997]) DHCP definition. if desired.7 DHCP releasing o 6. no IP address is assigned to a second client while the first client's assignment is valid (its lease has not expired). default routers. The length of time the address is available to the device it was assigned to is called a lease. that is. describing DHCPv6 (DHCP in an IPv6 environment). Thus IP address pool management is done by the server and not by a human network administrator. The DHCP client sends out a query requesting a response from a DHCP server on the locally attached network.4 DHCP acknowledgement o 6. and is determined by the server. and can.Contents • • • • • 1 2 3 4 5 Introduction Overview Extent of DHCP usage IP address allocation DHCP and firewalls o 5.8 Client configuration parameters 7 See also 8 External links • • • [edit] Introduction DHCP is a protocol used by networked computers (clients) to obtain unique IP addresses.3 DHCP requests o 6. [edit] Overview The Dynamic Host Configuration Protocol (DHCP) automates the assignment of IP addresses. This protocol is used when computers are added to a network because these settings are necessary for the host to participate in the network.5 DHCP selection o 6. and other IP parameters. DHCP functionally became a successor to the older BOOTP protocol.6 DHCP information o 6.

the only method which provides dynamic re-use of IP addresses. dynamic allocation. A network administrator assigns a range of IP addresses to DHCP. which amounts to assigning semi-static IPs. but xDSL providers make extensive use of "infinite lease". it does not cross a router unless specifically configured to do so. and each client computer on the LAN has its TCP/IP software configured to request an IP address from the DHCP server when that client computer's network interface card starts up. automatic allocation. DHCP is a broadcast-based protocol.IP address pairs manually filled by the server administrator. As with other types of broadcast traffic. An alternative to a home router is to use a computer as a DHCP server. In the UK many broad-band ISP networks use DHCP. ISPs generally use DHCP to assign clients individual IP addresses. This eases the network installation procedure on the client computer side considerably. [edit] Extent of DHCP usage Most cable internet providers use DHCP to allocate IP addresses. Most home routers and firewalls are configured in the factory to be DHCP servers for a home network. Configuring firewall rules to accommodate access from machines who receive their IP addresses via DHCP is therefore more difficult because the remote IP address will vary from time to time. Network routers and often multilayer switches employ a DHCP relay agent. subnet mask. the DHCP server has three methods of allocating IP-addresses: • manual allocation. Users who desire this capability must configure their routers to pass DHCP traffic across UDP ports 67 and 68. Only requesting clients with a MAC address listed in this table get the IP address according to the table.The query is typically initiated immediately after booting up and before the client initiates any IP based communication with other hosts. in particular when workers make extensive use of laptops which link directly to the in-house network only occasionally . which relays DHCP "Discover" broadcasts from a LAN which does not include a DHCP server to a network which does have one. DNS server and default gateway information. [edit] IP address allocation Depending on implementation. One example of such a relay agent is the UDP Helper Address command employed by Cisco routers. The request-and-grant process uses a lease concept with a controllable time period. The assignment of the IP address usually expires after a predetermined period of time. Office networks also use DHCP. The DHCP server then replies to the client with its assigned IP address. where the DHCP server performs the allocation based on a table with MAC address . where the DHCP server permanently assigns to a requesting client a free IP-address from a range given by the administrator. many routers and other gateway devices provide DHCP support for networks running many computers being assigned private IP addresses. These devices may be sometimes configured to append information about port from which DHCP request originates (also known as option 82). Administrators must usually allow access to the entire remote DHCP subnet for a particular TCP/UDP port. at which point the DHCP client and server renegotiate a new IP address from the server's predefined pool of addresses. In addition. • • .

0. Multi-homed DHCP servers require special consideration and further complicate configuration.0 eq bootpc host 10. To allow DHCP. all client-sent packets have source port 68 and destination port Dhcpd operates on interface rl0 and assigns addresses from 192.0/24 68 to me 67 in recv rl0 pass udp from any 68 to 255. and IP lease acknowledgement.0.255 68 out xmit rl0 [edit] Example in Cisco IOS Extended ACL The following entries are valid on a Cisco 3560 switch with enabled DHCP service.255.192. 10.0. For example. the following rules for a server-side ipfirewall to allow DHCP traffic through.255.0/24 : pass udp from 0. network administrators need to allow several types of packets through the server-side firewall.255.0.129 eq bootps 20 permit udp 10.This decision remains transparent to clients.73. DHCP operations fall into four basic phases.255.255 Outgoing packets from dhcp-ip to dhcp-pool or 255.32.255. All DHCP packets travel as UDP datagrams.0.129 eq bootps 30 permit udp any eq bootpc host 255. . eq bootps [edit] Technical details DHCP uses the same two IANA assigned ports as BOOTP: 67/udp for the server side. IP lease selection.0.0. Anti-spoofing policy rules and tight inclusive firewalls often stop such packets.255. all server-sent packets have source port 67 and destination port 68. and 68/udp for the client side.255 67 in recv rl0 pass udp from me 67 to 192. The subnet is 10.73.168. a server-side firewall should allow the following types of packets: • • • Incoming packets from 0.255.0/24.0. on input.128 0.0 or dhcp-pool to dhcp-ip Incoming packets from any address to The ACL is applied to a routed interface.0. These phases are IP lease request.32.255. Specification of the DHCP client-server protocol describes several cases when packets must have the source address of 0x00000000 or the destination address of 0xffffffff. IP lease offer. They make use of the DNS update protocol established with RFC 2136.255 where dhcp-ip represents any address configured on a DHCP server host and dhcp-pool stands for the pool from which a DHCP server assigns addresses to clients [edit] Example in ipfw firewall To give an idea of how a configuration would look in production. eq bootpc host 10. 10 permit udp host 0. [edit] DHCP and firewalls Firewalls usually have to permit DHCP traffic explicitly.32.255. Some DHCP server implementations can update the DNS name associated with the client hosts to reflect the new IP address.129.73.

255.0 as its own IP address and 255. the lease duration. Any number of DHCP servers can respond to an IP lease request. If it does not.255. 192. This client-implementation creates a UDP packet with the broadcast destination of 255. it must tell all the other DHCP servers that it has accepted an offer. it uses 0.1. Again. they withdraw any offers that they might have made to the client. the client broadcasts a DHCPREQUEST message containing the IP address of the server that made the offer. Network administrators can configure a local router to forward DHCP packets to a DHCP server on a different subnet.255 or subnet broadcast address and also requests its last-known IP address (in the example below. The server acknowledges the request and sends the acknowledgement to the client.168. it checks to see if it currently has an IP address leased. [edit] DHCP requests Whenever a computer comes on line. Such a message consists of the client computer's Media Access Control (MAC) address (the hardware address built into the network card) and its NetBIOS name. specifies the IP address in the YIADDR field. This acknowledgement phase involves sending a DHCPACK packet to the client. it extends an IP lease offer.. followed by the IP address that the server is offering. The server determines the configuration.100 address that the server specified. Because the client computer does not know the address of a DHCP server. [edit] DHCP selection When the client PC receives an IP lease offer. This is done by reserving an IP address for the client and broadcasting a DHCPOFFER message across the network. and the IP address of the DHCP server making the offer. This message contains the client's MAC address. [edit] DHCP offers When a DHCP server receives an IP lease request from a client.168. it initiates the final phase of the configuration process. This packet includes the lease duration and any other configuration information that the client might have requested..255. Here the server.. but the client can only accept one offer per network interface card. 192.255. based on the client's hardware address as specified in the CHADDR field. They then return the address that they had reserved for the client back to the pool of valid addresses that they can offer to another computer.255 as the destination address. the TCP/IP configuration process is complete. When the other DHCP servers receive this message. In case the client has received multiple offers it specifies the server from which it has accepted the offer. the subnet mask. The client selects a configuration out of the DHCP "Offer" packets it has received and broadcasts it on the local subnet.168.1. [edit] DHCP acknowledgement When the DHCP server receives the DHCPREQUEST message from the client.0.0. Doing so allows the client to broadcast a DHCPDISCOVER message across the network.1. it requests a lease from a DHCP server.[edit] DHCP discovery The client broadcasts on the local physical subnet to find available servers. this client requests the 192. . At this point.100) although the server may ignore this optional parameter.1. The system as a whole expects the client to configure its network interface with the supplied options. To do this.

which are summarized here. or to repeat data for a particular application . browsers use DHCP Inform to obtain web proxy settings via WPAD. the protocol does not define the sending of DHCP Release as mandatory. As clients usually do not know when users may unplug them from the network.for example. [edit] DHCP releasing The client sends a request to the DHCP server to release the DHCP and the client unconfigures its IP address.[edit] DHCP information The client sends a request to the DHCP server: either to request more information than the server sent with the original DHCPACK. RFC 2132 defines the available DHCP options. . Such queries do not cause the DHCP server to refresh the IP expiry time in its database. [edit] Client configuration parameters A DHCP server can provide optional configuration parameters to the client.

Sign up to vote on this title
UsefulNot useful