qemuでゲストオペレーティングシステムのIPアドレスを確認する方法は?

qemuでゲストオペレーティングシステムのIPアドレスを確認する方法は?

qemuでWindows XPが起動した後、DHCPサーバーから割り当てられたIPを取得します。私の質問は - Windows XPに接続できるようにWindows XPが割り当てたIPをどのように確認しますか?

私の設定の詳細は次のとおりです。

私はdnsmasqtun0インターフェイスで実行しています。 10.10.10.0/24の範囲のIPを提供するように設定しました。私は-net tunqemuを使います。 Windows XPの複数のゲストインストールを実行するため、静的IPアドレスは使用できません。

ベストアンサー1

一般的なアプローチはQemuゲストエージェント特定のコマンドを実行し、ゲストネットワーク取得インターフェースネットワーク設定を取得します。

これを行うには、まずゲストエージェントソケットを仮想マシン構成に追加する必要があります。 Qemuは次のように実行する必要があります。

qemu-system-x86_64 ... \
 -device virtio-serial,id=qga0 \
 -device virtserialport,chardev=qga0,name=org.qemu.guest_agent.0 \
 -chardev socket,path=base.qga,server=on,wait=off,id=qga0 \
...

base.qgaこれにより、現在のディレクトリにソケットファイルが作成されます。その後、を使用してこのソケットに接続できますが、socat便宜上(コマンドラインの編集と履歴)、次のようにラップすることをお勧めしますrlwrap

rlwrap socat STDIO UNIX:base.qga

ゲストオペレーティングシステムでは、virtioドライバISOイメージとして提供されるシリアルVirtIO(準仮想化)ドライバとゲストエージェントサービスをインストールする必要があります。 LinuxオペレーティングシステムのFedora VirtIO Windowsドライバプロジェクトから入手でき、すべての主要ディストリビューションのデプロイメントリポジトリにあり、Qemuソースコードから直接ビルドすることもできます。

ゲストエージェントはホスト(ハイパーバイザー)とVM間の通信のための強力な方法であり、他の仮想化技術も同様の統合機能(VMWare Additions、VirtualBox Additionsなど)をエージェントに提供します。 Qemuゲストエージェントを使用すると、ゲスト仮想マシンに関するさまざまな情報を取得するだけでなく、いくつかのコマンドを実行して設定することもできます。 Proxmox VEはDebianとQemuに基づいており、ゲストエージェントを使用してバックアップやその他のエンタープライズレベル機能を実行する前にディスクを固定します。

おすすめ記事