A switch learns from the source MAC, then makes a separate forwarding decision using the destination MAC
The most useful way to understand a MAC address table is to separate two operations students often blur together. Learning asks, “Where did this source MAC come from?” Forwarding asks, “Where should this destination MAC go?” The table connects those operations, but they are not the same event.
This five-step model explains most introductory switching artifacts and prevents a common mistake: saying a switch “learned” a device because that device appeared as the destination of traffic.
Think of each entry as recent Layer 2 location evidence, not a complete inventory of the network
A typical entry associates a MAC address with a VLAN and an interface, often with a type such as dynamic or static. Exact command output varies by vendor, but the reasoning does not: the switch has evidence that frames sourced by that MAC arrived through that Layer 2 location.
VLAN MAC ADDRESS TYPE PORT 10 00:11:22:33:44:55 dynamic Gi1/0/7 10 00:AA:BB:CC:DD:EE dynamic Gi1/0/48 30 00:90:12:34:56:78 dynamic Gi1/0/21
The table is not a directory of every possible host. Idle devices can age out, remote devices may be represented through an uplink, and each switch maintains its own observation-based state.
Why the source MAC—not the destination MAC—is the trustworthy clue for dynamic location learning
Suppose a frame enters port Gi1/0/7 in VLAN 10 with source MAC A and destination MAC B. The switch has direct evidence about A: A's frame physically/logically arrived through Gi1/0/7. It does not gain equivalent location evidence about B merely because B's address appears in the destination field.
After learning A, the switch separately searches for B. This distinction becomes powerful in troubleshooting because generating traffic from an endpoint can deliberately cause its source address to be relearned.
A learned destination lets the switch narrow forwarding to the port that leads toward that MAC
If B is already learned on Gi1/0/12 in VLAN 10, a frame for B arriving on Gi1/0/7 can be forwarded toward Gi1/0/12 rather than copied to every access port. This selective forwarding is one reason switches create separate collision domains per port while still supporting a shared Layer 2 broadcast domain inside a VLAN.
If the lookup says the destination is on the same port where the frame arrived, the switch does not need to send the frame back out that interface. The destination is already reachable on the ingress side.
A missing destination entry changes the forwarding action: the switch floods first and learns later from source traffic
If destination B is unknown, the switch cannot select one learned egress location. It normally floods the unknown unicast to eligible forwarding ports in that VLAN except the ingress port. When B eventually transmits, its source MAC can be learned and future known-unicast forwarding becomes more selective.
This explains why “the MAC is missing” does not mean “the switch drops all traffic to that host.” Unknown-unicast flooding is specifically designed to permit delivery while learning catches up.
Do not call every flooded frame a broadcast
A broadcast frame has a broadcast destination MAC and is intended for the broadcast domain. An unknown unicast still has one specific unicast destination MAC; the switch floods it only because the location of that destination is unknown. The forwarding behavior can look similar at several ports, but the reason is different.
That distinction matters when diagnosing a network loop or broadcast storm, because traffic type and forwarding mechanism affect what evidence you expect.
The same MAC text is incomplete evidence until you know the VLAN context
VLAN-aware switching keeps Layer 2 forwarding domains separate. A MAC learned in VLAN 20 does not automatically satisfy the expectation that the endpoint belongs in VLAN 10. In fact, a perfectly stable MAC entry in the wrong VLAN can be some of the strongest evidence of a placement error.
For the broader placement failure, see VLAN Mismatch Symptoms.
Dynamic entries are intentionally temporary, so absence must be interpreted against recent traffic
Dynamic learning would become stale if switches kept every observed source forever. Entries therefore age out after a period without qualifying activity. The exact timer can vary, so the durable concept is more important than memorizing one number: a quiet healthy endpoint can disappear from the table.
If you expected a MAC but it is absent, generate controlled traffic from that endpoint and check again. If it appears on the correct port/VLAN, aging explains the earlier absence. If it still does not appear, the failure boundary becomes more interesting.
Entry type changes how you interpret persistence and movement
A dynamic entry is learned from observed source traffic and participates in normal aging behavior. A static entry is configured or fixed through a different administrative mechanism and should not be interpreted as fresh proof that a device recently transmitted on that interface.
This creates an evidence rule: always inspect the entry type before treating presence as recent observation. Configuration state and learned state are not interchangeable.
A MAC learned on a trunk usually tells you the direction toward the endpoint—not the endpoint's final access port
An access switch may learn a directly attached printer on Gi1/0/12. An upstream switch can learn that same printer MAC through its trunk toward the access switch. Both entries are correct from each switch's local perspective.
To physically locate an endpoint, follow the MAC hop by hop: upstream table → trunk → downstream switch → table lookup → another trunk or final access port. This is Layer 2 path tracing using local observations rather than assuming one switch has a global map.
Combine two artifacts to move from an IPv4 address to a switch location
| Artifact | Maps | Question answered | Example |
|---|---|---|---|
| ARP / neighbor table | IPv4 next-hop → MAC | Which Layer 2 identity is associated with this local IP? | 10.20.5.44 → MAC-A |
| Switch MAC table | MAC + VLAN → port/path | Where did this switch learn that MAC? | MAC-A, VLAN 10 → Gi1/0/12 |
| Topology | Port → device/link | What does that interface connect toward? | Gi1/0/12 → Printer P |
Swipe horizontally to see the full table.
This two-artifact technique is central to duplicate IP troubleshooting: ARP can expose two MACs claiming one IP, while the switch table helps trace both claimants.
A changing learned port is an observation; “loop” is only one possible explanation
If MAC-A was learned on Gi1/0/5 and later appears on Gi1/0/8, the switch's evidence about the source location changed. That can happen because a user moved a device, a wireless/virtualized endpoint changed attachment, a topology reconverged, a duplicate identity exists, or a Layer 2 loop creates unstable learning.
Rapid repeated movement involving many MACs and the same competing uplinks is more suspicious than one legitimate endpoint move. Correlate MAC changes with topology, spanning-tree state, traffic rates, and timestamps before assigning root cause.
The client MAC exists on the access switch but disappears from the expected upstream VLAN path
PC-A transmits in VLAN 30. Access Switch 1 learns its MAC on Gi1/0/18, VLAN 30. The distribution switch does not learn PC-A in VLAN 30 through the expected trunk even after controlled traffic is generated. Other VLANs cross the trunk normally.
This does not yet prove the trunk cable is bad. The evidence narrows the investigation toward VLAN-30 handling between those switches: trunk allowance, VLAN existence/state, tagging expectations, or related Layer 2 configuration. The working VLANs act as controls against a total physical-link failure.
The MAC is learned correctly, but the endpoint still cannot reach a remote subnet
PC-B's MAC is learned on the correct access port and VLAN. Its default gateway's MAC is also reachable in the same VLAN, and PC-B can ping that gateway. The remote network still fails.
The MAC table has already helped establish local Layer 2 placement. Repeatedly checking whether PC-B's MAC exists adds little information. Move the investigation to IP configuration, route selection, return path, or policy. This is a good example of a successful artifact telling you when to stop using that artifact.
An absent printer MAC after hours of silence is not equivalent to a disconnected printer
A printer has not generated traffic for a long period and its dynamic entry has aged out. A technician checks the table and concludes the cable failed. Before replacing anything, a controlled print or other transmission is initiated. The switch immediately learns the printer MAC on the expected port and VLAN.
The original table was accurate—it showed current learned state. The mistake was interpreting absence as a permanent physical fact rather than time-sensitive evidence.
A MAC-table entry proves less than many troubleshooting answers claim
It can support
Recent source learning on a particular interface and VLAN.
It does not prove
Correct IPv4 address, subnet mask, gateway, or DHCP configuration.
It does not prove
DNS resolution, TCP service availability, authentication, or application health.
It does not prove
That a trunk carrying one learned MAC carries every required VLAN correctly.
Absence does not prove
A dead endpoint, because aging and lack of observed source traffic remain possible.
Movement does not prove
A switching loop without supporting topology and timing evidence.
Use expected state before deciding whether a table entry is good news
Expected: Client MAC 00:25:96:AA:10:01 VLAN 10 Access port Gi1/0/14 Observed: VLAN 20 00:25:96:AA:10:01 dynamic Gi1/0/14
A weak answer says, “The MAC is present, so switching works.” A stronger answer says, “The switch is receiving source frames from the expected physical port, but it is learning them in VLAN 20 rather than the intended VLAN 10. Inspect the port's access VLAN and related Layer 2 configuration.” The difference is not more jargon; it is better comparison between observed and expected state.
24 MAC-table and switching-evidence flashcards
These cards focus on the decisions the artifact supports: source learning, destination lookup, flooding, VLAN scope, aging, trunk tracing, ARP correlation, movement, and evidence boundaries.
Use the table to bound Layer 2 uncertainty, then deliberately hand off to the next layer
The table is most valuable when it reduces uncertainty. Repeating the same lookup after its question has already been answered is not additional troubleshooting.
After a Layer 2 correction, verify learning state and the user's original requirement
If you correct an access VLAN, trunk allowance, cabling location, or other switching issue, generate traffic and confirm the expected MAC is learned on the intended port/VLAN throughout the relevant path. Then test the service the user actually needed—local resource access, gateway reachability, remote connectivity, or the application itself.
Verification should also check that the correction did not damage another VLAN or redundant path. A table that looks cleaner is not the business requirement; correct network behavior is.
State the observation, its Layer 2 meaning, the contradiction or expectation, and the next discriminating artifact
Observation: “Client C's MAC is dynamically learned on Gi1/0/14 in VLAN 20.” Meaning: “The switch has recently received source traffic from that MAC through that interface in VLAN 20.” Expected state: “Client C should be in VLAN 10.” Inference: “Physical attachment may be correct, but logical VLAN placement is inconsistent with design.” Next evidence: “Inspect the access-port VLAN configuration and confirm VLAN 10 across the intended path.”
This answer stays inside the evidence boundary. It does not claim DNS, DHCP, routing, or the application is broken before those dependencies have been tested.