オプションは次のとおりです。
-net nic -net tap,ifname=my-tap
ifnameをTapの名前をセットするのに使ってください。
my-tapは、自分のTAP-Win32 Adapterの名前です。
NE2000 PCI、RTL8139、PC-NET、NE2000 ISAのネットワークカードを使うことができます。
こちらを見て下さい。
-net nic -net tap,ifname=my-tap
-net nic,model=rtl8139 -net tap,ifname=my-tap
-net nic,model=pcnet -net tap,ifname=my-tap
-M isapc -net nic -net tap,ifname=my-tap
OpenVPNのOpenVPN ver.2.0を使ってください。Windows 2000/XPがサポートされますが、Windows 98/Meでは使えません。nameは、コントロールパネルのネットワークとダイアルアップ接続のTAP-Win32 Adapter V8の接続名です。もし、ローカルエリア接続2とか3になっていたら名前を変えてください。
こうすることでも確認できます。
[Dos Prompt] openvpn --show-adapters
Available TAP-WIN32 adapters [name, GUID]:
'my-tap' {xxx-yyy-zzz}
そして、my-tapのプロパティーからIPアドレスを設定します。
![]() |
![]() |
![]() |
以下のように使います。
[Dos Prompt] qemu.exe -L .\pc-bios -hda .\linux.img -net nic -net tap,ifname=my-tap
プログラムが動いていないときは、このようなアイコンが表示されますが、プログラムが動くと消えます。
![]()
このとき、ホストOS(Windows2000/XP)で、ipconfig /allは次のようになります。

ゲストOSとしてLinuxを使う場合は、次のように設定します。
guest OS# modprobe ne2k-pci
guest OS# ifconfig eth0 192.168.200.11
guest OS# route add default gw 192.168.200.10 eth0
guest OS$ ping 192.168.200.10
ホストOSからもpingは使えるはずです。
host OS$ ping 192.168.200.11
Tap Adapterは、有効/無効を切り替えることができます。Tap Adapterのアイコン上で右クリックをして、有効にする/無効にするを選んでください。パソコンを再起動する必要はありません。プログラムの実行前に有効にしてください。
ホストOSがWindows 2000だと、インターネットを見るのは手間がかかります。Windows XPのほうが簡単です。インターネット接続共有機能Internet connection Sharing(ICS)を使ってください。
まず、ICSを使う場合、TapアダプタのIPアドレスは、強制的に192.168.0.1になります。そのため、インターネットとの接続にルーターを用いて、ルーターを192.168.0.1にしているとネットワークが使えなくなります。まず、ルーターの設定を192.168.1.xなどのネットワークを用いるよう設定してください。
次に、現実のアダプタ上で右クリックをして、プロパティを選びます。共有タブの画面にして、共有を使用可能にするにチェックをいれて、OKを押します。すると、TapアダプタのIPアドレスが設定されます。
![]() |
![]() |
1つのTap for Win32 Adapterと2つのゲストOSを使います。
ICS
Redhat1 NE2000 ----------- Host TAP --------- Host NIC -------- Router------ Internet
192.168.0.2 | 192.168.0.1 192.168.100.2 192.168.100.1
| (fixed) (DNS server)
Redhat2 NE2000
192.168.0.3
インターネットに接続するには、ICSを使う必要があります。上記を見てください。Tap for Win32のIPアドレスは、192.168.0.1に固定されます。
term1$ qemu -L ./pc-bios -hda redhat1.img -net nic -net tap,ifname=my-tap
-net socket,listen=localhost:1234
term2$ qemu -L ./pc-bios -hda redhat2.img -net nic,macaddr=52:54:00:12:34:01
-net socket,connect=localhost:1234
2つめのゲストOSでは、macaddrを指定する必要があります。Redhat1 guest> ifconfig eth0 192.168.0.2 Redhat1 guest> route add default gw 192.168.0.1 eth0 Redaht2 guest> ifconfig eth0 192.168.0.3 Redhat3 guest> route add default gw 192.168.0.1 eth0そして、それぞれのゲストOSで、DNSのサーバーを/etc/resolve.confに設定します。
nameserver 192.168.100.1Windows 98ゲストの場合
![]() |
![]() |
![]() |
![]() |
ZoneAlarmを使うと、pingが使えませんでした。ファイアーウォールソフトが通信をブロックするかもしれません。
物理ネットワークと同じネットワークアドレスを使わないでください。
たとえば、物理ネットワークが192.168.0.xのとき、異なったネットワーク192.168.10.yを使ってください。