4

Let's say i have the following WAN: From solutions of computer networking a top-down approach 5th edition

Suppose that all arp tables are empty and that E wants to send a packet to A.

  1. The E will send an arp request with destination ip of Router 2(unicast), get its mac and send it the packet.
  2. Router 2 will receive the packet, finds the packet's subnet next hop using BGP using past calculations, in this case Router 1, then using its intranetwork protocol(RIP,OSPF) find that Router 1 is the next router and then it makes arp request with the address of Router 1 in order to get its mac. Then it sends the packet with the new ethernet addresses to Router 1
  3. Router 1 receives the packet, recognize that it belongs to its own subnet and makes an arp request using the destination ip address of A. After that it delivers the packet A.

I would like to know if the procedure flow is correct. a)Also if the E got its ip manually (not with DHCP), it would need to broadcast the arp request. Am i right? (since it wouldn't know the network mask)

Thank you.

1

You're almost 100% correct. Slight corrections bolded below:

  1. HostE will send an ARP Request with a target address of Router2's IP address. The destination MAC address of the ARP packet will be ffff.ffff.ffff, which would indeed make it a broadcast. Router2 responds unicst with its MAC address, and HostE generates the packet with a Source and Destination IP of 192.168.3.1 and 192.168.1.1, and a Source and Destination MAC of 7777.7777.7777 and 8888.8888.8888 (respectively).
  2. Router 2 will receive the packet, and consult its Route Table to determine the Next Hop for the 192.168.1.0/24. If Router2 doesn't already know Router1's MAC address, it will issue a broadcast ARP Request for it. Once it learns it, it will then forward the packet leaving the Source/Destination IP unchanged, and encapsulating the IP packet with a Layer 2 header with a Source and Destination MAC of 5555.5555.5555 and 3333.3333.3333.
  3. Router1 receives the packet and consults its Route Table to determine the destination Network is directly connected. Router1 sends a Broadcast ARP Request for the IP 192.168.1.1 to learn HostA's MAC address, and then finally forward the packet to the final destination.

And to answer your last question. Whether HostE gets its address from DHCP or not, the process flow would appear as above if HostE did not have an entry in its ARP Cache for Router2's MAC address.

IF, Router2 was the DHCP Server (which it doesn't have to be). And Router2 just assigned HostE its address. Then theoretically, HostE would know Router2's MAC address. But ARP entries don't last forward, particularly on clients. For example, my Windows 7 laptop keeps ARP entries for only 34.5 seconds (see below).

So even if Router2 was the DHCP server, and gave HostE its IP address, sooner or later HostE's ARP cache would time out, and it would have to run the broadcast ARP request all over again, just like if HostE had always only had a static IP assigned.

C:\Users\eddie>netsh interface ipv4 show interfaces 20

Interface Local Area Connection Parameters
----------------------------------------------
IfLuid                             : ethernet_11
IfIndex                            : 20
State                              : connected
Metric                             : 20
Link MTU                           : 1500 bytes
Reachable Time                     : 34500 ms     <-----
Base Reachable Time                : 30000 ms
Retransmission Interval            : 1000 ms
DAD Transmits                      : 3
Site Prefix Length                 : 64
Site Id                            : 1
Forwarding                         : disabled
Advertising                        : disabled
Neighbor Discovery                 : enabled
Neighbor Unreachability Detection  : enabled
Router Discovery                   : dhcp
Managed Address Configuration      : enabled
Other Stateful Configuration       : enabled
Weak Host Sends                    : disabled
Weak Host Receives                 : disabled
Use Automatic Metric               : enabled
Ignore Default Routes              : disabled
Advertised Router Lifetime         : 1800 seconds
Advertise Default Route            : disabled
Current Hop Limit                  : 0
Force ARPND Wake up patterns       : disabled
Directed MAC Wake up patterns      : disabled
  • About the last question, i probably wasn't very clear. In the first example the E used the dhcp server to get and the network subnet mask. So the E having the subnet mask would know where to direct the arp request (network address, i mistakenly used ethernet on my question) since it will know that the ip belongs to different network. In the other hand, without DHCP, E wouldn't know if the A was in other network, so in the arp request would used as destination address the address of A in contrast with out first case that it would use the Router 2 address. Did i miss something? – user2279268 Dec 10 '14 at 9:05
  • Almost. HostE doesn't use DHCP to determine what is in or out of its own network. HostE uses its Subnet Mask to determine whether the destination IP is in or out of its own local network. With DHCP, the Subnet Mask is provided by DHCP. If you manually assign an IP address, you manually set a Subnet Mask. If you had manually misconfigured HostE's Subnet Mask as a /16 (255.255.0.0), it would then consider HostA's address (192.168.1.1) in its own local network, and would instead ARP directly for that address. Which would go unanswered, since Broadcasts don't cross router boundaries. – Eddie Dec 10 '14 at 13:52
  • ok thank you. (i guess i missed the practical application) – user2279268 Dec 10 '14 at 14:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.