IP routing can be a relatively simple process. However, the steps are quite extensive. To summarize these steps, I will use an example of 2 networks, Host A and Host B, who are connected with a router and both want to communicate with each other. Host A would open a command prompt and enter a ping command. Next, the IP will work with the ARP to determine which network the packet is destined for.
After that is completed, Host A would need to know the hardware address of the router’s interface. Next, the router would respond with the hardware address, and then the data link layer of Host A would create a frame, then hand the frame to the physical layer and then transmitted through the physical network layer. The signal would be picked up by the router’s interface and the frame would be read. CRC check will be done at this point. Next, the destination MAC address of the received frame is checked and stripped. Now, the IP would look at the packet’s destination IP address to determine if it is for the router.
After that, the router would place the packet in the buffer of the interface and would need to create a frame to send to the destination host. Host B would then respond with the hardware address of its network interface card with an ARP reply. At this point, the router has everything it needs to send the packet to Host B, its final destination. Host B would then receive the frame and would run a CRC, then discards the frame and sends the packet to IP where the IP would check the destination address. Finally, Host B would generate a new ICMP echo-reply packet with the source IP address of Host B and the destination IP address of Host A.