ルーター 192.168.1.1 の背後にホーム ネットワーク 192.168.1.0 があります。既存の Linux および Windows ホストのセットがこのネットワーク上にあり、そのほとんどは有線イーサネット接続です。KVM ハイパーバイザーと 3 つの Debian ゲストを実行する新しいサーバーを構成しています。新しいサーバーはネットワーク接続に Wi-Fi を使用します。
ハイパーバイザーでは、virsh
次のように仮想ネットワークを構成していました。
<network>
<name>virtual</name>
<forward mode='route'/>
<ip address='192.168.2.1' netmask='255.255.255.0'>
<dhcp>
<range start='192.168.2.2' end='192.168.2.255'/>
<host mac='52:54:00:00:00:01' ip='192.168.2.2'/>
<host mac='52:54:00:00:00:02' ip='192.168.2.3'/>
<host mac='52:54:00:00:00:03' ip='192.168.2.4'/>
</dhcp>
</ip>
</network>
次に、ルーターに 192.168.2.0/24 からハイパーバイザーの IP アドレス 192.168.1.41 への静的ルートを作成しました。
Debian ゲストを作成したときに、仮想ネットワーク名と仮想ネットワークの MAC アドレスをvirsh
次のように指定しました。
--network network=virtual,mac=52:54:00:00:00:01
これにより、/etc/network/interfaces
各ゲストで次のようになります。
iface eth0 inet static
address 192.168.2.2
netmask 255.255.255.0
network 192.168.2.0
broadcast 192.168.2.255
gateway 192.168.2.1
この構成では、ほとんどすべてが機能します。次のことが可能です。
- 192.168.1.0 のホストから両方のハイパーバイザー IP アドレス (.2.1 と .1.41) に接続します。
- 192.168.1.0のホストから各ゲストに接続する
- ハイパーバイザーから各ゲストに接続する
- 各ゲストからハイパーバイザー(.2.1)および他の各ゲストに接続します
- 各ゲストからパブリックインターネットに接続する
- ルータから個々のゲストに外部(インターネット)接続を転送する
しかし、私はできないゲストから 192.168.1.0 ネットワーク上の任意のホストに接続します。たとえば、192.168.2.2 から 192.168.1.31 に ssh することはできません。
A はtraceroute
次のようになります:
traceroute to 192.168.1.31 (192.168.1.31), 30 hops max, 60 byte packets
1 sol (192.168.2.1) 0.295 ms 0.252 ms 0.243 ms
2 * * *
3 * * *
4 * * *
5 * * *
6 * * *
設定が間違っているのか、ワイヤレス アクセス ポイントに問題が発生しているのかはわかりません。
設定を追加してみましたebtables
(議論したようにここ) を使って MAC 変換を行おうとしましたが、違いはありませんでした。 の外部に別のブリッジ ネットワーク デバイスを追加しようとしましたvirsh
が、既存の仮想デバイスを他のブリッジに接続することはできません。virsh
フィルターや iptables ルールなどの他のオプションも検討しましたが、どうにもなりません。
これにアプローチする正しい方法を提案してくれる人はいますか?