本記事では、オーバーレイセグメントに接続された仮想マシン同士が同一セグメント内で通信する際に参照されるテーブルについてまとめていきます。通信がイメージは、障害対応に必須だと思うので是非読んでいただければ嬉しいです。
上の図では、オーバーレイセグメントSeg-aに接続されたServer-aからServer-a’に対してフレームを送信しています。(送信元=Server a、宛先=Server a’)のフレームを受信したESXiは"NSXのMACテーブル"を参照します。MACテーブルというと物理スイッチがフレームを転送する際に用いるMACアドレステーブル(転送先MACアドレスと転送ポートの対応表)のように聞こえますが、NSXにおけるMACテーブルは仮想マシンのMACアドレスと仮想マシンが動作しているホストのTEP IPアドレスの対応表(以下、MACテーブル)を指すことに注意が必要です。
MACテーブルは、NSX Managerによって管理され、各ホストに配布されます。オーバーレイセグメントの仮想ポートでフレームを受信したホストは、このMACテーブルと照らし合わせて、転送先仮想マシンが動作しているホストを判断します。そして、転送先仮想マシンが別ホスト上で動作している場合、自身のTEPにて仮想マシンからのフレーム(オリジナルフレーム)をカプセル化して転送します(TEPにてカプセル化されるので、物理スイッチはTEPのMACアドレスのみ学習)。
以上がオーバーレイセグメントにおけるL2通信の大雑把な説明となります。実はMACテーブルに加えて、ARPテーブルやTEPテーブルといったテーブルも使われますが、そちらに関しては次回にまわします。