0Pricing
Cloud & IT Cert Prep · レッスン

MACアドレスとアドレステーブル

ハードウェアアドレスと、スイッチがそれを学習する仕組みを理解します。

「MACアドレスとアドレステーブル」はCoddyKit上の無料Cloud & IT Cert Prepレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCloud & IT Cert Prep学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Cloud & IT Cert Prepコースには全4レッスンが含まれています。

ハードウェアアドレス

すべてのネットワークインターフェースにはMACアドレス(Media Access Control address)があります。これは、製造元によってデバイスに書き込まれた、固有のハードウェア識別子です。デバイスがネットワーク間を移動するとIPアドレスは変わることがありますが、MACアドレスは通常、ハードウェアに固定されたままです。スイッチはフレームの転送を完全にMACアドレスに依存しているため、MACアドレスを理解することはLANの仕組みを理解するうえで不可欠です。

MACアドレスの形式

MACアドレスは48ビット長で、通常は12個の16進数を6組に分けて、00:1A:2B:3C:4D:5Eのように表記します。各組は1バイトを表します。コロン(ハイフンやドットの場合もあります)は、読みやすくするために各組を区切っているだけです。この形式では非常に多くのアドレスを作成できるため、世界中のネットワークハードウェアを一意に識別できます。

OUIとデバイス部分

MACアドレスは2つの部分に分かれています。

  • 最初の24ビット — OUI(Organizationally Unique Identifier:組織固有識別子):IEEEによって割り当てられ、製造元を識別します。
  • 最後の24ビット:製造元が個々のデバイスに割り当てる固有の値です。

この2つを合わせることで、各MACアドレスが世界中で一意になります。OUIを検索すれば、デバイスの製造元を特定できることもあります。

書き込み済みだが変更可能

MACアドレスは、ハードウェアのファームウェアに設定されているため、BIA(Burned-In Address:焼き付けアドレス)と呼ばれることがあります。しかし、現代のOSでは、ソフトウェアによってMACアドレスをスプーフィングしたり上書きしたりして、別のMACアドレスを提示できます。攻撃者はフィルタを回避するためにこれを利用することがあり、Wi-Fiのプライバシー機能ではMACアドレスがランダム化されます。そのため、MACアドレスは通常固定されていますが、完全に変更できないわけではありません。

MACアドレステーブル

スイッチはMACアドレステーブル(Content Addressable Memoryの略でCAMテーブルとも呼ばれます)を保持しています。このテーブルには、既知の各MACアドレスと、そのデバイスが接続されているスイッチポートとの対応が記録されています。すべての転送判断でこのテーブルが確認されるため、テーブルはスイッチングの中心です。スイッチは、受信フレームの送信元アドレスを監視することで、テーブルを自動的に作成・更新します。

テーブルが埋まる仕組み

テーブルには学習によってエントリが登録されます。フレームがポートに入るたびに、スイッチはその送信元MACアドレスを読み取り、MACアドレスと受信ポート番号を記録します。同じMACアドレスが後から別のポートから送信してきた場合は、デバイスが移動した可能性があるため、スイッチはエントリを更新します。この継続的な学習により、テーブルは実際のネットワーク構成と一致した状態に保たれます。

Example MAC address table:
  PORT   MAC ADDRESS         TYPE
  Gi0/1  00:1A:2B:3C:4D:5E   Dynamic
  Gi0/2  00:1A:2B:99:88:77   Dynamic
  Gi0/3  AC:DE:48:00:11:22   Dynamic

動的エントリと静的エントリ

テーブルエントリのほとんどは動的です。自動的に学習され、一定時間通信がなければエージングアウトされます。また、管理者は、特定のMACアドレスを特定のポートに永続的に対応付ける静的エントリを追加することもできます。これは重要なサーバーやセキュリティ対策に役立ちます。静的エントリはエージングアウトされず、学習による動作より優先されるため、必要な箇所を正確に制御できます。

