Linuxネットワークネームスペースの文脈でARPテーブルとFDBを所有している人は誰ですか?

Linuxネットワークネームスペースの文脈でARPテーブルとFDBを所有している人は誰ですか?

私はLinuxオーバーレイネットワーキングを理解しようとしています。私の知る限り、ブリッジはL2スイッチとL3ルータの機能を組み合わせたものです。 ARPテーブルを使用してIP - > MACマッピングとFDBMAC - > ifaceマッピング。しかし、このテーブルは正確にどこに記録され、誰が「所有/管理」しますか?

たとえば、Linuxを作成するとします。ネットワークネームスペース2つを添付してVeth インターフェイスそれに。

  1. 各 veth インターフェイスは独自の ARP テーブルと FDB テーブルを保持しますか?
  2. それとも、ブリッジはすべてのインターフェイスのテーブルを維持しますか?
  3. それとも管理対象テーブルの名前空間ですか?

答え1

いいえ、(Linuxカーネル)ブリッジはL2スイッチとL3ルーターの機能を組み合わせません。

ブリッジはスイッチと同様にレイヤ 2 でのみ動作し、特定の MAC アドレスが特定のポートの背後にあることがわかっている場合、その MAC アドレスの L2 宛先を持つパケットはそのポートを通過するように最適化されます。すべてのポートに送信される代わりに。これがFDBの目的です。しかし、多くのハードウェアスイッチは同じ最適化を使用します。

Linux ブリッジは、2 つの点でハードウェアスイッチとは異なります。ブリッジには別のネットワークインターフェイス(通常は物理イーサネットインターフェイス)を使用してポートが割り当てられます。この場合、L3機能は失われ、割り当てられたすべてのIPアドレスは無視されます。またbr0、物理インターフェイスを介してコンピュータに直接接続されるハードウェアスイッチのポートとして機能する特別なネットワークインターフェイス(ブリッジ自体のインターフェイスなど)もあります。

ARPテーブルはこれとは何の関係もありません。

ネームスペースはネットワークに関連するすべてを分離するため、各ネームスペースには独自のARPテーブル、独自のネットワークインターフェイスのリスト、潜在的なブリッジなどがあります。

(ブリッジが選択したパケットをL3に送信し、iptablesブリッジとルーターの組み合わせである「ブリッジ」を形成する方法がありますが、この機能を有効にする必要があり、ブリッジ自体が正しく機能する機能はありません。)

関連情報