I'm not really sure if the IP-MAC addresses for the router get stored in the ARP cache of endhosts, hence the question.


ARP uses broadcast, which does not cross a router. ARP resolves a layer-3 (IP) address to a layer-2 (MAC) address. A MAC address is only valid or even seen on the layer-2 LAN, which is bounded by a router.

A host will determine if the destination IP address is on the same network. If it is, then it uses ARP to resolve the IP address to the MAC address of the destination host. If the destination host is on a different network, the the source host will use ARP to determine the MAC address of the router, and it will frame the packet with the router MAC address in the frame.

ARP only works on the layer-2 LAN where the source host is connected.

PC A and PC B are on different networks, so they will never see the MAC address of the other.

  • Well, that assumes that traffic has been sent so that an ARP request was sent and a reply received. Also, remember that entries in the ARP table will eventually time out, so another ARP request will need to be sent. – Ron Maupin Apr 10 '20 at 16:23
  • @nwl123, Correct. – ditrapanij Apr 11 '20 at 5:05

I would accept Ron Maupin's answer. Adding, when PC-A pings PC-B the packet will contain IP addresses of end to end hosts; i.e., IP of PC-A and IP of PC-B. However, the frame will hold MAC addresses of PC-A and Router's interface that is in LAN-A. When frame is relayed to LAN-B, it will hold MAC addresses of Router's interface in LAN-B as a source and MAC of PC-B as a destination.

In short, IP addresses are end to end, while MAC addresses are hop by hop.

  • You may generalize my answer by replacing IP address with any Layer 3 address and replacing MAC address with any Layer 2 address. – m.nasim Apr 11 '20 at 1:10

Your Answer

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