switchは受信frameのsource MACをVLAN単位で学習し、destination MACがtableにあれば該当portだけへ転送します。未学習のdestination MACは、受信portを除く同一VLAN内へfloodingします。学習と転送を分けると動作を説明できます。
MAC address tableはどう作られる?
先に答えると、switchは受信frameのsource MACをVLAN単位で学習し、destination MACがtableにあれば該当portだけへ転送します。未学習のdestination MACは、受信portを除く同一VLAN内へfloodingします。学習と転送を分けると動作を説明できます。
floodingはどのportへ送られる?
仕組みを構成上の位置と観測点に分けると、用語だけでなく実際のpacket・stateを説明できます。
| 項目 | 仕組み・役割 | 実務での判断 |
|---|---|---|
| 学習 | 受信frameのsource MAC | VLANとingress portを記録 |
| known unicast | destination MACがtable内 | 1 portへ転送 |
| unknown unicast | destination MACが未学習 | 同一VLANへflood |
| broadcast | FF:FF:FF:FF:FF:FF | 同一VLANへflood |
PC-A Gi1/0/1 --src A,dst B--> SW --?--> Gi1/0/2 PC-B
学習: A→Gi1/0/1
未学習B: VLAN内のGi1/0/2,Gi1/0/3...へ送信
Ciscoで学習状態をどう確認する?
Ciscoで学習状態をどう確認する?では、対象と期待値を固定し、状態取得、実通信、変更後確認の順に進めます。commandは例であり、本番投入前に対象OSの公式資料と現行設定を確認してください。
| STEP | 実施内容 | 確認する結果 |
|---|---|---|
| 1 | 対象VLANとMACを特定 | 表記ゆれをそろえる |
| 2 | MAC tableのportと種別を確認 | dynamic/static/secure |
| 3 | interface counterとlink状態を確認 | frameが入っているか |
| 4 | 対向・loop・NIC交換履歴と照合 | 移動が正常か異常か |
show mac address-table address 0011.2233.4455
show mac address-table dynamic vlan 20
show interfaces counters errors
show logging | include MACFLAP
Vlan Mac Address Type Ports
---- ----------- -------- -----
20 0011.2233.4455 DYNAMIC Gi1/0/12
MAC未学習・flappingをどう分ける?
一つの表示だけで原因を決めず、症状ごとに次の観測点を選びます。正常時の同条件出力が比較基準です。
| 症状・誤り | 主な原因候補 | 次に確認すること |
|---|---|---|
| MACがない | 端末からframe未受信・別VLAN | ARP生成、port VLAN、link |
| 複数portを往復 | loop・NIC team・誤配線 | MACFLAP logとSTP |
| tableにあるが通信不可 | L3/ACL/host側 | ARPとgateway以降 |
| 大量flood | table capacity・aging・一方向traffic | 件数、CPU、SPAN capture |
変更後に何を再確認する?
clear mac address-tableを最初に実行すると、原因の証跡を消し、一時的にfloodingを増やします。取得時刻、VLAN、MAC、port、対向を保存してから、必要性と影響を承認者と判断します。
- 対象機器・interface・VRF/VLAN
- 取得日時・timezone・software version
- 変更前後の同一command出力
- 期待値・実測値・判定者
- 異常時の停止条件とrollback結果
関連する仕組みを次に確認する
定義だけで終わらせず、隣接する仕組みと障害切り分けへ進みます。
まとめ:source MAC学習とdestination MAC転送を分けて追う
source MAC学習とdestination MAC転送を分けて追うことが結論です。構成図、設定・command、正常時と異常時の結果を同じ条件で保存し、第三者が判断を再現できる状態にしてください。
