這是設定
基於乙太網路 IPv4/UDP 網路的控制系統,連接有 20 個不同的裝置。用於測試其中 2 個設備的測試設施。模擬器 用於模擬任何其他設備的軟體。兩台基於 Windows 7 的筆記型電腦,用於運行模擬器軟體。
每個軟體模擬器在初始化時,都應該將PC的IP設定為它所模擬的裝置的IP。這曾經有效,但在不久前的 Windows 安全性更新之後,即使使用管理員權限開啟該程序,也無法執行此操作。此外,模擬器軟體僅適用於第一個實體適配器的第一個 IP 位址設置,因此在一個適配器上使用多個適配器甚至多個設定將無法運作。此後,每次更改模擬設備時,我都被迫手動更改 IP 設定。另外,我一次只能模擬最多兩個其他設備,我需要模擬更多設備。
我需要一個無需重新編碼別人的軟體的解決方案(我可以存取程式碼,但不能存取原始程式設計師,因此這可能需要幾個月的時間)。我考慮過使用 VirtualBox,並將每個模擬器軟體放在筆記型電腦上自己的虛擬機器中。我想到了三種可能可以做到這一點的方法,但不確定哪一種可行。
將多個 USB 轉乙太網路轉接器連接到筆記型電腦,每個裝置一個。將每個適配器設定為模擬硬體的特定位址,並將每個虛擬機器綁定到特定適配器,我知道如何在 VirtualBox 中執行此操作。這樣,在每個虛擬框中,綁定的適配器看起來就像程式的第一個適配器的第一個設置,即使在實際電腦上並非如此。問題是 - Windows 7 上可以擁有的不同乙太網路適配器的數量是否有限制?我在想如果我放一個大的 USB 集線器和 18 個轉接器,我一定會遇到問題。
使用較少數量的乙太網路加密狗(1 或 2 個),並使用 netsh 對每個加密狗進行多項設定。有沒有辦法將每個 VirtualBox 綁定到一組特定的設置,而不僅僅是實體適配器?如果是這樣,我不知道該怎麼做。
使用較少數量的乙太網路轉接器(1 或 2 個),請勿更改 Windows 7 中的任何設置,但在每個 VirtualBox 內的虛擬控制器上使用不同的 IP 設定。這行得通嗎? VirtualBox中設定的IP到真實網路時會被使用嗎?
我更願意做#2。如果可以的話我該怎麼做?如果沒有,我成功的最佳途徑是什麼?
答案1
3 號有效。在虛擬機器的「網路」設定中使用「橋接適配器」並橋接到正在使用的實際實體網路介面卡。執行此操作時,流量將進入所有 IP 的網路端口,並且 VirtualBox 主機橋接器「適配器」將封包路由到適當的虛擬機器。只需要一個實體連接埠。我已經能夠運行多個虛擬機,所有虛擬機都綁定了自己的虛擬連接埠。