Rarp Bootp and DHCP

The ARP and proxy ARP processes both occur after a host knows its IP address and subnet mask. RARP, BOOTP, and DHCP represent the evolution of protocols defined to help a host dynamically learn its IP address. All three protocols require the client host to send a broadcast to begin discovery, and all three rely on a server to hear the request and supply an IP address to the client. Figure 5-4 shows the basic processes with RARP and BOOTP.

Figure 5-4 RARP and BOOTP—Basic Processes

KEY POINT

0 RARP Broadcast 2 RARP Reply

RARP

Hannah

RARP Server

A Configuration

MAC: 0200.1111.1111

Hey Everybody! My MAC Address Is 0200.1111.1111. If You Are a RARP Server, Please Tell Me My IP Address!

A Configuration

MAC

IP

0200.1111.1111

10.1

.1.1

0200.1234.5678

10.1

.1.2

0200.5432.1111

10.1

.1.3

Your IP Address Is 10.1.1.1

Q BOOTP Broadcast (2) BOOTP Reply

Hannah

BOOTP

BOOTP Server

MAC: 0200.1111.1111

Configuration

MAC

IP

G ateway

0200.1111.1111

10.1

1 . 1

10.1.1.200

0200.1234.5678

10.1

.1 . 2

10.1.1.200

0200.5432.1111

10.1

.1 . 3

Hey Everybody! My MAC Address Is 0200.1111.1111. If You Are a BOOTP Server, Please Tell Me My IP Address!

10.1.1.200

Your IP Address Is 10.1.1.1

Yo ur Default Gateway Is 10.1.1.200

A RARP request is a host's attempt to find its own IP address. So RARP uses the same old ARP message, but the ARP request lists a MAC address target of its own MAC address and a target IP address of 0.0.0.0. A preconfigured RARP server, which must be on the same subnet as the client, receives the request and performs a table lookup in its configuration. If that target MAC address listed in the ARP request is configured on the RARP server, the RARP server sends an ARP reply, after entering the configured IP address in the Source IP address field.

KEY BOOTP was defined in part to improve IP address assignment features of RARP. BOOTP uses POINT a completely different set of messages, defined by RFC 951, with the commands encapsulated inside an IP and UDP header. With the correct router configuration, a router can forward the BOOTP packets to other subnets—allowing the deployment of a centrally located BOOTP server. Also, BOOTP supports the assignment of many other tidbits of information, including the subnet mask, default gateway, DNS addresses, and its namesake, the IP address of a boot (or image)

server. However, BOOTP does not solve the configuration burden of RARP, still requiring that the server be preconfigured with the MAC addresses and IP addresses of each client.

DHCP represents the next step in the evolution of dynamic IP address assignment. Building on the format of BOOTP protocols, DHCP focuses on dynamically assigning a variety of information and provides flexible messaging to allow for future changes, without requiring predefinition of MAC addresses for each client. DHCP also includes temporary leasing of IP addresses, enabling address reclamation, pooling of IP addresses, and, recently, dynamic registration of client DNS fully qualified domain names (FQDNs). (See http://www.ietf.org/internet-drafts/draft-ietf-dhc-fqdn-option-11.txt for more information on FQDN registration.)

DHCP servers typically reside in a centralized location, with remote routers forwarding the LAN-broadcast DHCP requests to the DHCP server by changing the request's destination address to match the DHCP server. This feature is called DHCP relay agent. For instance, in Figure 5-3, if Fred and Barney were to use DHCP, with the DHCP server at 10.1.2.202, R1 would change Fred's DHCP request from a source and destination of 255.255.255.255, to a source of 10.1.1.255 (directed broadcast of Fred's subnet) and destination of10.1.2.202. The DHCP request would then be routed to the DHCP server, and the DHCP response would be forwarded to destination 10.1.1.255. The router would then broadcast the DHCP response back onto that subnet, as the destination address is Fred's subnet's broadcast address. The only configuration requirement on the router is an ip helper-address 10.1.2.202 interface subcommand on its E1 interface.

Alternatively, R1 could be configured as a DHCP server—a feature that is not popular in production networks, but is certainly fair game for the CCIE written and lab exams. Example 5-2 shows R1's configuration for a DHCP relay agent, as well as an alternative for R1 to provide DNS services for subnet 10.1.1.0/24.

Example 5-2 DHCP Configuration Options—R1, Figure 5-3

POINT

! UDP broadcasts coming in E0 will be forwarded as unicasts to 10.1.2.202. ! The source IP will be changed to 10.1.1.255, so that the reply packets will be ! broadcast back out E0. interface Ethernet1 ip address 10.1.1.1 255.255.255.0 ip helper-address 10.1.2.202

! Below, an alternative configuration, with R1 as the DHCP server. R1 assigns IP ! addresses other than the excluded first 20 IP addresses in the subnet, and informs the ! clients of their IP addresses, mask, DNS, and default router. Leases are for 0 days, ! 0 hours, and 20 minutes.

ip dhcp excluded-address 10.1.1.0 10.1.1.20

ip dhcp pool subnet1

network 10.1.1.0 255.255.255.0 dns-server 10.1.2.203 default - router 10.1.1.1 lease 0 0 20

Table 5-4 summarizes some of the key comparison points with RARP, BOOTP, and DHCP.

Table 5-4 Comparing RARP, BOOTP, and DHCP

Table 5-4 Comparing RARP, BOOTP, and DHCP

KEY POINT

Feature

RARP

BOOTP

DHCP

Relies on server to allocate IP addresses

Yes

Yes

Yes

Encapsulates messages inside IP and UDP, so they can be forwarded to a remote server

No

Yes

Yes

Client can discover its own mask, gateway, DNS, and download server

No

Yes

Yes

Dynamic address assignment from a pool of IP addresses, without requiring knowledge of client MACs

No

No

Yes

Allows temporary lease of IP address

No

No

Yes

Includes extensions for registering client's FQDN with a DNS

No

No

Was this article helpful?

+1 0

Responses

  • veera
    How to find rarp dhcp traffic network?
    9 months ago

Post a comment