Windows の DHCP から独自の MAC アドレスと外部 IP アドレスを持つ複数の仮想ネットワーク アダプター

Windows の DHCP から独自の MAC アドレスと外部 IP アドレスを持つ複数の仮想ネットワーク アダプター

私はこのフォーラムで長い間検索してきましたが、このトピックに関する質問はたくさんあるにもかかわらず、問題の具体的な解決策を得ることができませんでした。

1 つのネットワーク アダプタを使用して、1 台のコンピュータに DHCP によって複数の IP アドレスを割り当てたいと考えています。その目的は、コンピュータがネットワーク シミュレーションに関係するさまざまなエンド ノードをエミュレートすることです。

VMware などの仮想マシン ソフトウェアは、ホストの実際のネットワーク アダプタとブリッジされた独自の MAC アドレスを持つ仮想ネットワーク アダプタを使用して、DHCP から仮想マシンの外部 IP アドレスを取得できるため、これが可能であることはわかっています。また、GNS3 などのソフトウェアでも、さまざまなシミュレートされたネットワーク ノードに DHCP から外部 IP を割り当てることができるというトリックを実行できます。

よく提案される解決策は、実際のネットワーク アダプタとブリッジ モードで Microsoft ループバック アダプタを使用することです。ただし、これがどのように機能するのかわかりません。ループバック アダプタをインストールして実際のネットワーク アダプタとブリッジすると、「Ethernet 3」という新しい「マルチプレクサ ドライバ」アダプタが作成されます。このアダプタには DHCP から IP が割り当てられますが、仮想ネットワーク アダプタにも実際のアダプタにも 2 番目の IP アドレスの兆候はありません。

ループバック アダプターのソリューションがどのように機能するのかを説明していただけると大変助かります。その方法では機能しない場合は、同じ目的を達成するための別のソリューションについてご助言いただければ幸いです。設定が可能だと多くの場所で読みましたが、どこにも役立つ詳細なソリューションは示されていません。

答え1

仮想ネットワークを操作しようとする場合、仮想スイッチはさまざまな仮想マシンで動作する可能性があります。個別に、分散プロトコルまたはオペレーティング システム コンポーネントの一部として、または仮想マシンの一部として。

または、仮想アダプターをインストールして IP アドレスと MAC アドレスを割り当てることもできますが、この場合は、たとえば RDP サーバーの自動適用の場合や、仮想アダプター上のネットワーク アプリケーション アクティビティをリダイレクトする場合に適した追加のインターフェイスのみになります。

スイッチの機能と仮想実装のいくつかに注目するためのリソースをいくつか紹介します。良い質問をありがとうございます。

Hyper-V環境内でVスイッチを作成すると失敗する

Hyper-V ネットワーク仮想化と仮想スイッチ

Hyper-V の仮想ネットワーク (パート 1)

Microsoft Hyper-V ネットワークと構成 - パート 1

Hyper-V 仮想ネットワークの最大構成:

  • MAXIMUMコメントのサポート
  • 仮想マシンあたりの仮想 NIC 12 個の NIC (レガシー NIC 4 個、VMBus NIC 8 個)
  • VLAN無制限
  • VLANあたりの仮想マシン数無制限
  • 外部ネットワーク仮想スイッチ Hyper-V サーバーあたり 1 物理 NIC あたり 1
  • 内部ネットワーク仮想スイッチ Hyper-V サーバーあたり無制限
  • プライベートネットワーク仮想スイッチ Hyper-V サーバーあたり無制限
  • 仮想ネットワークスイッチあたりの仮想マシン数無制限
  • ワイヤレス ワイヤレスはサポートされていません
  • VLAN ID タグ付け 外部、内部
  • 仮想マシン上の VLAN ID タグ付け 仮想マシンごとに 1 つ

仮想スイッチを開く

サポートされているプラ​​ットフォーム Open vSwitch は、ハイパーバイザー内で実行されるソフト スイッチとしても、スイッチング シリコンの制御スタックとしても動作できます。複数の仮想化プラットフォームとスイッチング チップセットに移植されています。XenServer 6.0、Xen Cloud Platform のデフォルト スイッチであり、Xen、KVM、Proxmox VE、VirtualBox もサポートしています。また、OpenStack、openQRM、OpenNebula、oVirt など、多くの仮想管理システムにも統合されています。カーネル データパスは Linux とともに配布され、Ubuntu、Debian、Fedora 用のパッケージが用意されています。Open vSwitch は FreeBSD と NetBSD でもサポートされています。開発中の Open vSwitch リリースは DPDK に移植されています。

コードの大部分はプラットフォームに依存しない C で書かれており、他の環境に簡単に移植できます。

答え2

よく提案される解決策は、実際のネットワーク アダプターとブリッジ モードで Microsoft ループバック アダプターを使用することです。

ブリッジングでは次のことが行われます。

  • ブリッジしたネットワーク アダプターは、レイヤー 1 で動作するようになり、スイッチのポートと同じように動作します。これらを A と B と呼びます。

  • 新しいブリッジ インターフェイスは、そのスイッチに接続されたケーブルをブリッジ インターフェイスにモデル化します。この新しいブリッジ インターフェイスは、レイヤー 1 および 2 で動作します。

それで:

  • ブリッジ インターフェイスにのみ IP を割り当てることができます。これは、レイヤー 2 で機能するものがブリッジ インターフェイスだけだからです。

  • A、B、C は、A、B、C から通過するイーサネット フレームを見ることができます。

VMware などの仮想マシン ソフトウェアは、ホストの実際のネットワーク アダプタとブリッジされた独自の MAC アドレスを持つ仮想ネットワーク アダプタを使用して、DHCP から仮想マシンの外部 IP アドレスを取得できるため、これが可能であることはわかっています。

VMware は、着信トラフィックを取得して仮想ホストとの間で移動するドライバーを備えたネットワーク アダプターをインストールします。GNS3 は、Cisco プラットフォームをエミュレートする MIPS エミュレーターを実行するため、同じことを実行するドライバーも備えています。

Windows では、ループバック アダプタのレイヤー 1 とレイヤー 2 の機能を分離することはできないと思います。ループバック アダプタの典型的な用途は、特定のホスト上のものがそのホストから逃れないようにすることだからです。

Windows で仮想化を実行したくない場合は、次の操作を試してください。

  • Linux をインストールして使用します。Linux には、はるかに簡単な DHCP ツールがあり、奇妙なネットワーク操作を行うための汎用性もはるかに高く (そして、より多くのトラブルに遭遇する可能性があります)、問題なく複数の IP をインターフェイスに割り当てることができます。

  • 安価な USB-Ethernet アダプタをいくつか購入し、それぞれをネットワークに接続します。

関連情報