Certain HP printers equipped with an Ethernet Network Interface Card (NIC) use the Bootstrap Protocol ( BOOTP) to acquire IP addresses and relative network information. BOOTP allows a diskless client to configure itself dynamically at the time of booting. This includes discovering its own IP address and boot information. Using BOOTP, a host can broadcast a request on the network and get information required from a BOOTP server. All IP addresses that a BOOTP server allocates are permanent.
By default, a router does not forward any broadcasts and hence the broadcasts from the BOOTP clients do not reach the BOOTP server if they are separated by a Cisco router. This document provides special precautions that may be necessary when the BOOTP server and the HP printers or BOOTP clients are separated by a router.
There are no specific prerequisites for this document.
This document is not restricted to specific software and hardware versions.
The information presented in this document was created from devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If you are working in a live network, ensure that you understand the potential impact of any command before using it.
For more information on document conventions, see the Cisco Technical Tips Conventions.
The client broadcasts (MAC and IP) a BOOTP request. If a Cisco router sees this, has a helper address configured, and is forwarding UDP port 67, it does the following:
The router places the IP address of the interface which received the broadcast in the "giaddr" field (meaning Gateway IP Address). This will be the address to which the BOOTP server will send the BOOTP response.
The router forwards this packet as an IP unicast to the IP helper address.
The BOOTP server gets the packet, finds the client's MAC address in its tables, and sends a reply with the client's IP address and boot file information.
The reply is unicast directly to the Cisco router's IP address (giaddr).
When the router receives the BOOTP response (UDP port 68), it retrieves the original client's MAC address and IP address from the data portion of the packet and sends the packet as a MAC and IP unicast out whichever interface is directly connected to the client's IP subnet (unless the "broadcast reply" bit was set by the client; in that case, it is a MAC-level broadcast).
Some protocol analyzers do not understand the function of a gateway. The bit that indicates that a gateway (router) is involved causes the packet to be flagged as an invalid packet when it is really valid.
The IP address assigned by the BOOTP server might not be correct, especially if the client has been moved. In that case, it may be sent out the wrong interface, or dropped if the target subnet is not directly connected to that router (the most common problem).
Only the first router encountered acts as a gateway. Between the gateway and BOOTP server, the packets are routed normally.
There are a few other options mentioned in RFC 1532
Make sure of the following:
The helper-address is set to point at the correct BOOTP server. Use the ip helper-address interface configuration command on the router interface receiving the client BOOTP broadcasts to forward them to the server.
The BOOTP server assigns a valid IP address.
The router is helping UDP 67 (on by default).
The debug udp gives very detailed information on what the router is doing.