Linuxブリッジインタフェースを理解するのに役立ちます。

Linuxブリッジインタフェースを理解するのに役立ちます。

私の目標は簡単です。物理イーサネットインターフェイスを持つUbuntuサーバーをブリッジネットワークデバイスとして使用して、仮想マシンがここに接続し、LANやインターネットの他のデバイスと通信できるようにします。 NATを使用したくありません。

今数日間私が直面した問題は、LAN上でVMを実行してインターネットと通信するときにサーバーDNSが混乱してインターネットに接続できないことです。 DNS設定を手動で調整する必要がありますが、私がやっている作業は一時的な方法であり、正しいアプローチではないようです。

私が理解したのは、ブリッジインターフェイスはポートを割り当てることができるソフトウェアネットワークスイッチです。一般的なネットワークと同様に、複数のL3デバイスを含めることができます。ブリッジを生成するためにユーティリティを使用する場合のip一般的なユースケースのシナリオは、Linuxボックスをスイッチとして使用し、その上に複数のイーサネットポートを「ブリッジ」することです。これらのポートは、それぞれエッジルーター/ファイアウォールと内部LANに接続できます。イーサネットポートは仮想ブリッジインターフェイスのスレーブインターフェイスになり、仮想ブリッジインターフェイスはスレーブインターフェイスに入ってくるすべてのパケットを受信します。

私はこのブリッジインターフェイスを作成することで、自分のコンピュータだけでなく、ホストコンピュータ自体で実行されている2つのVMすべてに対して単一のイーサネットインターフェイスを使用できると思いました。しかし、ここに質問があります。静的IPアドレスをブリッジに割り当てると、誰がそのIPアドレスを取得できますか?スイッチ仮想インターフェイスですか?所有者?仮想デバイス?

ブリッジインターフェイスを使用する正しい方法は何ですか?この場合、ブリッジングが必要ですか?ありがとうございます。

ベストアンサー1

ブリッジインターフェイスを使用して単一のインターフェイス上の複数の仮想マシンにIPを提供できます。ホストと同じネットワークに仮想マシンを配置する場合は必須です。

ブリッジ インターフェイスを作成して静的 IP を割り当てると、ホストIP。覚えておいてください。ブリッジインターフェイス、物理インターフェイス自体brctl addif <bridge> <device>ではなく、たとえば物理インターフェイスをブリッジインターフェイスに割り当てるには、コマンドを使用します。変更を確認するために使用されますbrctl show

その後、VMを作成してそのブリッジインターフェイスを有効にするときに、VMオペレーティングシステム内で自己固定IP(またはDHCP割り当てIP)を設定できます。仮想マシンは、定義したIPを使用するホストと同じネットワーク上にあります。あなたはゲストにpingを送ることができなければならず、ゲストは外部的にpingすることができなければなりません。

Ubuntuを使用しているので、16.04以降を使用している場合は、netplanを使用して非常に簡単に設定できます。物理インターフェイスが呼び出され、ブリッジ名を指定したと仮定すると/etc/netplan/01-netcfg.yaml(またはそこにあるファイルは何でも)、次のようになります。50-cloud-init.yamleno1br0

network:
  version: 2
  renderer: networkd
  ethernets:
    eno1:
      dhcp4: no
  bridges:
    br0:
      interfaces: [eno1]
      dhcp4: yes

これによりブリッジが作成され、ブリッジインターフェイスのホストでDHCPが有効になります。物理インターフェイスでDHCPを無効にした方法を確認してくださいeno1。ホストに静的IPを持たせるには、次を参照してください。このページより多くの例を学びましょう。

次に、実行netplan applyして変更を適用します。その後、ip aホストで実行すると、物理インターフェイスにmaster br0それが表示されます。物理インターフェイスにはIPがあってはなりません。これでbr0、上記で指定したIPとのインターフェースも必要です。

ネットプランをお使いの方は/etc/network/interfacesご確認ください。ここ

おすすめ記事