セットアップはこちら
20 個の異なるデバイスが接続された、イーサネット IPv4/UDP ネットワーク ベースの制御システム。これらのデバイスのうち 2 台をテストするためのテスト施設。他のデバイスをシミュレートするためのシミュレータ ソフトウェア。シミュレータ ソフトウェアを実行するための Windows 7 ベースのラップトップ PC 2 台。
各ソフトウェア シミュレーターは、初期化時に、PC の IP をシミュレートしているデバイスの IP に設定することになっています。以前はこれが機能していましたが、しばらく前の Windows セキュリティ更新以降、管理者権限で開いた場合でも、プログラムはこれを実行できなくなりました。さらに、シミュレーター ソフトウェアは最初の物理アダプターの最初の IP アドレス設定でのみ機能するため、複数のアダプターを使用したり、1 つのアダプターで複数の設定を使用したりしても機能しません。それ以来、シミュレートされたデバイスを変更するたびに、IP 設定を手動で変更する必要がありました。また、一度にシミュレートできる他のデバイスは最大 2 つだけなので、さらにシミュレートする必要がありました。
他の人のソフトウェアを再コーディングする以外の解決策が必要です (コードにはアクセスできますが、元のプログラマーにはアクセスできないため、数か月かかる可能性があります)。VirtualBox を使用して、各シミュレーター ソフトウェアをラップトップ上の独自の仮想マシンに配置することを検討しました。これを行うには 3 つの方法があると思いますが、どれが機能するかはわかりません。
複数の USB イーサネット ドングルをラップトップに接続します (デバイスごとに 1 つ)。各アダプターをシミュレートされたハードウェアの特定のアドレスに設定し、各仮想マシンを特定のアダプターに結び付けます。VirtualBox でこれを行う方法はわかっています。こうすることで、各仮想ボックスで、結び付けられたアダプターは、実際のマシンではそうでなくても、プログラムの最初のアダプターの最初の設定のように見えます。質問は、Windows 7 で使用できるイーサネット アダプターの数に制限があるかどうかです。大きな USB ハブと 18 個のドングルを接続すると、問題が発生すると思います。
少数のイーサネット ドングル (1 個または 2 個) を使用し、netsh を使用して各ドングルに複数の設定を設定します。各 VirtualBox を物理アダプタだけでなく特定の設定セットに結び付ける方法はありますか? もしあるとしても、その方法がわかりません。
イーサネット ドングルの数を減らし (1 個または 2 個)、Windows 7 の設定を変更せずに、各 VirtualBox 内の仮想コントローラーで異なる IP 設定を使用します。これは機能しますか? VirtualBox で設定された IP は、実際のネットワークに接続したときに使用されますか?
私は 2 番をやりたいです。可能であれば、どうすればいいでしょうか。不可能であれば、成功するための最善の道は何でしょうか。
答え1
3 番はうまくいきました。仮想マシンの「ネットワーク」設定で「ブリッジ アダプタ」を使用し、実際に使用されている物理ネットワーク アダプタにブリッジします。これを行うと、すべての IP のネットワーク ポートにトラフィックが入り、VirtualBox ホスト ブリッジ「アダプタ」がパケットを適切な VM にルーティングします。必要な物理ポートは 1 つだけでした。複数の VM をそれぞれ独自の仮想ポートに接続して実行できました。