What is the difference between a mac address table and an arp table? Is it correct to say only one arp cache is kept for each switch which self learns to forward information to another host, and every host on the network has its own mac table, which records the mac address of hosts it wants to send frames to, this information is stored after a broadcast which lead to a host replying with its mac address and mac addresses are removed if unused after 20 minuets to avoid filling up the mac address table.

I just dont know why an arp table /cache differs to a mac table.

Any explanations would be much appreciated.

  • 3
    A MAC table maps Ethernet hardware addresses to switch ports. An ARP table maps IP addresses to Ethernet hardware addresses. Apr 27, 2013 at 10:38

2 Answers 2


MAC Table (Layer 2)

The MAC table is used by the switch to map MAC Addresses to a specific interface on the switch. These usually expire every 5 minutes or so, and are updated by reading the source address of the frame entering the interface. Your switch should have a MAC/CAM Table as a layer 2 device.

ARP Table (Layer 3)

The ARP table is used to map MAC Addresses to IP addresses. If no ARP entry exists, an ARP broadcast is sent out, and the table is updated with the response. These usually expire after 2-4 hours. Each host connected to the network should maintain its own ARP Table.

  • 1
    so how many mac/arp tables are there? in one network with one switch?
    – user171131
    Apr 27, 2013 at 8:59
  • 3
    @user171131: One MAC table in the switch and an ARP table in each TCP/IP client.
    – Sven
    Apr 27, 2013 at 9:02
  • 1
    Correct! Updated answer to reflect the difference. Apr 27, 2013 at 9:04
  • 2
    Each host interface using IP and a MAC (IEEE) protocol will have its own ARP table. Also, each VLAN on a switch will have its own MAC address table.
    – Ron Maupin
    Sep 25, 2019 at 18:44

I had the same question in the past. Let me tell what I have understand with a simple example.

Mac Table: This table maps for particular mac address which port the data should be send through.

For example let's consider there is one entry in mac address table as follows.

show mac-address-table

0021.d837.a6fc          Dynamic       1     FastEthernet3

The above information says if the destination mac address is '0021.d837.a6fc' send through the port FastEthernet3. This is the sole purpose of mac address table. For which mac address which port to forward data through. This happens in layer 2 which is a switch.

Arp Table: This table has mapping of ip address to mac address.

Again a simple example, let's say you want to send some data to We don't know the mac address of "" yet. ARP protocol helps in the discovering the mac address by sending broadcast message. Once we have learned the mac address of the host we save that in arp table.

show arp

Internet         3   0021.d837.a6fc

Now that we know the mac address of the destination host we pass this information to layer 2, which does the forwarding to particular port based on the mac address.

Hope this helps someone.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .