How Does ARP Work Between Two Routers?

arprouter

When ARP is used by a host in a LAN, then it is broadcast because the host does not know where is the destination host, but a router knows which interface it must use to get to the next router. Then does it really need ARP. It can just put the packet on the interface through which it can reach the other router.

Best Answer

It can just put the packet on the interface through which it can reach the other router.

There are problems with your premise. Remember that frames on a link are delivered via a layer-2 protocol, and that protocol may have an address that must be resolved in order to encapsulate the packets into frames. If the frames use MAC addresses, then you need ARP to resolve the next-hop layer-3 address into a layer-2 address.

Also, if the link is a multiaccess link, how does the router direct the packets to the one-of-many hosts on the multiaccess link? The packets only have the source and destination layer-3 addresses, not any of the intermediate hop addresses. Yes, the router knows that the packets must go out specific interfaces, but it must have some way to direct the frames to the specific device (router) on a multiaccess interface.

Yes, there are layer-2 protocols that may use other, or no, addressing on the frames. If there is no addressing, e.g. PPP, then the router knows how to create the frame, and there is only one other device on the link, but there are many other layer-2 protocols (frame relay, ATM, etc.) that use other addressing, and a router will use a method other than ARP to resolve the layer-2 address of the next hop.

When ARP is used by a host in a LAN, then it is broadcast because the host does not know where is the destination host, but a router knows which interface it must use to get to the next router.

A router also knows which interface a host is connected on. Remember that at layer-2, another router is just a host on a network. The router knows nothing more about another router than it does a host.

Also, only an ARP request is broadcast. ARP also specifies that a host create an ARP table, and ARP may simply find the layer-2 address in the ARP table without using broadcast.