今回は、TAPをネットワークブリッジで接続する方法を試してみます。
Windows Vistaの場合は、
基本的には、ネットワーク ブリッジを作成する - Windows Vistaヘルプを参考にすれば良いと思います。
coLinux wikiでは、 Software Bridge と呼んでいますが、日本語の呼び方は「ネットワーク ブリッジ」のようです。また、Windows の「ネットワーク接続」で現れるアイコンを右クリックしたときの、メニューの中の「ブリッジ接続」を使うので、そう呼んでいる場合もあるようです。
この場合 coLinux は、WinPcapと同様に Windows マシンと同一ネットワーク上にあると見なせますから、外部のDHCPサーバ(例えばブロードバンドルータ)が利用できます。
早速、設定してみます。
最初に Windows Vista で、「ブリッジ接続」を行います。
そのためには、
「ネットワーク接続」ウィンドウで、
「ローカル エリア接続」と「ローカル エリア接続 2」をコントロールキーを押しながら選択し、
「ローカル エリア接続 2」を右クリックして、メニューから「ブリッジ接続」をクリックすると、
ウィンドウの画面の中で「ネットワークブリッジ(3)」が分離して、そちらに
「ローカル エリア接続」と「ローカル エリア接続 2」とが移動し、
「ネットワークブリッジ」アイコンが新たに作成されます。
この「ネットワークブリッジ」アイコンを右クリックして、メニューから「状態」をクリックして現れる、
「ネットワーク ブリッジの状態」ウィンドウで、「詳細」をクリックすると、
物理アドレス(MACアドレス)が、02-FF-AF-xx-xx-xx
IPアドレスが、192.168.1.231 (外部のDHCPサーバによる)
となっています。
もともとの、[ローカル エリア接続](Marvell Yukon 88E8039) は、
MACアドレスが 00-A0-D1-xx-xx-xx
IPアドレスが、192.168.1.206(外部のDHCPサーバによる)
ですから、Windows Vista 側のMACアドレスが変更されてしまいました。仕様としてどうかと思いますが、Windowsですからよくあることです。
これが許されない場合は、この接続は問題ですね。
ちなみに、私のDHCPサーバも、MACアドレスが登録してあるので、Windowsマシンが別のIPアドレスになってちょっとこまります。
この問題が無視できるなら、前に作った Fedora-10.bat を実行します。
colinux-daemon.exe kernel=vmlinux initrd=initrd.gz mem=256
cobd0="C:/coLinux/Fedora-10.img" cobd1="C:/coLinux/swap.img" root=/dev/cobd0
eth0=tuntap ro
ところが、今回のテストでは、ネットワーク接続が失敗しました。
eth0 の代わりになぜか eth1 で認識されています。手動で設定してみると、
となって、ネットワークに接続できます。
eth0 が eth1 になったのは、coLinux 0.6.3 では動かなかった udev のせいです。udev が、MACアドレスを見て、eth1 に名前を変えたからです。今まであまりにネットワークのテストをしていたので、MACアドレスがいつのまにか udev の設定ファイルに登録されていたからです。
こういう場合は、MACアドレスを最初から指定してあげれば良いわけです。つまり、udev の設定を見ながら、
colinux-daemon.exe kernel=vmlinux initrd=initrd.gz mem=256
cobd0="C:/coLinux/Fedora-10.img"
cobd1="C:/coLinux/swap.img" root=/dev/cobd0
eth0=tuntap,,00:FF:38:40:03:03 ro
みたいにすれば解決します。
Windows Vistaの場合は、
基本的には、ネットワーク ブリッジを作成する - Windows Vistaヘルプを参考にすれば良いと思います。
coLinux wikiでは、 Software Bridge と呼んでいますが、日本語の呼び方は「ネットワーク ブリッジ」のようです。また、Windows の「ネットワーク接続」で現れるアイコンを右クリックしたときの、メニューの中の「ブリッジ接続」を使うので、そう呼んでいる場合もあるようです。
この場合 coLinux は、WinPcapと同様に Windows マシンと同一ネットワーク上にあると見なせますから、外部のDHCPサーバ(例えばブロードバンドルータ)が利用できます。
早速、設定してみます。
最初に Windows Vista で、「ブリッジ接続」を行います。
そのためには、
「ネットワーク接続」ウィンドウで、
「ローカル エリア接続」と「ローカル エリア接続 2」をコントロールキーを押しながら選択し、
「ローカル エリア接続 2」を右クリックして、メニューから「ブリッジ接続」をクリックすると、
ウィンドウの画面の中で「ネットワークブリッジ(3)」が分離して、そちらに
「ローカル エリア接続」と「ローカル エリア接続 2」とが移動し、
「ネットワークブリッジ」アイコンが新たに作成されます。
この「ネットワークブリッジ」アイコンを右クリックして、メニューから「状態」をクリックして現れる、
「ネットワーク ブリッジの状態」ウィンドウで、「詳細」をクリックすると、
物理アドレス(MACアドレス)が、02-FF-AF-xx-xx-xx
IPアドレスが、192.168.1.231 (外部のDHCPサーバによる)
となっています。
もともとの、[ローカル エリア接続](Marvell Yukon 88E8039) は、
MACアドレスが 00-A0-D1-xx-xx-xx
IPアドレスが、192.168.1.206(外部のDHCPサーバによる)
ですから、Windows Vista 側のMACアドレスが変更されてしまいました。仕様としてどうかと思いますが、Windowsですからよくあることです。
これが許されない場合は、この接続は問題ですね。
ちなみに、私のDHCPサーバも、MACアドレスが登録してあるので、Windowsマシンが別のIPアドレスになってちょっとこまります。
この問題が無視できるなら、前に作った Fedora-10.bat を実行します。
colinux-daemon.exe kernel=vmlinux initrd=initrd.gz mem=256
cobd0="C:/coLinux/Fedora-10.img" cobd1="C:/coLinux/swap.img" root=/dev/cobd0
eth0=tuntap ro
ところが、今回のテストでは、ネットワーク接続が失敗しました。
# ifconfig -a eth1 Link ....................... ....................... lo Link ....................... ....................... #
eth0 の代わりになぜか eth1 で認識されています。手動で設定してみると、
# ifconfig eth1 192.168.1.101 # # ifconfig eth1 eth1 Link encap:Ethernet HWaddr 00:FF:78:08:04:00 inet addr:192.168.1.101 Bcast:192.168.1.255 Mask:255.255.255.0 .................... #
となって、ネットワークに接続できます。
eth0 が eth1 になったのは、coLinux 0.6.3 では動かなかった udev のせいです。udev が、MACアドレスを見て、eth1 に名前を変えたからです。今まであまりにネットワークのテストをしていたので、MACアドレスがいつのまにか udev の設定ファイルに登録されていたからです。
こういう場合は、MACアドレスを最初から指定してあげれば良いわけです。つまり、udev の設定を見ながら、
colinux-daemon.exe kernel=vmlinux initrd=initrd.gz mem=256
cobd0="C:/coLinux/Fedora-10.img"
cobd1="C:/coLinux/swap.img" root=/dev/cobd0
eth0=tuntap,,00:FF:38:40:03:03 ro
みたいにすれば解決します。
※コメント投稿者のブログIDはブログ作成者のみに通知されます