テーブルに限界がある理由

MACテーブルのサイズには上限があります。スイッチが保持できるエントリ数には限りがあります。攻撃者は、偽の送信元MACアドレスを持つフレームを大量に送信してテーブルを埋めるMACフラッディング攻撃を仕掛けられます。テーブルが満杯になると、スイッチがハブのようにすべてのフレームをフラッディングする状態に戻り、攻撃者がトラフィックをスニッフィングできる可能性があります。ポートセキュリティは、ポートごとのMACアドレス数を制限することで、この攻撃を防ぎます。

MACアドレスとIPアドレスの違い

この2種類のアドレスを区別して覚えましょう。

  • MACアドレス — レイヤー2、ハードウェアアドレス。スイッチがローカルネットワーク内で使用します。
  • IPアドレス — レイヤー3、論理アドレス。ネットワーク間のルーティングに使用します。

デバイスはローカルで移動してもMACアドレスを維持しますが、新しいネットワークでは新しいIPアドレスを取得します。スイッチはMACアドレスを使い、ルーターはIPアドレスを使います。この役割分担はネットワークの基本です。

ブロードキャストMACとユニキャストMAC

すべてのMACアドレスが1台のデバイスを指すわけではありません。特殊なアドレスであるFF:FF:FF:FF:FF:FFはブロードキャストアドレスで、ローカルネットワーク上のすべてのデバイスを意味します。通常の特定デバイス向けMACアドレスはユニキャストアドレスであり、特定の範囲はマルチキャストグループ用に予約されています。スイッチはブロードキャスト宛てのフレームを受信すると、すべてのポートにフラッディングします。これにより、ARPなどのプロトコルはすべてのデバイスに一度に到達できます。

まとめ

試験対策として、MACアドレスは12桁の16進数で表される48ビットのハードウェアアドレスであり、前半は製造元のOUIであることを覚えておいてください。スイッチは、学習したMACアドレスとポートの対応関係をMACアドレステーブルに保存します。動的エントリは時間の経過で削除され、必要に応じて静的エントリも設定できます。MACフラッディングが攻撃であること、またMACはレイヤー2、IPはレイヤー3であることを理解してください。

クイックチェック

MACアドレスに関する知識を確認しましょう。

振り返り

MACアドレスは、12桁の16進数で表される48ビットのハードウェア識別子であり、製造元のOUIとデバイス部分に分かれていることを学びました。MACアドレスは出荷時に書き込まれていますが、スプーフィングすることは可能です。スイッチはMACアドレスとポートを対応付けるMACアドレステーブル(CAMテーブル)を保持します。このテーブルは送信元アドレスを学習することで構築され、時間の経過で削除される動的エントリと、必要に応じて設定する静的エントリがあります。MACフラッディングは、テーブルの容量が限られていることを悪用する攻撃であり、ポートセキュリティによって防御できます。MACはレイヤー2、IPはレイヤー3です。

よくある質問

「MACアドレスとアドレステーブル」レッスンは無料ですか?

はい。「MACアドレスとアドレステーブル」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Cloud & IT Cert Prepコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Cloud & IT Cert Prepコースには全4レッスンが含まれています。

「MACアドレスとアドレステーブル」で何を学びますか?

ハードウェアアドレスと、スイッチがそれを学習する仕組みを理解します。 ブラウザで直接実行するハンズオンコードでCloud & IT Cert Prepを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Cloud & IT Cert Prepを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのCloud & IT Cert Prepは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。

「MACアドレスとアドレステーブル」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このCloud & IT Cert Prepレッスンでコードを書いて実行できますか?

はい。すべてのCloud & IT Cert Prepレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. ハブが過去のものになった理由
  2. スイッチがフレームを転送する仕組み
  3. MACアドレスとアドレステーブル
  4. コリジョンドメインとブロードキャストドメイン
← Cloud & IT Cert Prepに戻る