Btw, I just checked my old notes, which I copied and pasted below. Hopefully this will shed some light into your issue: > 1. The server first checks its routing table to see which router > provides the next hop to the destination network. > 2. If there is a valid router, let's say with an IP address of > 192.168.1.1, the server checks its ARP table to see whether it has the MAC > address of the router's NIC. You could very loosely view this as the server > trying to find the Ethernet serial number of the next hop router on the > local network, thereby ensuring that the packet is sent to the correct > device. > 3. If there is an ARP entry, the server sends the IP packet to its NIC > and tells the NIC to encapsulate the packet in a frame destined for the MAC > address of the router. > 4. If there is no ARP entry, the server issues an ARP request asking > that router 192.168.1.1 respond with its MAC address so that the delivery > can be made. When a reply is received, the packet is sent and the ARP table > is subsequently updated with the new MAC address. > 5. As each router in the path receives the packet, it plucks the IP > packet out of the Ethernet frame, leaving the MAC information behind. It > then inspects the destination IP address in the packet and use its routing > table to determine the IP address of the next router on the path to this > destination. > 6. The router then uses the "ARP-ing" process to get the MAC address > of this next hop router. It then reencapsulates the packet in an Ethernet > frame with the new MAC address and sends the frame to the next hop router. > This relaying process continues until the packet reaches the target > computer. > 7. If the target server is on the same network as the source server, a > similar process occurs. The ARP table is queried. If no entry is available, > an ARP request is made asking the target server for its MAC address. Once a > reply is received, the packet is sent and the ARP table is subsequently > updated with the new MAC address. > 8. The server will not send the data to its intended destination > unless it has an entry in its ARP table for the next hop. If it doesn't, > the application needing to communicate will issue a timeout or time > exceeded error. > 9. As can be expected, the ARP table contains only the MAC addresses > of devices on the locally connected network. ARP entries are not permanent > and will be erased after a fixed period of time depending on the operating > system used. > >