大下さんちでシュークリームを作って食べました。
今回はカスタードクリームが若干粉っぽかったけど、シュー皮がうまくいってました。おいしかったです。
シュークリームというと難しそうなイメージがあったのですが、作り始めてからできあがるまで、2時間かからなかったです。材料もクッキーと大差ない(レシピによっては特殊な材料が入っているかも)ので、揃えるのも簡単です。
昼から作って3時のおやつに間に合う、お手軽おやつです。みなさんもいかが?
ある日、部屋のネットワークをシェア(ネットワークの契約や管理は私がやっています)している隣人から「インターネットに繋げない。」って言われました。うーん、何も変えてないぞ?
自分のデスクトップマシン(有線)で試すとインターネットに繋げました。プロバイダやVDSL回線は正常のようです。
隣人のPCは無線接続なので無線が原因?と考えて、手持ちの無線機器(VAIOとNintendo DS-i)で試してみました。結果VAIOは正常に通信できましたので、無線に問題はなさそうです。しかしDS-iはインターネットに接続できません。
VAIOとDSの差というと、VAIOは固定IP、DSはDHCPから動的割り当てに設定したくらいしか思い浮かびません。試しにDSに固定IPを振ってみると、DSからインターネットに接続できました。どうやらDHCPサーバがおかしくなっているようです。
しかしCTUのDHCPサーバ設定を見ても異常はないし、ログを見ても攻撃されている様子はないので、CTUが原因とは考えにくいです。他に起動しているのはデスクトップマシンくらいなものですから、デスクトップマシンが原因でしょう。おそらく。
デスクトップマシンを調べるとVirtualBoxが起動している時のみ、DHCPが192.168.56.xという変なアドレスを振ってくることがわかりました。仮想マシン内でLinuxを動かしていたのでそれが原因かと思いきや、仮想マシン内でWindows 2000を動かしても同じ症状が出ます。もしやVirtualBox自体が原因か?
調べるとVirtualBoxは独自のDHCPサーバを持っていることがわかりました(※1)。Host-only Adapterの先にあるネットワーク(つまりホスト - 仮想マシン間ネットワーク)からのアドレス要求に答えて、アドレスを割り当てるためです。
部屋のネットワークとVirtualBoxのホスト - 仮想マシン間ネットワーク
上図のように、CTUのDHCPサーバは192.168.1.1〜254のアドレスを割り当てます。またVirtualBoxのDHCPサーバはホスト - 仮想マシン間ネットワーク上の機器に、192.168.56.101〜254のプライベートアドレスを割り当てるように設定されています。
VirtualBoxのDHCPサーバが振るアドレスと、さきほど判明した変なアドレスが一致していますので、DSを困らせるDHCPサーバはVirtualBoxで間違いなさそうです。
(※1)VirtualBoxのDHCPサーバの設定は、
[ファイル] - [環境設定] - [ネットワークタブ] - [Host-only Adapterのリストから適切なものを選択] - [ドライバーマークのボタン] - [DHCPサーバータブ]
にあります。かなりわかりづらいです。
ホスト - 仮想マシン間ネットワーク用のDHCPサーバのはずなのに、部屋のネットワーク上にある機器にアドレスを振っているのはなぜでしょう?実は訳あって(※2)部屋のネットワークとホスト - 仮想マシン間ネットワークをブリッジしていたのです。
部屋のネットワークとVirtualBoxのホスト - 仮想マシン間ネットワーク、ブリッジ後
上図のように、部屋のネットワークと、ホスト - 仮想マシン間ネットワークをブリッジすると、VirtualBoxのDHCPサーバに部屋のネットワークからのアドレス要求が届いてしまいます。さらにVirtualBoxのDHCPサーバはCTUのDHCPサーバより早く応答していたため、部屋のネットワークからのアドレス要求に対してVirtualBoxのDHCPサーバの応答が優先されてしまうのです。
その結果、DSはVirtualBoxのDHCPサーバが割り振るアドレスを受け取り、ホスト - 仮想マシン間ネットワーク(青線)へ参加してしまいます。これは当然CTUのDHCPサーバが割り振るのアドレスとは異なりますので、DSは部屋のネットワーク(赤線)上のCTUと通信できず、インターネットへアクセスできないのです。
今回の教訓は、ネットワークをブリッジするときは、ブリッジする2つのネットワークに被害が出ないことを確認してからやりましょう、かな。
(※2)この時はBridge Adapterが何故か使えなかった(2009年4月29日の日記参照)ため、Host-only Adapterを一つ作って、デスクトップのネットワークインタフェースとWindowsのブリッジ機能でブリッジしていました。
幸いなことに今回のケースではVirtualBoxのDHCPサーバの応答速度が、CTUのそれに対して圧勝していたため、問題の発覚が早かったです。これがもし場合によってVirtualBoxのDHCPサーバが勝ったり負けたり、という状況だったら、さらに解析が困難でした。不幸中の幸い、でしょうか。
またVirtualBoxの話です。
VirtualBoxを2.2.0から2.2.2にバージョンアップした際に、何回やってもインストーラが失敗メッセージを出して終了してしまい、アップデートできません。症状を見るにRemoving Files... と出た後、何かが失敗してセットアップのRollbackが始まっているようです。
セットアップが削除したいファイルが使用中なのかなあ?と思って、Host-only Adapterを削除したり、Windowsの再起動直後にアップデートしたりしましたが、改善せず。何が悪いのやら?
もう2.2.0をアンインストールするしかないかなあと思いつつ、最後にダメもとでVirtualBox 2.2.0の修復セットアップを行った(私の環境ではWindowsの再起動が必要でした)後、2.2.2へのアップデートを行ったところ無事アップデートできました。
今までMicrosoft Officeくらいでしか修復セットアップを試したことがなくて、しかも大抵失敗するだけで何の役にも立たないイメージだったのですよ。今日、初めて修復セットアップが役立ったというか、きちんと動作したことに感動しました。
で、感動はさておき、古いセットアッププログラムが手に入らない場合は、素直に2.2.0をアンインストールしてから、2.2.2を新規にインストールすればうまくいくと思います。
家ではVirtualBoxを使って、デスクトップに仮想Linuxマシンを作っています。
VirtualBoxはバージョンアップの際に設定ファイルを勝手に引き継ぐので、バージョンアップの際に再設定などは必要ありません。今使っている設定ファイルも1.xの時代から使ってきたものです。
しかし最近はネットワーク周りの変更で良く引っかかります。
以前VirtualBoxを2.2.0にバージョンアップした際に、どういうわけか今まで使っていたBridged Adapter(※1)が使えなくなってしまって、仕方なくHost-only Adapter(※2)に変更しました。
で、最近2.2.2にバージョンアップしたら、またBridged Adapterが使えるようになっていました。何でだろう。使えるのか使えないのか、良くわからん…。
(※1)VirtualBoxがホストのネットワークインタフェースと仮想マシンのネットワークインタフェースをブリッジする方法。Windowsのブリッジ機能とは違います。
(※2)仮想マシンのネットワークインタフェースと通信するためのインタフェースを新たに作成する方法。Windowsのブリッジ機能で、ホストマシンのネットワークインタフェースとHost-only Adapterをブリッジすると、Bridged Adapterでやっていたこととほぼ同等のことができます。
< | 2009 | > | ||||
<< | < | 05 | > | >> | ||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
- | - | - | - | - | 1 | 2 |
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 | - | - | - | - | - | - |
合計:
本日: