Why does a frame need both a MAC address and an IP address instead of just one?
The IP address identifies the final destination end-to-end, but a frame can only be delivered hop-by-hop using the MAC address of the next NIC on the local link; neither alone can move the packet across networks.
* IP answers "where is the final destination?" end-to-end; MAC answers "who do I hand this to next?" on the link. ARP/ND links the two so the frame can cross networks. *
Each address solves a different delivery problem:
| Address | Scope | What it answers |
|---|---|---|
| IP (Layer 3) | End-to-end, across networks | Where is the final destination? |
| MAC (Layer 2) | Single link / local network | Who is the next NIC to hand this to? |
How they work together:
- The IP packet (with unchanging source/destination IP) is encapsulated in a new Ethernet frame on every link.
- The MAC addresses are rewritten at each hop to point to the next device, while the IP addresses stay the same all the way to the destination.
Why it matters: MAC addresses are flat and only meaningful on the local network, so they cannot route between networks; IP addresses are hierarchical and routable but cannot by themselves deliver a frame to a specific NIC. Address resolution (ARP / ND) is what links the two.
Go deeper:
-
Address Resolution Protocol (ARP) — PracticalNetworking explains the union of end-to-end IP delivery and hop-to-hop MAC delivery, and why ARP is the glue.
-
Address Resolution Protocol — Wikipedia: ARP maps an internet-layer IPv4 address to a link-layer MAC so a host can actually frame and send the packet locally.