![仮想マシンのホスト専用ネットワークを介してスイッチを接続する](https://rvso.com/image/1555383/%E4%BB%AE%E6%83%B3%E3%83%9E%E3%82%B7%E3%83%B3%E3%81%AE%E3%83%9B%E3%82%B9%E3%83%88%E5%B0%82%E7%94%A8%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF%E3%82%92%E4%BB%8B%E3%81%97%E3%81%A6%E3%82%B9%E3%82%A4%E3%83%83%E3%83%81%E3%82%92%E6%8E%A5%E7%B6%9A%E3%81%99%E3%82%8B.png)
私は Mac OS High Sierra を実行している Mac Book を持っています。これは、Ubuntu 16.04 を実行している 3 台の仮想マシンのホストです。すべての VM で、NAT とホストオンリーの 2 つのアダプタが有効になっています。Mac はスイッチ経由で別のホストに接続されています。VM は調整を行い、ラップトップに接続されたスイッチの反対側のホストで利用できるようにしたいサービスを提供します。
en8
192.168.57.0 192.168.57.200 192.168.57.100 /---|VM1| 192.168.56.3
|------------| /--------------\ |--------------| /
| Host1 |--| switch |--| Host2 |------|VM2| 192.168.56.4
|------------| \--------------/ |--------------| \
192.168.56.1 \---|VM3| 192.168.56.5
vboxnet0
ホストはサブネット 上にあります。ラップトップは、IP アドレス の192.168.57.0\24
インターフェースを介してスイッチに接続されています。ラップトップとスイッチは相互に ping を実行できます。en8
192.168.57.100
192.168.56.1
Mac OS は、インターフェイス上のゲートウェイを介して VM に接続されますvboxnet0
。VM は相互に、またホストに ping を実行できます。ホストは各 VM と通信できます。
VM がスイッチを制御できるようにしたいので、スイッチから VM へ、また VM からスイッチへトラフィックを接続するルーティング ルールを設定する必要があります。これを行うには、Mac をルーターのように使用したいと思います。
私はここで Jeff Warren の例に従ってみました:Virtualbox: 別々のホスト上のホストオンリーネットワークの接続ですが、私の場合には機能しません。
具体的には、次のことを試しました...
sudo route -n add -net 192.168.56.0/24 192.168.57.100
しかし、これは機能しませんでした。ファイルが既に存在するというメッセージが表示されました。
VM からスイッチを構成できるようにする方法についてのアイデアがあれば、ぜひ教えてください。ありがとうございます。
VM をスイッチと同じ論理サブネットに配置するなどの他のアプローチも試しました。ただし、これを行うと、VM とホスト間の通信が失われました。また、ホストのみではなくブリッジ ネットワークの使用も試みましたが、これも機能しませんでした。
答え1
VM 上の 192.168.56.0/24 インターフェースがホストのみ (つまり NAT ではない) であると仮定します。
MAC (host2) にはルートは必要ありません。これは、両方の /24 に直接接続できる唯一の MAC だからです。VM がこのルートを経由してスイッチに到達し、スイッチもこのルートを経由して VM にアクセスする必要があります。
VM では、「ip route add 192.168.57.0/24 via 192.168.56.1」を実行すると問題が解決するはずです。
スイッチ上では、必要な構文は何でも構いません。おそらく、ホスト 2 をデフォルト ゲートウェイ (@192.168.57.100) にするためです。