virt-managerでGentooゲストを設定しましたが、ホストからSSHに接続できませんでした.私はqemuを使用してゲストコンピュータのポートにアクセスするためにいくつかのポート転送を実行する必要があることを読んでいます。 virt-manager にはオプションがありません。これがどのように可能ですか?
Ubuntu 16.10でVirt Manager 1.3.2を使用しています。
答え1
Web のどこかにこれを文書化するには:
約2年後、関連するQEMUパラメータをKVM XMLファイル(すべてのクールな仮想化foo構成が裏面に保存されている)に手動で追加することでこれを行うことができました。
以下は、ユーザーネットワークにポート転送権限を付与するために実行した手順です。私の場合は、ホストのポート22222をゲストのポート22に転送します。
ここではシミュレートされたマシンをubuntu18.04と呼びます。
virsh で編集する XML 構成を開きます。
$ virsh -c qemu:///session edit ubuntu18.04
「ユーザー」タイプインターフェースの構成を見つけて削除すると、次のようになります。
<interface type='user'> <mac address='52:54:00:52:35:ff'/> <model type='rtl8139'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface>
(ルート)ドメインタグにQEMU名前空間を追加します。
<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
現在欠落しているインターフェイス設定をドメインタグ内のどこかにQEMUパラメータとして手動で追加します(たとえば、最後の子要素として
<domain>
)。<qemu:commandline> <qemu:arg value='-netdev'/> <qemu:arg value='user,id=mynet.0,net=10.0.10.0/24,hostfwd=tcp::22222-:22'/> <qemu:arg value='-device'/> <qemu:arg value='rtl8139,netdev=mynet.0'/> </qemu:commandline>
設定を保存し、仮想マシンを起動/再起動します。
SSH 休暇:
ssh myusername@localhost -p 22222
答え2
私の理解は正反対です。 libvirt VMのネットワークデバイスが接続するように設定されている場合は、virbr0
ホストからアクセスできる必要があります。
libvirtはこれを「ブリッジ」ネットワークと呼びます。ネットワークデバイスの別のオプション(このオプションは機能しません)を「ユーザー」ネットワークと呼びます。これがあなたの問題ではない場合は、追加情報を提供する必要があります。
詳しくはこちらをご覧ください。http://xkahn.zoned.net/blog/2013/11/26/networking-and-gnome-boxes
Arch Linux Wiki提案仮想スイッチ^ Wbridgeはvibr0
libvirtデーモンのデフォルト構成の一部であるため、VMがそれを使用するように構成されていることを確認するだけです。彼らはまた次につながります。詳細案内。についてはvirbr0
、」をご覧ください。NATベースのネットワーク」
答え3
libvirtユーザーネットワークは利用可能です渡すデフォルトのSLIRPの代わりに送信バックエンド。
このバックエンドを使用するときは、この要素を使用してVMドメインXMLファイルから直接ポート転送を構成できます。
仮想マシンのXMLを編集するには、virsh edit name_of_your_vm
それを使用してエディタでファイルを開きます。
たとえば、ホストTCPポート4022をクライアントポート22に転送するには、次の構文を使用できます。
...
<devices>
...
<interface type='user'>
<backend type='passt'/>
<mac address='00:11:22:33:44:55'/>
<portForward proto='tcp'>
<range start='4022' to='22'/>
</portForward>
</interface>
...
</device>
...
また、複数の連続ポート転送をサポートします。
<portForward proto='tcp'>
<range start='31200' end='31300' to='6000' />
</portForward>
将来のUDPポート
<portForward proto='udp'>
<range start='15055' to='5055' />
</portForward>
詳細な使用方法と例については、以下を参照してください。アップストリーム文書