ホストのポート80からのすべての着信トラフィックをqemu VMのポート80に転送するIPtablesルールを作成できますか?
qemuはこれらのシナリオを実装できますか?
答え1
はい、実際にはプライベートテスト環境でこれを行います(自宅のPCのQEMU-KVM VMにアクセスできる公開Webサイトがあります)。
デフォルトでは、VMにネットワークアクセス権がある場合は、ルーティングの問題のみを処理できます。
さまざまな種類の設定をテストするために、私のVMにいくつかの偽の会社「部門」を設定しました。各環境には、特定のvirbr *デバイスをマウントする独自のサブネットがありました(virbr1はWebサイトVMの仮想インターフェイスですが、インターフェイス番号は明らかに異なります)。
この時点では、ハイパーバイザーだけがそのIPアドレスにアクセスできる物理コンピュータをNATするように処理できます。
私のインターネットルーターはポート80をハイパーバイザーに転送し、ハイパーバイザーはNATのポート80をKVMに関連付けられたプライベートIPに転送します。
-A PREROUTING -d 192.168.1.9/32 -i eth0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 10.0.1.9:80
192.168.1.9は私のハイパーバイザーのIPアドレス、10.0.1.9はApacheを実行している仮想マシンのIPアドレスです。
答え2
簡単な解決策:
qemu --enable-kvm -boot d image.vdi -m 1000 -redir tcp:80::80