目次
前のページ
2006-12-14 Wii
2007-03-04 サーバー故障
2007-06-13 大人買い
2007-07-09 サーバー落ちていました
2007-07-13 サーバー交換
2007-08-01 SPAM 対策
2008-01-30 Advanced [es] 購入
2008-06-19 ルータ変更
2008-09-26 サーバー故障
2008-11-05 忙中閑有
2008-11-13 CMS
2008-12-19 お掃除ロボット
2009-03-23 携帯の絵文字
2009-06-05 デバッグ思考
2009-07-23 ゲーム解禁
2009-10-09 テレビゲーム
2009-11-22 Netwalker 買った。
2009-11-23 Netwalker いじってみた。
2009-11-30 fon 導入
2009-12-05 google DNS
次のページ
先ほど、「実はWii買ってたよ」と書いたので、ついでに少し触れておきます。
このゲーム機、賛否両論あって妙に加熱しちゃっているところもあり、レビューなんかも出尽くしているのであまり書く気は無かったんですけどね。
僕は以前ゲーム作成の仕事をしていたので、作成側の立場の気持ちが良くわかります。
で、PS3 と Wii では、Wii の方が「作成側に」共感できる人が多い気がします。
僕も共感できるので、発売を心待ちにしていました。
春に発売予定だったのに、半年も延びましたからね。
「ハイビジョンでない」ことにがっかりしている人もいます。
まぁ、気持ちはわからんではないです。PS3 の映像、実際綺麗ですし。
でも、綺麗な画像を作るのには非常に労力=コストがかかるので、作成側としてはそれを避ける、という選択も良くわかります。
ボタンの数が非常に少ないことを気にしている人もいます。
実際、ボタンの数が多いから成立するゲームもあります。
でも、大多数のゲームは、ボタンの数と面白さは無関係です。
思い切って割り切ってしまったのは悪い選択ではないと思います。
代わりに「ポインタ」と「加速センサー」という新たなスイッチが付いているわけで、「ボタンが多くないと遊べない面白いゲーム」がでない代わりに「ポインタがないと遊べない面白いゲーム」がでてくる可能性は十分にあります。
結局、細かなことを気にするくらいゲームがすきな人は、Wii と PS3 の両方買っちゃえばいいんでしょう。
ちなみに、僕は PS3 はまだ入手していません。そのうち買うと思いますが、様子見です。
実は、同時発売のゲームよりも、内蔵ソフトに大きな期待をしていました。
子供がいるとなかなかゲームは遊べないのですが、気軽に天気予報を見られたり、居間でインターネットが出来るのはありがたいですから。
…でも、現時点でまだ提供されていないんですよね。そういう意味では、ちょっと期待はずれというか、肩透かしを食らった感じ。
これは、サービス提供を待つしかないです。
写真チャンネルも期待していました。
子供が、デジカメ写真見るの好きなんですよね。2歳3ヶ月なのでまだあまり「記憶」を自由に操れないようですが、写真を見ると思い出すようで「みんなで遊んだ」とか「ケーキ食べた」とか言っています。
で、なにかイベントがあって写真を取ってきたら、wii 伝言板に貼っておく。
伝言板はカレンダー機能を持っているので、思い出帳の出来上がりです。
#昨日、友人と食事を食べた写真は、友人のwii の「結婚おめでとう」のメッセージとともに送りつけて起きました。
こういう遊びも含めて、伝言板機能は期待していた以上の出来です。
あまりみんな気づいていないようですが、写真チャンネルの「パズル」機能が期待以上に面白いです。
写真を分割して組み立てなおすだけの、単純なパズルなんですけどね…
ネットでの評判を見ても、「あくまでもオマケ」と言っている人が多いんですけどね…
でも、このパズルの真価は「動画でもパズルに出来てしまう」ことにあります。
動画でパズル、といえば、知っている人はすぐに思い出す、ファミコンディスクの「きね子」。
多少違いはありますが、ほぼ同じようなゲーム。しかも、きね子では10種類、続編も含めて20種類しかなかった動画が、自分で実写でいくらでも作れてしまうのです。
十字ボタンではなく、「ポインタ」での操作の快適さとあいまって、これは想像以上に楽しいゲームでした。
動画によって難易度が左右されるので、wii を購入した人はいろんな動画で試してみてください。
同じテーマの日記(最近の一覧)
別年同日の日記
09年 「その文字」はインターネットで使ってはいけないのか?
申し訳ありませんが、現在意見投稿をできない状態にしています。 |
この WEB サイトを公開しているサーバーが壊れた。
調子がおかしい、と気づいたのは3月1日、木曜日の夕方。
必要があってプログラムのインストールをしようとしていたら、kernel panic を起こしてハングアップした。
一旦再起動するも、2〜3時間したらまた panic を起こしていた。
なんかおかしいなぁ、と感じつつも、子供の夕食もあるし、お風呂にも入れないといけないので手を付けられず。
子供がやっと寝た10時半頃、本格的な復旧作業に着手する。
まずは fsck 。ファイルシステムのチェックだ。
しかし、この最中にも panic。どうもハードディスクがおかしそう。
SMART のレポートを見る限り、物理的に壊れている様子はないので、どこかのデータが飛んだか?
このサーバー、半年前に作ったばかりだったので、まだ油断してバックアップとっていなかった…
覚悟して、別のマシンを用意。OS インストールを開始する。
徹夜も覚悟。妻には先に寝ていてもらう。
実の所、ここしばらく忙しくて寝不足気味。ここで徹夜はこたえる。
2月の上旬から徐々に忙しくなり始め、睡眠時間を削って仕事をしていた。
…が、2月17日に熱を出して倒れる。風邪ではなく過労だったようで2日で回復したが、無理は良くないと反省。
しかし、反省の甲斐なく仕事をしていたところ、26日にもまた熱を出して倒れる。
今週はもう、無理はしない、と決めて仕事もスローダウンしていたところに、このサーバートラブル…
深夜0時ごろインストールを開始して、CD からのインストール終了が 1時くらい。そこから、ネットワーク経由で update をかけ、終了が2時半くらい。
(ここまでの間は、待つ以外ないので Wii のゼルダをやりながら待つ)
GD , PHP , daemontools , qmail , qmail-pop3d , ezmlm+idx , djbdns など、コンパイルしないとどうしようもないソフトを次々コンパイル。
その間に、設定ファイルを書いたり、次のソフトのコンパイルに備えて主要ソースをダウンロードしたりと大忙し。
必要ソフトが揃ったのが明け方 5時くらい。しかし、なぜかうまく動かない。
少なくとも、メールは動かないと周囲に迷惑がかかる。
…qmail の設定ファイルの書きかたが少し悪かったことに気づいてメールがうまく動作し始めたのが 7時過ぎ。
ここで一旦タイムアップ。子供が起きてきた。
子供に食事をさせた後、眠い…と思っていたが、先に妻がダウン (^^;;
隣の部屋で作業をしていたので、気になってよく眠れなかったらしい。僕のせいでもあるので、妻を寝かせて子供と遊ぶ。
午前中の散歩を済ませ、昼ごはんを食べたら子供は昼寝した。
子供を寝かしつけながら30分ほど寝てしまったが、それで眠気が取れたので作業再開。
調べてみると、メールがちゃんと受け取れいていない。少し設定ファイルをいじったら正常になった。
続けて ezmlm の設定。これは、qmail を使ったメーリングリストサーバーだ。
友人グループの ML をいくつか面倒見ているのだが、これは以前の設定がないとメールアドレスがわからない人もいる…
以前のサーバーを、Install CD の Rescue モードで起動したところ、ML のファイルは全部引き出すことが出来た。
これを使って、ML の設定はすぐ終了。
これで、メール関連は完全復旧。
子供を昼寝から起こす時間になったので、ここで一旦終了。
この後、夜はさすがに疲れて子供より先に寝てしまったので、作業は土曜日に持ち越し。
3月3日、土曜日。
子供は近所の保育園の「ひな祭り会」に誘われていたので、妻とお出かけ。
#まだ保育園には入っていないが、一時保育を頼んでいる関係と、来年入所希望なので雰囲気を見るために呼ばれた。
早いところ WEB を復旧しないといけない。しかし、なぜかうまく行かない。
他にも細かなデータのサルベージなどあり、結局子供が帰ってくるまでには完了しなかった。
で、土曜日もこれで終わり。
本日、日曜日。
妻の友達が遊びに来る予定だったので、朝から部屋の片付けなど。
で、先ほど遊びに来て、子供も喜んで一緒に遊んでいる。
おかげで作業がはかどり、WEB の復旧完了。
WEB のデータ自体は、自動バックアップして別のマシンにとってあった。
復旧記念(?) に、この日記を書いているところ。
あとは、表から見えない設定をいろいろやらないと。
SPAM フィルタや、内部での NFS 設定など。
自動バックアップもちゃんと設定しとかないとな。
関連ページ
別年同日の日記
申し訳ありませんが、現在意見投稿をできない状態にしています。 |
もう1年以上前に話題になった、Let's! TVプレイ Classic。
近所の量販店で投売りしていました。
そこで、全4種類をまとめて大人買い!
メーカー希望小売価格 3,500円なので、普通なら14,000円(消費税込み)の値段です。
1個10円の、合計40円(消費税込み)だったのだけど。
なんと 99.71% OFF!!
…でも、遊ぶのに必要な別売りケーブルはないのね。
過熱する、という問題があってメーカーが回収して、その後出回っていないみたい。現在入手困難。
あまり難しくなさそうだから、暇になったら自分で配線してみよう。
#見たところ、電源は汎用品が使えそうだし、ビデオ信号も映像+モノラル音声を、ステレオピンジャックに接続しているだけっぽい。
同じテーマの日記(最近の一覧)
関連ページ
別年同日の日記
17年 遅い Javascript を iframe に追い出す方法
申し訳ありませんが、現在意見投稿をできない状態にしています。 【あきよし】 どうやらモノラルではなく、ステレオらしい。4極ミニプラグと呼ばれるものを使って信号を引き出せばよいようだ。 (2007-06-17 17:44:28) |
この週末、httpd サーバーが動作しない状態になっていたようです。
週末は子供の相手をしなくてはならず、なかなか PC に向かう時間が取れないので気づきませんでした。
来てくださった方にお詫び申し上げます。
原因は、先日サーバーの Update をかけたこと。
Update 直後は動作していたので大丈夫だと思っていたのですが、その後何らかのタイミングで httpd が再起動し、その際に動作しなくなっていたようです。
httpd サーバーはアップデートされると怖いので、アップデートしない設定にしていたつもりだったのですが…
それは故障以前のサーバーの設定だったようでした。
関連ページ
別年同日の日記
申し訳ありませんが、現在意見投稿をできない状態にしています。 |
仕事で使用している、家庭内サーバーを新調した。
今まで使っていた奴は、もう4年も前に買ったものだ。
新調するといっても、作業は単純ではない。
RedHat 9 から CentOS 4.3 へ。
(すでに 5.0 が出ているが、Sizka ではインストールできなかった)
データ類は持ってくれば終わりだが、ソフトなどはバージョンが大きく変わるので設定ファイルの構造から変わっていたりする。
Apache も 1 から 2 へ。Samba も 2 から 3へ。
主要なソフトだけでもずいぶんとバージョンが変わる。
Mysql と PHP は、仕事で使っている都合もあって細かくバージョンアップしているので変更なし。
以前は Netatalk と Samba を組み合わせていたこともあって、文字コードは CAP にしていた。
もう Netatalk は不用なので、EUC の方が使いやすい。
その他もろもろ、設定には結構手間取り、他の仕事をしながらのこともあり、1週間近くかかってしまった。
#その間に、ついでにバージョンアップした外部公開サーバーが動作不良を起こした…というわけ。
多分、必要なのにまだ入れていないソフトなんかもあるだろうけど、それはおいおい。
別年同日の日記
申し訳ありませんが、現在意見投稿をできない状態にしています。 |
自分でサーバーを公開していると、SPAM が山ほどやってくる。
個人のアドレスでも山ほど来る人は多いと思うが、自宅サーバーの場合「アカウント」にある程度関係なくメールを受け取っているため、手当たり次第に送られてくる SPAM も、全部受け取ってしまうことになる。
そんなわけで、「間違えメール」のふりをした SPAM が、違うアドレス宛に10通も並ぶ、という失笑するような状況も毎日のようにあるのだが、こうなってくると SPAM 対策が面倒になってくる。
まずは、BkASPil。
Becky!2 という Windows 用のメールソフトのプラグインとして動作する、SPAM カッターである。
特徴は、Blacklist とベイズフィルタをうまく組み合わせていること。
「明らかな SPAM 発信 IP アドレス」とみなされているサーバーを収集したデータベースを参照し、そこからきたメールは SPAM とみなす。
その上で、この SPAM をベイズフィルタに学習させる。
そして、Blacklist にないサーバーから来たものであっても、ベイズフィルタで SPAM 判定を行う。
ベイズフィルタは学習が面倒なのだが、半自動で学習してくれる、ということになる。
これで「ある程度は」頭が良くなるので、それ以上の微調整はお好みで。
(自分が SPAM だと思うものを選んで学習させていくことになる)
しかし、これはあくまでも「来たメールの SPAM を判定する」仕組みに過ぎない。
そもそも、SPAM が来ないのが望ましいのだ。
そこで、S25R。
実際には、先日までこの手法の実装の一つである、qgreyを使っていた。
S25R は、greylist と呼ばれる「SPAM送信専用サーバー判定方式」の改良版。
greylist 方式は、相手のサーバーにわざと負荷をかけ、「SPAM 送信サーバーは、大量に効率よく送信を行いたいため、負荷を嫌う」ことを利用して判別を行う。
しかし、これでは何の罪もないサーバーの負荷を上げることになってしまうので、「サーバーの名前だけで善良なサーバーを見分け、greylist の適用を除外する」のが S25R 方式。
うちのサーバーでは、メールサーバーに qmail (実際にはいろいろパッチを当てたもの)を利用しているが、qmail 用の greylist フィルタに、qgreylist というのがある。
これにパッチをあて、S25R に対応させたのが qgrey。
さて、最初に「先日までは」qgrey を使っていたと書いた。
実は、S25R の研究者はその後も次々と改良方式を考えているのだが、qmail に対応させたプログラムはなかった…と思っていたのを、見つけて乗り換えたのだ。
S25R + tarpit before qgreylist パッチがそれ。
これは、qgrey ではなく、qgreylist へのパッチとなる。
しかし、qgrey 相当の機能は内包しているので問題なし。(およそ上位コンパチのようだ)
名称にもある tarpit というのは、greylist とは別の方法で「相手サーバーに負荷をかけるテスト」の名前。
やはり、SPAM 送信専用サーバーは負荷を嫌う、という性質を利用している。
で、このパッチを適用すると、S25R と tarpit と、さらには HELO 検査 (メール送信プロトコルの中で、自分のサーバー名を名乗る部分の検査。SPAM 送信専用サーバーは、名前を偽ることが多いため、これもSPAM の可能性検査となる)も行ってくれる。
さらに、Whitelist(何も検査せずに受け取る)や、Blacklist(何も検査せず、受け取り拒否する) は、IP アドレスベースとホスト名ベースの両方で登録が可能、というのも嬉しい。(qgreylist / qgrey では、IP ベースの whitelist のみ可能)
なかなかいいこと尽くめ。
しかし、これでもやはり SPAM は大量に来るのだった…
そこで、最後の手段。相手も見ずに、SPAM が良く送られてくる「国」レベルで、受け取りを拒否することにした。
この方法、中国・韓国・台湾あたりを拒否するとかなり効果がある、として知られている。
でも、自分の手元にある最近の SPAM を調べたところ、もっといろいろな国から SPAM がやってきている。
そこで、SPAM メールの Received 行を見ながら、あんたがたどこさ等を使って、送りつけてきた相手の国を判別する。
さらに、上のページでは、「その国からの接続を拒否する」ための設定ファイルまで配布してくれていると言うありがたさ。
そこで、qmail (tcpserver)用の接続拒否設定ファイルを持ってきて、次のような環境を作った。
1) サーバーに /etc/tcp.smtp/ というディレクトリを作る。
2) ディレクトリ内に、/etc/tcp.smtp ファイル(通常の qmail の設定)を移動。
3) /etc/tcp.smtp/ 内に、tcp.smtp.cn という名前で、中国(ドメインは .cn) の接続拒否設定を置く
4) 同じように、韓国 (.kr) 台湾 (.tw) などの接続拒否設定も置く。
5) Makefile を作る。
tcp.smtp.cdb:
cat tcp.smtp* > smtp.all
tcprules ../tcp.smtp.cdb tcp.smtp.tmp < smtp.all
rm smtp.all
6) make する
何のことはない、断片ファイルを全部接続してから、tcpserver の設定構築をしているだけ。
わざわざこんなややこしいことしないで /etc/tcp.smtp に書き込んでもよいのだが、拒否したい国がやたら多いことがわかったので、メンテナンス性を考慮したのだ。
今後接続拒否を増やす場合は、3 をして 6 、という作業で終わり。
割り当て状況が変わった場合も、ファイルごとに入れ替えればよいだけ。
で、現在拒否した国リスト。
.ar アルゼンチン .br ブラジル .ch スイス .cn 中国 .de ドイツ
.dk デンマーク .eg エジプト .es スペイン .il イスラエル .in インド
.it イタリア .ke ケニア .kr 韓国 .mx メキシコ .nl オランダ
.pl ポーランド .ro ルーマニア .ru ロシア .tr トルコ .tw 台湾
.za 南アフリカ
SPAM がたとえこようとも、.com や .org や .net や .info は拒否しないし、できない。.jp も。
それでも、SPAM は劇的に減った。
今後、接続拒否設定はもっと増えるかも。というか、一部を通して他は拒否、のほうが良いのか…
別年同日の日記
16年 Microsoft Office 発売日 (1989)
申し訳ありませんが、現在意見投稿をできない状態にしています。 【kekulene】 (すみません、続きです)でも、サーバを構築するとなるとかなり難しいでしょね。 (2007-08-03 01:39:43)【kekulene】 スパム対策、おつかれさまです。僕の場合は、英語のメール=スパムなので一日一回チェックすればいいです。 (2007-08-03 01:38:53) |
いまさらながら。
W-ZERO3[es]から Advanced/W-ZERO3[es] に乗り換えました。
買おうかどうしようか悩み続けること2ヶ月。
結局、「そんなに悩んでいるなら買ってしまえ」と購入を決定。
月曜に買ったばかりで、まだ環境構築中です。
[es] が、面白がっていろんなソフト入れすぎて不安定になって使いづらくなっていたので、今度は厳選して入れる予定。
とはいえ「そのまま使う予定」と言えないのが辛いところ。
[es]に比べればずいぶん「携帯電話になった」感があるが、それでも環境構築しないととてもつかえたもんじゃない。
関連ページ
別年同日の日記
申し訳ありませんが、現在意見投稿をできない状態にしています。 |
ブロードバンドルータの調子が悪いので、変更しました。
1〜2週間に1回、悪いときは24時間以内で、ルータが暴走する状態で、自宅でサーバーを公開している身としては辛いものがありました。
が、新しいルーターで設定に失敗 (^^;;
丸一日、外部からの接続ができませんでした。
なんかメールが来ないなー、と思っていて気づきましたが、WEB も見に来た人が(もしも)いたらごめんなさい。
関連ページ
別年同日の日記
申し訳ありませんが、現在意見投稿をできない状態にしています。 |
家庭内サーバーが壊れた。
1週間ちょっと前…9月16日のこと。(予兆は、12日にはあった)
サーバーは2台あるが、「プログラム用」に使っていたほう。
もう一台は、メール・WEBサーバーで、外部公開用に使用している。
2台ともSizka basicを使っていて、実際静かだったのだが、完全ファンレスと言うのはやはり熱にやられるのか…
最初は HDD 故障を疑って、ネットで新しい HDD を購入した。届くまで中1日。
届いて実験してやっとわかったが、HDD 故障ではなく、本体故障のようだった。
あわてて新たなマシンを購入。
atom 使用のマザボ、D945GCLF。
購入した翌日に、新製品が発表されて愕然とする。
これをベースに「壊れないサーバー」を作る。
もう、壊れて面倒な思いをするのは嫌だ。
幸い、家庭内の2台で互いに、ハードディスクのバックアップを取っていた。
そのため、データ復旧自体は難しくない。
プログラムまで含めて「すべて」を復旧すれば、同じマシンであれば動くだろう。
しかし、今回はマシンも交換したし、そのままの復旧では目的とする「壊れないマシン」は作れないので、新規インストールから。
まず、マザボの特殊性にやられる。
CentOS を入れようとしたがインストーラーが起動しない…と思っていたら、これはどうやら、新たなイーサチップのせい。
CentOS 4.7 なら起動するのに、5.2 だと駄目なのね。
BIOS から LAN を disable して問題解決。
(インストール後、ドライバを入れる事になる。)
今回、「壊れないサーバー」構築のために、HDD を2台積んで SoftwareRaid を組む事にする。
64bit 版、仮想化対応でインストール。
Raid によって、データは壊れなくなるが、実際マシンが壊れたときには、ドライバなどの互換性の問題から再インストールとなってしまう。
そこで、「壊れない」条件の2番目として、仮想化によって「ハードウェアからの分離」を行うわけだ。
しかし、Xen の設定にかなりてこずる。
最初は、ネットワークカードが全て「仮想化」されてしまう現象に悩んだ。
実際のハードウェアカードがなくなってしまい、外と通信できなくなるのだ。
これは、Kudzu が犯人とわかったため、停止して問題解決。
しかし、まだ外と通信できない。
Xen は「仮想サーバー」を作成する仕組みだが、仮想サーバーをネットワークに参加させるためには、仮想ネットワークも作成されなくてはならない。
仮想化されたサーバーを、仮想的なブリッジ(HUB)で接続するのだが、この仮想ブリッジが virbr0 と xenbr0 の2つ作られる。
前者は、NATルーター、後者は単純な HUB。
CentOS 5.2 では、デフォルトで前者と接続する。通常ならそれでも問題ないようなのだが、なぜかこれが悪さをして、通信を阻害しているらしい。
そこで、手動で設定ファイルを書き換えて、後者に接続するようにしたら解決。
これで、何とか基盤が整ったのが、故障から1週間以上たった昨日、25日。
この後、バックアップから大量のファイルを移植し、プログラム類は再インストールし、ほぼ復旧したところ。
まだ足りないものはあるかもしれないが、仕事の環境はやっと整った。
新しいマシン、過去に使っていた eden や sizka に比べると、ずっとパワーがある。
機能的にも「遅いだけ」で、64bit 命令も使えるし、Hyper-threading にも対応している。
ただ、今回買ったケースの電源ファンが少しうるさい。
eden のケースから、ファンレス(ACアダプタ)電源を取ってくっつけるか…
関連ページ
別年同日の日記
16年 箱根小涌園ユネッサンに行きたい人へのまとめ(1/3)
16年 箱根小涌園ユネッサンに行きたい人へのまとめ(2/3)
16年 箱根小涌園ユネッサンに行きたい人へのまとめ(3/3)
申し訳ありませんが、現在意見投稿をできない状態にしています。 |
仕事の締め切りが来週頭ですが、早めに作ることを心がけていたため、1週間の余裕を残して、ほぼ完成。
というわけで、先日より妻からリクエストがあった「自宅用のCMSの改良」を行います。
以前は妻も人気ページ作者だったのですが、子供が生まれて忙しくなったため中断。
再開を目指したこともありましたが、「当時のものを復活しようと思っても大変なので」新たに作り直しています。
CMS 改良の第一歩として…CMS を、PHP5 でも動くように修正。
今まで PHP4 で動かしていたけど、そのままでは PHP5 で動かないので (^^;;
公開環境は、PHP4 の最新版になっていますが、開発環境は PHP5 なのです。
これに伴い、公開する文字コードが EUC-JP から UTF-8 に変わりました。
見られなくなった人がいたらごめんなさい。
#PHP4 では XML パーサーが要求する文字コードが「何でも良い」だったのが、PHP5 で「UTF-8」に限定されたため。
(xml_parse が使用するライブラリが変わったことに起因する)
内部的に、パーサーを通す前に UTF-8 にして、最終的に元に戻す…という処理を考えたが、他の箇所の絡みもあってややこしいことが判明したため、コードを全面的に UTF-8 に変更した。今まで溜まっていたデータも、全てコード変換。
半年ほど前までに別の仕事で作り上げた CMS も、自宅用 CMS の「派生物」でありながら、高機能化しているため、できることならば機能の一部を自宅用に取り込みたいところ。
しかし、まずは妻のリクエストである、データベース機能から実装するか…
関連ページ
別年同日の日記
申し訳ありませんが、現在意見投稿をできない状態にしています。 |
先日から改良している、当ページを運用している自作・家庭内CMSシステムが、大幅にバージョンアップ。
元々、Ver.0.9 という感じで運用していたのだが、内部構造から大幅に変わってしまったので、いきなり Ver.2.0 という感じ。
もっとも、公開するつもりも無いのでバージョンナンバーをつけることに意味は無く、自分の気持ちの問題だけ。
公開するつもりが無い、と明言した時点で、この日記は自分の備忘録になるわけだが(内部解説しても自分以外に関係ないし)、以下の点が変わった。
▼XML の解釈の方式を、今までのインタープリタ方式から、コンパイラ方式に変更。
記事作成時に、XML を解釈して「自作システムに必要な」タグだけを拾い出し、構文木を構築し、この状態でデータベースに保存しておく。
閲覧があったときには、この構文木を解釈して、記事を動的に整形する。
今までよりも高速化される上、構文の解釈と整形を分離できるようになったため、より柔軟で強力な処理が可能。
▼カテゴリの概念を導入
記事ディレクトリによってカテゴリを分割。カテゴリごとに、別処理を可能にした。(プラグインの概念)
いままで、日記は実は「まったくの別システム」で動いていたのだが、これによって日記もシステムの一部に組み込まれた。
また、妻が要望している「データベース」もこれによって実現する予定。
▼いくつかのタグの拡張
いわゆる「ブログ」や「Wiki」の誕生以前から自分で作っていたシステムなので、いまどきの CMS と比較すると「流行ではない」やり方なのだが、いくつかのタグを拡張している。
例えば、img タグは、src のファイル名さえ書いておけば、自動的に画像のサイズや、その画像につけられた「名前」をDBから取得し、width height alt を付与してくれる。
これをさらに拡張し、「サムネイルと大画像」を指定すると、自動で大画像へのリンクを生成するようにした。
「タグ拡張」が外から見たときにも一番大きな変更点。
というのも、(いまさらやっと)縮小画像クリックで大きな画像を表示、ということに対応できるようになったから。
というわけで、夏からの日記で画像が付いていなかったものに、画像をつけてみた。
この日記以前の画像にもかかわらず、サムネイルクリックで大きな画像が表示されるものに関しては、「画像は後からつけました」ということでもある。
別年同日の日記
申し訳ありませんが、現在意見投稿をできない状態にしています。 |
分解メンテナンスしたり、バッテリー交換したり、だましだまし使ってきたのですが、半年前についに動かない状態に。
しばらく自分で掃除機かけていたのですが、やっぱり掃除ロボットがいないと不便。
…なんというか、いないならいないで大丈夫なんですよ。人に強くオススメするほどの機械ではない。
でも、いないとやっぱり不便なんです。
「携帯電話なんて、無くても生活できるけど、無かったらやっぱり支障がある」みたいな感覚。
で、思い切って再購入。
以前は Roomba 以外の選択肢はほとんど無い状態でしたが、今はいろんな選択肢があります。
しばらくスペックを見ながら検討して…FALTIMA030 を購入。
理由:
ルンバを使ってわかったことは、これが「高価だが使い捨て」の商品である、ということ。
せいぜい2年使ったら買い換えたほうが良い。
以前も書いたが、半年で1回は故障する。(分解メンテナンスで治るレベル)
この時点で、高価すぎる「国内でルンバ購入」は除外します。
個人輸入の場合、製品保証がない。半年に1度は故障するので、保証が欲しい、と考えると、個人輸入もなし。
(前回輸入のときは、初期不良でいろいろ面倒だったし)
FALTIMA030 は、ルンバのいくつかの機能を削除して安くした…というイメージ。
そして、削除された機能は、いずれも「うちでは使わなかった」機能ばかり。(詳細後述)
FALTIMA030 の廉価機である、Lisire030 というのもあります。
実のところ、うちの使い方ならこちらで十分…と思い探したのですが、すでに生産中止らしい。
生産中止の理由はわからないが、FALTIMA030 の方が人気が出たため量産効果で値段が下がり、Lisire030との値段差がなくなってしまったことが理由、ではないかと思います。
#在庫限りの Lisire030 はいくつか見かけたが、定価の¥19,800.- + 送料。
それに対し、FALTIMA030 の購入価格は¥23,200.-で送料込み。
…この値段なら、Lisire030 が生産中止になるのも納得。
そんなわけで、FALTIMA030 が家に届きました。
第1印象… よくここまで、Roomba をコピーしたもんだ。
構造がほとんど同じ。細かな部品レベルの形状まで同じところも多い。
特許とか、意匠権とか大丈夫なんだろうか?
家で使っていたのは「Roomba Discovery」でしたが、FALTIMA030 のコピー元(?)は、一ランク上の(後で発売になった)機種である、Roomba Scheduler のようです。
何が違うかと言えば、設定時刻に自動で掃除を始めてくれる機能が付いています。
オフィスなどでは良く使われるこの機能、家庭では多分使わないので、別にいらない。
充電ステーションは形状が明らかに違います。
Roomba の充電は「下の電極から」行ったのですが、掃除機の下側ですからゴミの影響を受けやすく、すぐに汚れます。
Roomba 自体の重みで接触させているだけなので、外れやすいのも難点。つまるところ、うまく充電できないことが多いです。
これに対し、FALTIMA では、横に押し付ける電極に変わりました。ゴミの影響は受けにくそうだし、電極に「ばね」が入っているので、十分接触しそう。
…でも、実のところこれすら不要かも。
家庭では、掃除機を部屋に置いておくことが邪魔なので、「押入れの中で、電極直接差し込んで充電しておく」ので十分だから。
(特に、うちはオール電化で、夜間電力の安いうちに充電したいので、勝手な充電は邪魔になる)
充電ステーションの位置を認識したり、充電ステーションからの(スケジュールによる)掃除開始指令を受け取ったり、人間の持つリモコンからの指令を受け取ったりするために、Roomba には赤外線受信部分が付いています。
FALTIMA030 も同じ位置に、同じ形状の受信部があります。
Roomba では、この受信部によって、赤外線による「バーチャルウォール」が使えました。
FALTIMA030 にはバーチャルウォールはありません。受信のための装置はあるので、あとはソフトの問題だろうに。
でも、うちではバーチャルウォールを使っていなかったので問題なし。
だって、バーチャルウォールは赤外線で実現するので、壁に反射したり、空中で拡散したりで、「本当に入って欲しくないところ」よりも手前が掃除エリア外になってしまいますから。
その部分は掃除できない、ということですよ。部屋の隅々まで綺麗にしてもらえない。
そんなバーチャルウォールを使うより、椅子とか組み合わせて本当の壁を設置するほうが簡単確実。
FALTIMA030 の宣伝ページなどには書いてませんが、Roomba と同じく「持ち上げたら動作停止する」ハンドルも付いています。
同じく宣伝に書いていない Dirt Ditect も、どうやら搭載していると思われます(詳細未確認。動作させて、そう思っただけ)。
Roomba で外して掃除しやすかったブラシは、外しにくくなりました。これは良くない。
基本的にブラシ跳ね上げ式掃除機なので、髪の毛などが絡んで、時々掃除する必要があるのです。
この奥に Dirt Ditect のためのマイク(圧電ブザー)が付いているのも、上の行で書いた詳細未確認の理由。
消耗品は交換品が豊富についてます。吸引掃除部分のフィルターは当然、Roomba で壊れやすかったミニブラシ…いわゆる「触覚」も、交換部品が付属します。
形状などは驚くほど良く似ているが、動作はどうか?
動かしてみると、 Roomba より動きが遅く、その分騒音も少ないです。
Roomba Discovery は、スペックによれば 58db の騒音でしたが、古くなってくると騒音は大きくなります。
(これは、ブラシの軸受けがプラスチックで出来ていて、使ううちに削れてがたがたになるため)
騒音が大きくなっていた分を差し引いても、おそらく Roomba より静か。
…と書くといいことのようですが、動きが遅くて静かだと言うのは、つまり「パワー不足」ということ。
そのまま掃除が完了するまで、1時間放置。
うちでは、和室8畳+リビング8畳+キッチン4畳+廊下4畳=24畳をまとめて掃除していますが、一通り綺麗にはしてくれました。
ただし、Roomba のときに比べると、所々に掃除できていないところが目立ちます。
ゴミのあるところを通れば確実に回収しているので、どうやら「ランダムウォーク」で歩ききれないところがあるようです。
Roomba は、1回の充電で2時間近く動けますし、動きも早いです。
これに対し、FALTIMA030 は1時間しか動けない上に、動きが遅いです。
どうも、この差が「掃除し残し」となって現れるみたい。
Roomba だって、完璧に掃除できたわけではないが、気軽に掃除できるようになるため「こまめなお掃除」でカバーできました。
同じ使い方をするのであれば、FALTIMA030 は、Roomba よりも掃除し残しがあるとしても合格点でしょう。
このわずかな差に、2倍超の料金を出すかどうかは人の考え方次第。
自分がどう考えるかは… FALTIMA030 が壊れて、また買い換えるときに考えることにします (^^;
同じテーマの日記(最近の一覧)
別年同日の日記
申し訳ありませんが、現在意見投稿をできない状態にしています。 |
仕事で、DoCoMo / AU / Softbank の3キャリア向けのコンテンツプログラムを作っています。
それぞれの携帯向けのページ作成は、違うところもあり、根本的には同じところもあり、いろいろと微妙な面を含んでいます。
が、大体「絵文字以外は一緒」という認識でいいでしょう。
そんなわけで、多くの人の興味が「絵文字部分はどう違うのか」に集中するわけですが、勘違いしている人も多く、どうもうまくまとめられたサイトを見ることがありません。
特に、ソフトバンクは勘違いから来る「へんなやつ」扱いが多く、見ていて悼まれないです。
(まぁ、実際変なところも多いのだが…)
そこで、自分がうまくまとめてやる! …などといえれば格好悪いのですが、そんな暇も無いので、せめて誤解を解くことができれば…と、メモしておきます。
1) DoCoMo の絵文字
i-mode は、事実上世界で最初の「スマートフォン」です。
(欧米での定義は、ネット接続可能な携帯のこと。キーボードなんて無くてもよいし、独自OSでもかまわない)
いろいろと最初ゆえのお行儀の悪さ、拡張性のなさも目立ちますが、非常に現実的で、うまい実装をしています。
この実装には、まず JIS と ShiftJIS の違いを知らなくてはなりません。
ShiftJIS は、「コードをずらした(Shiftした)」もので、文字セットとしては同じものですが、「保持できる文字数」が違います。
JIS では、全ての文字を 7bit で表します。今のコンピューターは 1byte が 8bit ですが、昔は 7bit のものも多かったためです。
(余談だが、1byte 、という単語が必ずしも 8bit を意味するとは限らない。8bit を厳密に示したい場合は octet 、7bit を示したい場合は septet と言うべき)
ともかく、7bit 2文字で示す JIS では、最後の文字コードは 16進数で 7E7E となります。
(7F はコントロールコードに割り振られているため、避けている)
これを 8bit 2文字で示す ShiftJIS で表現すると、 EFFC。ShiftJIS の最後は FFFF ですから、もう少し詰め込めることになります。
そこで、この「ShiftJIS にしか存在しない領域」に絵文字を詰め込んだのが、i-mode の絵文字コードになります。
ここには、「絵文字は文字の一種である」という思想があります。いわば、象形文字であり表意文字である「漢字」に、新たな文字を定義しただけ、というのが DoCoMo の絵文字であり、日本人にとっては非常に扱いやすいものでした。
その一方、ShiftJIS -> JIS 変換をすると、絵文字は行き場がなくなります。
インターネットメールは JIS で送信するのが慣習(先に書いたように、7bit しか扱えないコンピューターが存在することを前提としているため)ですが、DoCoMo の絵文字はインターネットメールでは送信できないことになります。
また、サーバー側で内部コードを EUC-JP (これも ShiftJIS とは違う方法で JIS コードをずらしたコード体系。ASCII と漢字の区別を、単純に JIS コードの 8bit 目を 1 にすることで行う)で扱いたい…などという場合にも、コード変換できません。
後に、JAVA で扱うために、Unicode の外字部分にもコードが割り振られています。
2) AU の絵文字
i-mode よりも以前から「スマートフォンの共通規格として」策定されていた、WAP をベースとして作られています。そのため、お行儀の悪さはありません。
絵文字は、「デバイス内部に内蔵した画像」として、扱います。そのため、表示には img タグを使用します。
このため、送信文字コードを問いません。EUC-JP で扱いたい、という場合でも、絵文字は ASCII で書かれた img タグであるため、日本語コード変換の影響を受けません。
漢字コード表の一部に勝手に文字を追加する、というような行儀悪さもありません。
しかし、見た目は「文字」と同じサイズなのに、部分的に画像になっている、という扱いにくさはあります。
また、画像は初期の頃頻繁に更新され、同じ絵文字でも4種類の見た目があります。これも扱いにくい部分。
img タグ…ということは、ユーザーが入力したらどうなるか。
当初は「入力できない」という仕様でした。しかし、これが i-mode に比べて使いにくいと不評だったため、途中から仕様変更して、DoCoMo と同じように ShiftJIS の F000 以降の未定義部分にコードを割り振りました。
そのため、表示の際には img タグで、ユーザーからの入力を受け取る際には ShiftJIS の未定義領域として受け取ります。
(表示の際に ShiftJIS として送ることも可能だが、古い機種での動作は保証外)
ただ、これだと DoCoMo と同じように「JIS にできないのでメールで送れない」という問題を起こします。
そこで、AU は、メールの場合専用で、JIS コードの内部でありながら漢字が設定されていないところに、勝手に絵文字を入れ込んでしまいました。
これはメールのとき専用のコードですが、とにかくインターネットメールでも絵文字を使用することが出来ます。(表示できるかどうかは、受信側の問題)
また、i-mode と同じく、Unicode の外字部分にもコードが割り振られています。
つまり、au の絵文字には
・img タグで表示するためのコード
・WEB で表示するための ShiftJIS コード
・メールで送信するための JIS コード
・Java で扱うための Unicode
が設定されていることになります。
当初の志の高さはどこへやら… i-mode の真似をしようとして、もっとひどいことになってしまいました。
3) Softbank の絵文字
最後発の…当時は J-PHONE でしたが、いろいろと研究しています。
絵文字は、「文字コード平面を切り替える」ことで表現します。
文字コード平面、というのがわかりにくい概念ですが、たとえば JIS コードでは、「ASCII と日本語(漢字)は、別のコード表を持っている」と考えます。
そして、コントロールコードを使って、この「コード表」を切り替えます。
漢字に切り替えると、2バイト(正確には、7bit x 2)送るたびに漢字を一文字表示します。ASCII に切り替えると、1バイト(7bit)で英数字を1文字表示します。
そして、Softbank では、「絵文字」に切り替えるためのコントロールコードがあります。
絵文字に切り替えてからは、1バイト(7bit)で1つの絵文字を表示します。
絵文字は多数あるため、6つの絵文字平面があり、切り替え時に指定します。
絵文字への切り替えに3バイト、絵文字自体の表現に1バイト、漢字への復帰に1バイト使用するため、1文字の絵文字を書くのには5バイト必要です。
ただし、同じ絵文字平面で連続した複数の絵文字を表現する場合、2文字目以降は1文字1バイトで表現可能です。
JIS コードの仕組みを知らない人には、この表現形式がにわかに理解できないようで、「ソフトバンクは変態で使いにくい」という評価になっているようです。
しかし、この形式ですと、絵文字は「文字と同列に送れる」のに「日本語のコード変換の影響を受けない」という利点があります。
絵文字は 7bit の文字列であらわされるため、インターネットメールに送っても問題ありません。
しかし、後に DoCoMo / AU と同じく ShiftJIS の F000 以降にもコードが割り振られています。
(一応誰でも入手可能な公式資料にコード表があるのだが、非常にわかりにくいところに書いてある。
また、一世代前の 2G 機種では使える、と書いてあるが、現行機種の 3GC に関する記述は無い)
また、Unicode の外字部分にもコードが割り振られています。
…途中から i-mode などの「デファクトスタンダード」に擦り寄る形で変節しているものの、これはこれで良く出来た形式。
これを馬鹿にする人の気持ちがわかりません。
ただ…本当にソフトバンクが「困ったちゃん」なのは、ここからですね。
ユーザーが絵文字を入力した場合、サーバーの受け取るコードは、次の5つのいずれかです。
a) 7bit の文字列で表現された、WEB 用絵文字コード
b) ShiftJIS の外字部分に割り振られた絵文字コード。
c) Unicode の外字部分に割り振られた絵文字コードを UTF-8 で表現したもの。
d) サーバーで「全角空白」に置き換える形で絵文字を削除した文字列
e) サーバーで、単純に絵文字を削除した文字列
機種によって違います。どの機種がどの方法で送ってくるか、は良くわかりません。
(だれか、全機種で調べた人いるんだろうか? Softbank の公式資料にも載っていない)
PC からソフトバンク携帯にメールを送る場合の絵文字の扱いも変です。
ソフトバンクでは、「メールの最初の192文字」までは無料で送られてきて、必要なら有料でそれ以上を取得するのですが、
a) 192 文字までの部分では、WEB 用絵文字コードで絵文字が表示できる
b) 全体を取得した場合、WEB 用絵文字コードでは絵文字が表示できない
c) UTF-8 で絵文字を埋め込むと、192文字までも、全体でも表示できる。ただし、3GC 専用。
d) ShiftJIS で絵文字を埋め込むと、192文字までも、全体でも表示できる。おそらく全機種で大丈夫。
ただし、先に書いたように ShiftJIS のコードは、公式には非常にわかりにくい資料中にありますし、公式には 2G でしか使用が保証されません。
これは、デコレメール(HTML メール)でも同じ。HTML なのに、WEB 用コードでは表示できないのです。
なんでこんなことになっているかといえば、192文字までは携帯専用のショートメッセージだが、全体になるとインターネットメールだ、という思想らしい。
インターネットメールだから、WEB 用絵文字コード、という特殊なものは処理しないのですね。でも、UTF-8 や ShiftJIS で送られてきたものは「外字」だから表示する。これはこれで、筋が通った話です。
なんか、最後に Softbank の特殊性をいろいろ書いていますが、これは一応 Softbank に対する擁護記事です。…多分。
関連ページ
別年同日の日記
申し訳ありませんが、現在意見投稿をできない状態にしています。 |
先日、週刊モーニングの「エンゼルバンク」(ドラゴン桜外伝)を読んでいたら、こんな問題が載っていた。
すでに回答を出した号も発売されているので、概略を書いてもよいだろう。
問題:
表にアルファベット、裏に数字が書いたカードがある。
このカードは「表が母音の時、裏は偶数」だというルール(仮説)がある。
A K 4 5
この4枚のカードが提示されたとき、できるだけ少ない枚数のカードを裏返して、ルールを検証したい。
どのカードを裏返せばよいだろうか?
1分以内に回答せよ、と時間制限をつけたとき、正答率は 4% だそうだ。
自分は回答に1分もかからなかった。
別に自慢したいわけではなく、プログラマーにとっては、答えられないと駄目な問題だと思う。
なぜなら、これは「多角的な思考」ができているかどうかを見る問題だからだ。
自分が一応の解答を出した後で、再度その解答が正しいかどうかを検証する、という作業ができていないと、答えを見誤る問題になっている。
そして、プログラマーはプログラムが完成したと思った後で、それで正しいのかどうかを検証する、という作業を常に行っていないといけない。
そうしないとバグが頻出するためだ。(これができていたって、バグは頻出するが)
話は変わって、3年位前に流行した本の問題。
確か「金持ちになれるかどうかの適正を見る問題」だったと思う。
結局、多角的な思考ができるかどうかを見ている、という意味では同じなのだが、制限時間は10分だった。
問題:
A 君は会社の入社試験を受けた。
この試験は同時に4人で行われ、背中に「A」「B」の記号が書いたシャツが2枚づつ、計4枚用意される。
試験を受けるものは渡されたシャツを着るが、自分のシャツに付いた記号を見ることはできない。
試験に合格するためには、自分のシャツにどちらの記号が書かれているかわかった時点で大きな声で答えなくてはならない。回答権は1回のみ。
ただし、4人はそれぞれ別の部屋に通される。
お互いの声は聞こえるが、相手のシャツの記号を伝えてはならない。
それぞれの部屋は次のようになっている。
1) どの部屋からも独立した個室
2) 3 と 4 の部屋を覗くができる部屋
3) 4 の部屋を覗くことができる部屋
4) 覗かれてはいるが、中の人にとっては個室に思える部屋。
自分がどの部屋に通されたかは、当然わかる。
じつは、A君には伝えていないが、A君以外の3人は会社が用意した「さくら」であり、着るシャツ、入る部屋なども会社が決めている。
さて、会社はA君をどの部屋に通したか?
問題のポイントは、これが「入社試験である」ということである。
つまり、A君は適切に回答できるような部屋に通されなくてはならない。
この問題、知人に「僕はできませんでした」と見せられ、1分くらいで一応の回答にたどり着いた。
しかし、再検証するとそれではおかしい。5分くらい考えて、結局
「1つの答えを求められているようだが、答えが2つあるので問題に不備がある」
という答えを導き出した。(先に書いたとおり、制限時間は10分)
解答は数行下に。
それでは解答。
本が用意した解答は、2の部屋である。
これで、さくらを 3 と 4 に「同じ記号で」そろえれば、A 君は2枚づつしかないシャツの2枚が揃っているのを目撃し、自分は「もう片方」の記号だと判断できる。
ここでは、A 君の試験は非常に簡単なものになってしまうが、「どの部屋に通したか」という問題にたいし、「3 と 4 を同じ記号でそろえれば」試験問題が成立する、というところまで踏み込んで考えないといけないため、それなりに難易度の高い問題に仕上がっている。
つまり、これも最初に挙げた問題と同じように、「多角的な思考」を見るための問題なのだ。
ところで、自分の考えた別解はこうだ。
自分が会社の立場なら、A 君を 3 の部屋に通し、4の部屋には A 君と同じ記号のシャツの人を入れる。
これだけでは、A 君は答えられない。しかし、ここで2の部屋に通したサクラに、大声で回答させる。
つまり、A 君にとっての状況は
・自分は、2人を見られる人から見られる部屋に入り、そのうちもう一人を見ることができる。
・2人を見られる人は、回答した。
である。
なぜ2人を見られる人は回答したのか? それは、A君と、A君が覗けるもう一人の人が、同じ記号を着ているからだ。
ここまで考えられれば、A 君も回答出来る。この推論力はたいしたものだ。会社にとっても良い人材となるだろう。2の部屋に通すよりも試験としても適切である。
実は、同じ考えを延長すれば、A君はどこの部屋に入ってもかまわない。
4 の部屋に入れられたなら、2番目に答えた人と同じ答えにすればよい。
1 の部屋であれば、1番目に答えた人と同じ答えにすればよい。
ただし、この場合、「他人の答えの内容」が関係し始めるので、他人が誤答すれば、自分も誤答になる。
3の部屋の場合、他人が「回答した」という事実だけが重要であり、その内容は重要ではないため、通す部屋としては 1 や 4 より 3 のほうが適切である。
というわけで、「おそらく2が答えだろうが、3も答えとして適切だし、どの部屋でも間違いではない」という結論にたどりつく。
でも、問題が載っていた本では、そのような解答は無かった。
なぜか?
つまり、問題を作った人が「自分がたどり着いた結論を、別角度から検証する」ことができていなかったのだ。
多角的な思考を問う問題を作った作者は、多角的な思考が出来ていなかったのである。
あまりに可笑しかったので、当時も日記ネタにしようかと思ったのだが、流行していた本の悪口を書くのもどうかと思ったので取り上げないでおいた。
今回、最初に書いた問題で思い出したので、ついでに書いておく。
最後に、最初の問題の解答を書いておく。
解答がわからないと気持ち悪い、と思う人もいるかもしれないので。
A K 4 5
この4枚のカードのうち、できるだけ少ない枚数のカードを裏返して、母音の裏が偶数であることを調べるにはどうすればよいか。
答えは A と 5 。
K は子音なので、裏が何であってもかまわない。
調べたいのは「母音の裏が偶数であること」なので、偶数の裏が子音でもかまわず、4をめくる必要は無い。
しかし、5を裏返して母音では無いことを確認する必要はある。
関連ページ
別年同日の日記
申し訳ありませんが、現在意見投稿をできない状態にしています。 |
先週末(7/18~20)は3連休だった。
しかも、保育園は名目上の夏休みに突入。
(事実上は夏休み中も預かってもらえるのだが)
子供たちをどこかに連れて行ってやらないとなぁ、と思いつつ、タイミングがつかめない。
18日は保育園の花火大会。長女を昼寝させておかないと夜もたないので、午後はこれでつぶれる。
19日は、前日夜の疲れから長女が午前10時くらいから昼寝してしまった。
夕方から散歩に出て、かなり長距離歩き回る。子供たちは楽しかったらしい。
20日は前日の散歩の疲れで、親のほうが気力なし。
というわけで、遠出はせず。
主に割を食ったのは長男。
近所の公園など行きたいのに、長女の昼寝のせいで出かけられない。
そこで、「ゲーム解禁」をしてみた。
以前から、梅雨の雨で外遊びできない時に遊ばせてみよう、とは思っていたのだけど。
5歳以下の子供にゲームは難しい。
まず、3歳くらいになるまで、勝ち負けという概念が理解できない。
3歳くらいで「競争」とか「じゃんけん」「すごろく」などの単純な勝負事は理解できるようになるが、神経衰弱のような「ルールに加えて、遊ぶためのノウハウが必要」なゲームは理解できない。
で、もうすぐ5歳の長男、最近やっとゲームを遊べるかな、と思うような知恵が付いてきた。
実は、以前から時々 Wii を遊ばせてみたことはあった。
前者は操作が難しいようだが、ボタンを使わない単純さで「遊べないことはない」。
後者もボタンを使わないし、適当に操作していると画面上に何らかの反応はあるので「楽しい」。
(どちらも、ゲームとしては成立していない)
何よりも、子供の手は小さいので「リモコンをしっかり持って、ボタンを押す」ことが難しい。
どうしても、ボタンを余り使わないゲームしか遊べない。
最後に遊んだのは半年くらい前か。あの頃はルールが理解できず、ゲームとして成立していなかった。
今なら、単純なゲームなら理解できるのではないか、という期待がある。
ところで、保育園児には「ポケットモンスター」は一定の人気がある。
うちではあまりアニメを見ていないが、他のこの影響で、長男もそれなりにポケモンを知っている。
で、半年ほど前から「○○が進化すると△△になるんだよ」などと良く言うようになったので、「お父さんが遊んでいた初代ポケモンでは、そのキャラはいなかった」とか言ってやるようになっていた。
その関係で、子供は「最初のポケモンはゲームから始まった」ことは知っているのだが、先日「最初のポケモンには色は無かった」ことを言ったら、何に反応したのか非常に見たがっていた。
じゃぁ、是非見せてやりたい。
というのも、ゲーム解禁の理由の一つではある。
最近、Wii Sports Resort を購入した。
これにより、常に Wii に入れっぱなしだった「どうぶつの森」が、頻繁に入れ替えられるようになった。
保育園の花火大会があった日は土曜日。
この夜、とたけけの曲をもらうために(実時間で土曜日の夜限定の、そういうイベントがゲーム中に発生する)、どうぶつの森のパッケージを取り出し、そのままテレビの前に置きっぱなしにしてしまった。
翌朝、なにやらかわいらしい絵の描いてあるこのパッケージを発見したのは長女。
DVD のパッケージだと思ったのか「ぼく、このビデオ見たーい」と主張。
(注:長女は自分のことを「ぼく」と言います。長男の影響)
ゲーム解禁は以前から考えていたが、ぶつ森は子供が遊ぶには複雑すぎる。遊んでもいいけど別のゲームで…などと思っていたら、妻が「いいんじゃない? 少し遊ばせてあげれば?」
そうか。じゃぁ、ちょっとだけ、と起動。
長男にわかるようにメッセージをひらがなにして、長女のために表示を読み上げながら少し遊んでみる。
「ポケモンも、こんな風に字が読めないと遊べないんだよ」と長男に言うと、自分には少し難しいゲームだということは理解できたらしい。
その後、コントローラーを渡して自分で操作させてみる。
上下左右に…自由に動くことすら難しい。コントローラーをもつ手が遊んでいる間に「ひねって」しまい、どちらが上だか判らなくなるのだ。
でも、単純にくるくる回っていたりするだけでも面白いらしい。
「ぼくもやりたーい」と長女が言うので、長女にも遊ばせる。こちらは歩くのも難しいようなので、一緒に手伝ってあげる。しばらく遊んだら満足したらしい。
「歩くだけで走れないの?」と長男が聞くので、走って急に方向転換して見せた。(この操作は、特別なアニメーションを起こさせる)
この動きだけで長男大喜び。
Wii Sports Resort にゲームを変える。
乗り物好きの長男に、是非あそばせて見たいゲームがあった。
「遊覧飛行」
本来の目的は、飛行機を操作して特定のポイントを通っていくゲーム。
しかし、いい加減に操作して飛んでいるだけでも、もしくは墜落するだけでも(!)結構楽しい。
これなら、子供にも楽しめるのではないか?
しかも、このゲームは基本的にボタンを使用しない。
リモコンを模型飛行機に見立てて、傾けることで操作する。
これなら、手が小さな子供でも遊べるはずだ。
思ったとおりの好感触。
正しい意味で「飛ぶ」ことはできていないが、リモコンを動かすと画面が動くだけで楽しいらしい。
いつもどおり、長女が「ぼくもあそびたーい」と言い出したので、二人用の対戦モードにする。
本来ならドッグファイトを行うモードだが、それぞれが気ままに飛ぶだけでも十分楽しい。
やがて飽きたので終了。
しかし、話はこれで終わらない。
この後、部屋遊びしている子供たちの脇で、自分は探し物。
「なに探してるのー?」
と子供に問われたが、実はポケモンのカートリッジがないのだ。
ゲームボーイ本体はあるのだが、引越しの際にどこかの荷物にまぎれてしまったらしい。
他のゲームボーイのカートリッジは大量に出てきた。
ポケモンは見当たらないが「遊んでみたい」という長男に、「スペースインベーダー」を遊ばせて見る。
非常に単純なゲームなので、すぐにルールは理解できたらしい。
「ただ動くだけで楽しい」という、牛ダッシュ!や、ぶつ森や、遊覧飛行もいいゲームだとは思う。
でも、ここで初めて、目的を持った「ゲームらしい」遊び方を習得する。
最初は自機を動かすことも難しい。
弾を撃つのに集中して、敵の弾を避けられない。
しかし、徐々にではあるが上達する。
「あと少しで全部やっつけられるよ」「でも、早く動くようになって難しい」などと、実況中継しながら遊んでいる。
一面クリアはまだ難しいようだが、UFO は結構な率で狙って当てられるようになったらしい。
ゲームは平日は遊ばない、と約束させたので、次の週末までにコツを忘れてしまうかも。
でも、今のところ一番熱中しているのは、インベーダーゲームのようだ。
さて、1面クリアしたら、次は同じくゲームボーイのパックマンかな。
もしくは、PS2の「ナムコミュージアム」でギャラクシアンを遊ばせてみるか…
#ゲームボーイではなく、PS2 の「タイトーミュージアム」のインベーダーを遊ばせるのもいいかもしれない。あっちのほうが本物に近いから。
ここら辺の「オールドゲームコレクション」は、子供にそのうちゲームの歴史を教えるつもりで購入してある。
同じテーマの日記(最近の一覧)
別年同日の日記
申し訳ありませんが、現在意見投稿をできない状態にしています。 |
…と、先日と同じ書き出しで始めてみました。
トミカには周辺商品が多数あり、テレビにつないで遊べる子供向けテレビゲームなんかもある。
で、うちの子が「遊びたい」としょっちゅう言っているので、Wii ware の「トミカドライブ しゅつどう!緊急車両編」を買ってやる事にした。ソフトだけなら安いしね。
ただ、「買うことに」してから、実際の購入まで1ヶ月くらい迷った。
これが、子供が遊べるゲームなのかどうかわからないから。
ゲームマニアが買うような商品ではないので、ネットを見てもほとんど情報が無い。
というわけで、人柱レポートです。
今後買う人の参考になれば幸い。
うちの子は5歳と2歳5ヶ月。
上の子は、Wii Fit の「スキージャンプ」程度は遊んだことあります。
あれはコントローラー持たなくていいし、「タイミングを見て立ち上がる」だけのゲームなので。
つまり、ゲームはほぼ初体験。
心配していたのは、子供が操作できなことがストレスになるゲームではないか、ということ。
しかし、心配は要りませんでした。
基本はドライブゲームです。
「トミカタウン」の中を走り、パトカーで信号無視の車を追いかけたり、消防車で火災現場に急行したり、救急車で怪我人を搬送したりします。
ドライブゲームではありますが、カーブは勝手に曲がります。
ハンドル操作はありますが、「車線変更して前の車を避ける」だけ。
アクセル操作も、ブレーキ操作もありません。
でも、「スピードアップ」はあります。これは、急行している感じを出すアクセント。
緊急車両なので、サイレンを鳴らすことが出来ます。
鳴らしていないと信号で止まりますが、鳴らしていると通過できます。
マイクで前の車に呼びかけることも出来ます。
呼びかけると車線を開けてくれるので、ハンドル操作がうまく行かない子供でも安心。
他に、ライトをつけたり、ワイパーを動かしたりも出来ます。
雨が降ることはあるのでワイパーの存在意義はありますが、ライトは気分程度のもの。
…さて、ハンドル操作はほぼいらず、簡単なゲームか、というとそうでもない。
信号待ちの車は動いていないので、マイクで呼びかけてもどいてくれません。
これは避ける必要があります。
避けないと、ゲームクリア時の「安全運転」が減点されます。
100点満点で、車にぶつかるたびに10点減点。
他に「サイレン」も100点満点で、信号につかまるたびに10点減点。
「マイクよびかけ」は、使わないと50点。使うと100点。
重要なのが「時間」で、設定タイム(公表されないが、ゲームごとに設定されている)以下でゲームクリアすれば100点。時間オーバーは、1秒ごとに1点減点。
この400点満点で競うわけですが、大人がやっても気を抜くと減点される。
まぁ、子供が適当にやって400点取れる場合もあり、運の要素も大きいです。
5歳の子供は、すぐに慣れて楽しんで遊んでいます。
二人用で遊ぶと、プレイヤー1は全部の操作が可能、プレイヤー2はハンドル・スピードアップ以外の操作が可能です。
大人がアシストしてハンドルは子供に任せるもよし。
逆に大人が完全操作できる状態で、子供にサイレン鳴らさせてあげるもよし。
2歳の子供は、これでかなり喜んでいます。
ちなみに、トミカ好きならわかる「T君」がトミカタウンの中に立っていたり、遠くにプラレールが走っているポイントがあったり、結構細かな部分で遊び心もあります。
交差点もあるのに自由に曲がれない、というのに、うちの子は少し不満そうではありますが、これは「ハンドル操作が簡単」なのでトレードオフなので仕方ないところか。
というわけで、トミカ好き・特に緊急車両好きの幼稚園・保育園児なら買い。
多分、小学生には物足りないゲームでしょう。
(その子がはじめて遊ぶテレビゲームだというなら、十分楽しめると思いますが)
これ、「緊急車両編」なのだけど、続編予定あるのかな。
うちの子は工事車両とか、ごみ収集車も好きなんですけど…
…どうゲーム化すればよいか、自分でもわからん (^^;
#簡単操作、というのと、工事車両でできることの自由度の高さが両立できなさそう。
同じテーマの日記(最近の一覧)
別年同日の日記
申し訳ありませんが、現在意見投稿をできない状態にしています。 【なつみ】 はじめまして。ごめんなさい、間違ってしまい、何度も書き込みをしてしまいました。我が家もwiiのトミカドライブを購入しようか迷っております。レビューもほとんどない中、ここへ辿り着きました。とっても参考になりました。ありがとうございます。あまりにも知りたいことが書かれていたので、お礼を言いたくて書き込みをしました。助かりました、ありがとうございます。 (2009-11-28 06:54:10) |
Netwalker 買っちゃいました。
HP-200LX、リナザウ(日記には書いていないが、SL-C700、SL-C760、SL-C3000と3台所有した)、W-ZERO3[es]、Advanced/W-ZERO3[es]と経由してきて、Netwalker なわけですが…
#他に PT-110やVAIO Uも所有したが、ほとんど使わず。
欲しがる人はとっくに購入しているマシンなので、いまさらなのですが、自分の記録のためにも日記を。
まず、Netwalker は「現時点でベスト」だと思うのですが、「歴代でベスト」だとは最初から思っていません。
自分がこの手の「極小マシン」に求めているのは、電車の中でも立ったまま文章が入力できることです。
その点では、いまだに HP-200LX がベストマシン。
理由は、OS が DOS をベースとして、モバイル用に熟考されたインターフェイスを搭載したものであり、ポインティングデバイスなど不要だったためです。
DOS の豊富なソフトが使えた、というのも重要ポイント。
でも、「当時は」最高のマシンでも、今では使う気はしません。
理由は、現代において「文章を入力する」というのは、WEB での調査作業と表裏一体だから。
DOS ベースで、WEB アクセスが不自由なマシンでは使い物になりません。
リナザウは、カスタマイズされた、サブセットの Linux を搭載していました。
このカスタマイズにより、HP-200LX と同じようにモバイルでの使いやすさを実現していましたが、同時に「Linux のソフト資産」を完全に継承できませんでした。
それでも、進化の止まってしまった HP-200LX に比べれば、ネットにも接続できたしカラー表示も可能だった。
「時代の流れ」で、当時はリヌザウはベストでした。
ただ、Sharp はリヌザウ以前の「ザウルス」ほど、使いやすい環境を整えられなかった。
WEB も「出来なくは無い」が実用的ではありませんでした。
志は高いが、完成度は低かったマシンだと思います。リヌザウは。
W-ZERO3 の OS は、ご存知 WindowsMobile 。昔は WindowsCE と呼ばれ、後に PocketWindows と呼ばれたやつです。
Windows っぽさを残しつつ、実はまったく違う OS 。
ソフト資産は継承できないし、インターフェイスはデスクトップで使用することを前提としたもの。
つまり、モバイルでは非常に使いにくいです。
それでも使っているのは、携帯電話とリヌザウの2台を持ち歩くのに疲れたから。
使いにくいと思っているユーザーは多数いて、改善するソフトも定番となるようなものがたくさんありますし。
リヌザウを使っている最中から、仕事柄どこでも SSH できることが重要になっていたのですが、W-Zero3 ならそれができる、というのも重要ポイントでした。
今も使っています。
QWERTY キーボードがあるので、メールを書く時に便利、というのは大きな特徴です。
Willcom ならメール無料ですし。
…でも、最近携帯各社もメールを無料にすると発表したので、乗り換えようと思っています。
だって、今の世の中「大手3社」の普通の携帯を持たないことって、デメリットになるのだもの。
#そういう理由で、iPhone への乗り換え、というのは却下。興味はあるのだけどね。
たぶん、来春発売の DoCoMo のキーボード付きマシンに乗り換えます。
また Sharp だけどね…
そして、Netwalker。
Ubuntu Linux を搭載し、基本的には「小さいけど普通のパソコン」です。
ハード的にはモバイルで使いやすいように工夫はしているけど、マウスよりも使いにくいポインティングデバイスでマウスカーソルを動かしてウインドウを操作するなんて、あまりやりたくない。
リヌザウでは、CPU の非力さを補うために「一度起動したソフトを終了しないようにする」オプションがありました。
このフラグをセットしたソフトは、終了したように見えてもメモリ上に残ります。
Netwalker も CPU は非力なのに、このようなオプションもない。
電源 ON が3秒でも、そこからソフトを起動するのに 30秒かかっては無意味です。
でも、「Window 操作がしにくい」も「ソフトを常駐させたい」も、実は Window Manager の問題なんだよね。
そして、ただの Ubuntu だからこそ、解決される(かもしれない)望みがある。
実は、購入時に工人舎の PM とかなり悩みました。(多くの人が悩むようです)
PM は Windows なのに右クリックが無い、というのが、Netwalker を選んだ理由の一つです。
WindowsMobile での「右クリック」が、同じ操作(タップ長押し)で非常に使いにくいので。
でも、多くの人が言うようなキーボードは、案外気になりません。
ひどいキーボードのマシン使い慣れてるからな。
#HP-200LX だって、結構ひどいもんでした。
98HA は特にひどかった。けど、ちゃんと使えてた。あれに比べれば…
長々書いていますが、実のところまだ余りいじっていません。
先週火曜日に届いていたのですが、病気で寝込んでいたもので。
関連ページ
PHSサービスが始まった日(1995)【日記 16/07/01】
別年同日の日記
申し訳ありませんが、現在意見投稿をできない状態にしています。 |
昨日の日記に引き続いて。
休日とはいえいろいろと忙しく、少しづつ Netwalker をいじってみる。
なぜか無線LANがつながらず、この設定だけで数時間。
Netwalker 、ってくらいで、ネットにつながらないと何も出来ない。
ネットにつながったら、ユーザー登録。
そして、「本体が動くうちに」リカバリーSDカードを作るように、と薦められる。(マニュアルに書いてある)
リカバリーSD を作るには、SHARP のWEBページからスクリプトをダウンロードして実行する。
本体内のデータを退避して作るのかと思ったら、単純に SHARP のページからイメージバイナリをダウンロードするだけなのね。
わざわざ Netwalker で作業させる意味がわからない…遅い無線 LAN で延々と3時間くらいかかる。
続いて、いろいろとおかしなところを修正。
localhost が設定されていない、という問題があるそうなので修正。
ともかく、完了したらやっと「自分好みの」カスタマイズ開始。
とりあえず、リヌザウでは「文庫ビュワー」にずいぶんお世話になっていた。同様の読書環境は整えたい。
Netwalker には残念ながら文庫ビュワーはないのだが、XJP がある。
GIGAZIZEにインストール方法が載っていたので、参考にインストールしてみよう。
…まずは記事のままインストールした。
でも、あとでいろいろおかしいことに気づいた。GIGAZINE 、記事にするならちゃんと検証しようね。
#今回のことに限らず、GIGAZINE は詰めが甘いというか、嘘が良く載っている。
まぁ、「面白がる」「速報性を重視する」方針…つまり、タブロイド紙の方向性なので構わないのだけど。
まず、xtext.conf の設定について。
AOZORA_LIST の項目は「青空文庫のディレクトリ構成」を意味するので、書き換えてはいけない。
(GIGAZINE の記事では、ローカルのディレクトリ構成にしたがって書き換えている)
うっかり書き換えると、この後書くとても便利な機能が使えなくなる。
Ubuntu日本語フォーラムに、XJP のバグ修正パッチが投稿されている。
バグが残ったままだと、l (小文字のL)キーを押しただけで操作不能になったりするので、バグは是非修正するように。
で、このバグ修正で、ネット接続モードも使えるようになる。(修正しないといろいろおかしい)
./configure する際に、 --enable-net オプションをつけておこう。
すでにコンパイルしちゃっている人は、make clean してから make install。
これで、n キーを押しただけで青空文庫に接続し、テキストがダウンロードできるようになる。
本(?)が気軽に読めて、すごく便利。
ゲーム環境。ゲーム好きなので、個人的にはすごく大事。
Ubuntu には標準でゲームがいくつか入っているが、Netwalker には入れられていない。
「アプリケーション」の「追加と削除」から簡単に入れられる。
AisleRiot Solitaire を入れる。
これを入れると、一緒に Ubuntu 標準のゲーム…マインスイーパーや上海、サメガメやTali などが入る。
えーと、ベーシックすぎて余り面白くない、と公言してはばからない人も多いですが、個人的には嫌いではないです。
…いや、どうでもいいゲームも入るのは事実なんだけど。
サメガメは、個人的な好みでいうと OldMac 版の「まきがめ」が熱かった。
というか、サメガメ人気のほとんどは、この「まきがめ」での僅かなルール変更によるもので、そのルールが入っていないサメガメにはあまり興味が無い。
Tali は、Yahtzee。
ルールを知らない人には意味がわからないかも。知っている人なら熱くなれます。
…が、残念ながら、Netwalker では画面の縦幅が僅かに足らない。
遊べるのだけど、ちょっと遊びにくい。
AisleRiot Solitaire は、各種トランプソリティアを一つにパッケージしたもの。
非常に多数のゲームが入っています。ルール知らないのばかりだけど、遊んでいるうちに理解できたりするのがまた楽しい。
個人的には、実はこれで「スパイダー」を覚えました。
(Windows XP に付属するより前の話)
BurgerSpace 、というゲームがあったので入れてみる。
これは、まんま「ハンバーガー/BurgerTime」のclone。結構良く出来ている。
もっとも、アクションゲームをNetwalker のキーボードで遊ぶのは、ちょっと辛いかも。
で、個人的にはこれを是非入れたかった、FCE Ultra。
リヌザウの時は、デスクトップマシンにクロスコンパイル環境作って、自分でリヌザウ用にポートして遊んでいた。
それでも、音を出さない設定で、4フレームごとの描画がやっとだった。結構遊べたけどね。
今回はコンパイルは不要。GFCE Ultra NES Emulator を入れるだけ。
ネット上の評判によると「ガクガクで遊べたもんじゃない」「音が出ない」などといわれているけど…
起動してみると、たしかに。
音が途切れちゃって耳障りだし、動きもガクガクする。音を消す設定があるので音を消すと、かなりスムーズに動く。
でも、以前に自分でポートした経験がここで活きる。
実は、ファミコンエミュレーターでは画像を作ること以上に、音源のエミュレートに処理時間が食われているのだ。
そして、「完璧なエミュレートをもとめる」か、「実用速度で動くことを求める」かは、ユーザーが決められるように作ってある。
GFCE Ultra のインターフェイスパネルの Advance タブで、Extra Parameters を入力。
-soundq 0 -soundrate 12000
saundq は、サウンドのクオリティだ。より良いエミュレートを求めるなら 1 を、速度重視なら 0 を指定する。デフォルトは 1 だ。
soundrate は、生成されるサンプリングデータのサンプリング周波数だ。標準では 48000 だが、12000 にすれば 1/4 の処理で生成できる。
僕の環境ではこれで十分だったが、必要なら -frameskip 1 を入れると良い。
これで、1コマごとに飛ばして描画する。描画処理も重いので、半分になればかなり軽くなる。
ちゃんと音も出るし、ガクガクしない。スムーズなゲームが遊べる。
ザウルスの時に比べると格段の進歩だ。
ちなみに、パッドの設定は「Input」タブで、最初にヘルプを読んでから行うように。
ヘルプを読まないと設定方法の意味がわからない。
ゲームを開始したら、Alt+Return で全画面化するといい。
全画面に引き伸ばしたら速度が落ちるかな…と思ったら、背景で余計な別プロセスが画像描画するほうが、よほど処理を食うようだ。
ほかに、battwalker入れました。
たしかに、標準のバッテリー表示は役に立たないわ。
HP200LX の時は、標準では「ニッカド電池」を想定した残量表示だったので、LiON 電池を使い始めてから電圧推移をグラフで書いてくれるソフト使っていたっけ。
battwalker も電圧のログをファイルに残すそうなので、グラフ表示アプリ作ると楽しいかも。
別年同日の日記
申し訳ありませんが、現在意見投稿をできない状態にしています。 |
Netwalker の真価は、ネットに接続してこそ発揮される。
…が、家の中の WiFi 機器は1台だけ。リビングの Wii のすぐ後ろにおいてある。
仕事場やベッドルームは一番遠いところにあり、非常に電波が弱く、速度が出ない。
以前は、仕事場の横のサーバールームに WiFi 機能付のルータを置いていたのだ。
しかし、ルータが故障して買い替えた際に、WiFi なしのものにしていた。
というわけで、fon 導入。
fon にしたのは、Netwalker を家の外でも使いたい、という考えがあったから。
fon で linus になれば、いろんなところで使えるからね。
ところが、導入は大変だった。
…いま、fon を導入しようと考えている人のために正確なことを書いておこう。
大変だった、なんて書くと尻込みしてしまう PC 初級者の方もいるかもしれないが、安心して導入しよう。
PC 初級者なら、何も考えずに導入すれば使えるようになっている。
むしろ苦労するのは、初級者とは言えない環境に導入する場合だ。
うちの場合、すでに LAN 環境が整っており、そこに組み込むのに苦労した。
まず、ルーターについての概要を説明しておく。
ルーターとは、2つのサブネットを結ぶものだ。
例えば、ネット「1」は、256 のアドレスを持っているとしよう。
なので、256台の機械を接続することができる。
ネット「2」も、同じように 256 のアドレスを持っている。
2つあわせれば、512 台の機械を接続できる。
でも、「1」と「2」の間は接続されていないのだ。つなげる必要がある。
この、それぞれの 256台ネットワークを「サブネット」とよび、間を接続するための特別な装置を「ルーター」と呼ぶ。
「道(route)」を作るものだからルーターだ。
サブネットというのは「ネットの一部」というような意味だ。
ルーターは、ネット「1」のアドレスと、「2」のアドレスを両方同時に割り当てられた、特別な存在となる。
さて、家の中の LAN というのは「サブネット」だ。そして、家の外のインターネットも、ある意味「サブネット」だ。
家の中の LAN にも、それぞれの機械にアドレスを割り振らなくてはならない。
大抵の家庭用ルーターには、この「アドレス割り振り」を自動的に行ってくれる、DHCP サーバーという機能が付いている。
なので、PC にそれほど詳しくない初級者であっても、ルーターを買ってきてそこに PC を繋げば、ちゃんとインターネットにつながることができる。
すでにこのような環境になっている人は、今使っているルーターの替わりに fon ルーターを使えば、それだけで fon の導入は完了する。
fon ルーターは何よりも安いし、街中のアクセスポイントが無料で使える、というメリットがある。
「他人が自分の家のアクセスポイントも使う」ということに対して、セキュリティを心配する人もいるが、心配は要らない。
fon は「ルーター」だから、サブネットをどのようにつなげるかは自由自在なのだ。
初期設定では、自分がアクセスしたら家の中の LAN にも接続するが、他人がアクセスしたらインターネットにだけ接続できる、という設定になっている。
設定を変えない限り、セキュリティの心配は要らない。
ところが、fon が「ルーター」であることが、場合によっては設定の苦労につながる。
無線電波を出すだけの「アクセスポイント」なら苦労は無いのにね。
(その場合、セキュリティをまったく考慮しないことになるので、論外なのだが)
以下、苦労話。
うちの場合、 fon 導入前は以下のような環境だった。
・ルータに付いた DHCP サーバー機能を使い、サブネットの「一部」の IP アドレスを自動割付している。
・家庭内サーバーがあるので、これは静的 IPアドレスが必要。
・一部の家庭内サーバーは外部公開もしている。
・ルータに付いた機能で、IP電話を使っている。
・既に家の中に WiFi アクセスポイントがある。
さぁ、ここに fon を導入すると、何がどう混乱するのか、順を追って解説しよう。
まず、既存のルーターには IP 電話機能があるが、fon には無い。
この時点で、「ルーターを fon に置き換える」という選択肢は無い。IP 電話が使えなくなってしまうからだ。
このため、既存のルーターと fon の2台を並存しなくてはならない。
どちらを外にするか…だが、既存ルーターを外(インターネット側)に置くことにした。
既存ルーターに、静的 IP 接続のモードがなかったためだ。
先に書いたが、ルーターは2つサブネットの両方に所属し、2つのアドレスを持つ。
家庭用ブロードバンドルーターでは、このうち「インターネット側」のアドレスを、PPPoE や DHCP で設定する。
方式の違いはあるが、簡単に言えば「接続するたびにアドレスがかわる」という方式だ。
これに対し、静的 IP 接続では、インターネットのアドレスをあらかじめもらっている必要がある。
アドレスをもらうには大抵複雑な手続きが必要だし、そこまでする理由も無いため、通常は使わない。
使わないけど、fon にはそのモードがあり、僕が持っている既存ルーターにはなかった。
家庭用ブロードバンドルーターでは、少なくとも「家庭内」のアドレスは自分で設定できる。
そこで、既存ルーターがに割り振ったアドレスに対し、fon のルーターが接続する…という形で設定をすることにしたのだ。これが、fon が内側になった理由。
さて、これは「ルーター」の2段接続だ。
先に書いたように、ルーターは2つのサブネットを接続する。
逆に言えば、家の中にはそれまでネットワークが1つだったのだが、これで2つのネットワークができてしまった。
今まで、家の中は「1」のネットワークにしていた。具体的に言えば、192.168.1.* を割り振っていた。
当然既存ルーターもこのアドレスを持っていたが、このアドレスを fon に譲り、既存ルーターは「2」となった。つまり、192.168.2.1 だ。
そして、fon は外側に向けては 192.168.2.2 のアドレスを持ち、192.168.2.1 をゲートウェイ(サブネットを繋ぐ門…つまり、ルーターのアドレスを設定する)とした。
「1」のネットワークでは、既存ルーターのアドレスには fon が収まるためになんの設定変更もいらない。
ちなみに、「2」のネットワークは DMZ となっている。
外部公開サーバーをここに移したほうがよいだろう、とは思うのだが、IP アドレスを変更する必要があり、そうすると家庭内のいろいろな設定を変えないといけないので、まだやっていない。そのうちやろう。
既存ネットワークのままで使用するのであれば、外部接続サーバーは、既存ルーターとfonルーターの両方で port forword 設定しなくてはならない。
既存ルーターは fon ルーターに向けて forword し、fon ルーターが正しいマシンに forword する。
既存ルーターには簡易 DMZ 機能(すべての接続を特定マシンに forword する機能)があったが、これは使わなかった。でも、これでもいいと思う。
さて、話はこれで終わりじゃない。
すでに家庭内には WiFi アクセスポイントがあり、fon を同じ設定にしようとした。
…が、設定できない。
先日、Netwalker の導入に際して家庭内の無線 LAN 設定を変えたのだが、その際にセキュリティ強度をあげる意味もあって、非常に長いパスフレーズを導入していた。
が、どうも fon では余り長いパスフレーズを設定できないらしく、エラーとなるのだった。
パスフレーズを短くして対処。
もうひとつ。DHCP の問題があった。
普通、DHCP は IP アドレスを「リース」する「範囲」を決められる。
たとえば、「1」のネットワークの256 のアドレスのうち、64~128 までをリースする、など。
ところが、fon にはこうした設定が無い。
DHCP を「使う」か「使わない」の設定しかないのだ。
すでに静的に割り振っているアドレスを2重に使われたらネットワークがおかしなことになる。
ここは、家庭内サーバーに DHCP サーバーのソフトを導入して解決。
…と、これで一応設定は完了。
恥ずかしながら、設定中に勘違いしたことを明記しておこう。
同じ勘違いをしそうな人に対して、なぜそれがいけないのか、注意を促せるかもしれない。
(個人的には、成功例からは何も学べないと思っている。失敗からこそ、学ぶことがある)
最初は、既存ルーターを同じネットワークの別アドレスに動かし、fon に既存ルーターのアドレスを割り振り、既存ルーターの下に置く(物理的な接続は、成功例と同じ)ことで動くと期待した。
つまり、「2つのサブネット」が同じネットアドレスになっている状態。
これではうまく行かない。サブネットは別々のアドレスにしなくては。
なぜか? 「アドレスが別のサブネットに属している」と判断した時に、パケットは Gateway に送られ、ルーターを通過できるためである。
別のサブネットが同じアドレスだと、この判断ができない。
次に、「単に fon ルーターをアクセスポイントとして、既存ネットワークにつなげてもよいのでは?」と思った。
fon ルーターは、実は4種類のネットワークをルーティングしている。
インターネット、公開無線LAN、プライベート(家庭内)LAN 、プライベート無線LAN、である。
ルーターにはインターネット(外向け)有線ポートと、プライベート向け有線ポートがある。
インターネット側からは、port forword されない限り、他のネットワークに入れない。
公開無線LAN は、インターネット側にしか通れないことで、プライベート側のセキュリティを確保する。
プライベート無線 LAN とプライベートLAN は同じサブネットに属し(そういう意味ではサブネットは本当は3つであり、ここはルーターの出番は無い)、インターネットに接続することができる。
fon ルーターをルーターではなく、アクセスポイントとして使用した場合は、プライベート無線LAN か、公開無線 LAN のいずれかしか使えない、ということになる。
プライベートで使えないのでは買った意味が無いし、公開していないと linus にはなれないので、これも買った意味が無い。
だから、単にアクセスポイントとするのではダメなのだ。
最後に、一番「間抜け」だった勘違いを…
既存ルーターを家庭内 LAN から切り離し、間に設定済みの fon を挟む。
これでうまくアクセスできるはずだった。
デスクトップ PC から、家庭内サーバーに接続してみる。…うまく行かない。
慌てて接続・設定を元に戻し、それからゆっくり考える。
…良く見たら、家庭内サーバーは既存ルーターに内蔵された HUB に接続されていた。
既存ルーターから接続された HUB に、全ての家庭内ネットワークがぶら下がっている、と考えていたための勘違い。これでは接続できるわけが無い。
論理的に思考して、全ての設定がうまく行っていると思ったうえでの作業だったのですが、物理的な部分を十分検証していなかったための勘違いでした。
類似の勘違いは案外やりがちだと思うので気をつけましょう。
別年同日の日記
申し訳ありませんが、現在意見投稿をできない状態にしています。 |
昨日発表されたばかりの新サービスで、いろいろ話題になっていますね。
これを知って、「どんなだろ?」と情報検索してみると、結構出てくる。
今の google は、書かれて数時間後には検索結果に出てくるようになりますね。恐ろしい。
ところが、どうも「的外れ」な記事ばかり。
DNS って、インターネットにとっては「空気のような」技術で、有ってあたりまえだから、詳しい仕組みをわかっている人少ないのですね…
まず、ping しても DNS の速度は測れません。
ping を開始する前の「前準備」としては DNS に問い合わせを行うけど、ping そのものには関係ないから。
また、そもそも DNS の「速度を測る」のが無理です。
インターネットでは刻々と条件が変化しますから、速度を測るのであればできる限り同じ条件で数回試験を行って平均を出す、などしなくては正しい測定にはなりません。
しかし、DNS には「キャッシュ」があるので、2回目以降は高速に動作します。
更に言えば、後で書くように DNS サーバーは「複数のサーバーが協調して動作する」ために、1回目ですら試験を行う時に経路上のどのサーバーもキャッシュを行っていない、などと保証することは出来ません。
だから、複数回試験をして平均を出すことは出来ず、1発試験に望んでも、そのデータが正しい保証が無いのです。
WEB の閲覧速度は、DNS 問い合わせ速度 + 相手の WEB サーバーの反応速度 + 通信経路の速度、が速度となります。ここで、通信経路はクライアントの環境ごとに大体速度が固定するとして、DNS 問い合わせが高速化することで全体が目に見えて高速化するためには、WEB サーバーの速度が速いこと、が条件の一つになります。
というわけで、「相手が google のように高速化されたサーバーだと効果がある」というような記事が出来上がるのでしょうが、google ほどみんながアクセスするサーバーであれば、近所の DNS サーバーを使っていても誰かが問い合わせたキャッシュがあるでしょうから、google DNS を使わないでも十分に高速なはずです。
つまり、こういう場面では google DNS の効果はそれほど出ないはずです。
じゃぁ、google DNS で何が速くなるのかと言えば、「みんなが行かないような小さなサイト」を、初めて訪れる時の速度です。
同じドメインでの2回目以降のアクセス…つまり、サイト内でページ遷移する時などは、手元のローカルマシンが DNS 問い合わせの結果をキャッシュしています。だから、DNS は最早関係ない。関係するのは、あくまでも「初回アクセス」のみ。
でも、実は google で検索を行って、片っ端から情報を見て回るようなときには、小さなサイトを訪れて、最初のページを見ただけで帰る、ということを繰り返しているはず。
そういう作業が高速になるのが、google DNS の1つ目のメリットです。
ここで、DNS の仕組みについて書いておきます。
よく言われる比喩だけど、DNS は「知らないことは、知っていそうな人に聞く」ことで動いています。
あなたの使っているパソコンは、ドメイン名について何も知りません。
www.wizforest.com というドメインを指示されても、何もわからない。
そこで、上流の DNS に問い合わせます。
PC が DHCP 設定で動作している場合など、「上流の DNS」という存在を意識したことなど無いでしょう。DHCP は全てを設定してくれますから。
でも、PC はどこか「近くの」DNS サーバーを知っていて、わからないことはそのサーバーに聞くのです。
ところが、聞かれたサーバーだって、全てを知っているわけじゃない。
世の中には情報が多すぎて、サーバーが知っていることなんてその、ほんの一部です。
でも、www.wizforest.com は知らなくても、.com については知っているかもしれない。
そんな時、近くの DNS サーバーは、.com について知っているサーバーに「www.wizforest.com を知っているか?」と問い合わせます。
では、.com を知っているサーバーは www.wizforest.com を知っているか? これも、そんなことは無いでしょう。
でも、wizforest.com なら知っているようです。そこで、.com のサーバーは、wizforest.com を知っているサーバーに、「www.wizforest.com を知っているか?」と問い合わせます。
wizforest.com の DNS サーバーは、僕が設定した DNS サーバーです。こいつは、www.wizforest.com を知っています。
そこで、やっと「あぁ、その IP アドレスは、xxx.xxx.xxx.xxx だよ」と返します。
返事をもらった、.com を知っているサーバーは、最初に問い合わせた「近くのDNSサーバー」に返事を送ります。
と、同時に、次の問い合わせに備えて、今回知ったことを覚えて(キャッシュして)おきます。
近くのDNSサーバーは、問い合わせた PC に返事を送ります。そして、やはりキャッシュします。
こうして、PC は IP アドレスを知ることができました。
IP アドレスは、ネット上の「住所」です。これがわかれば、目的地にたどり着くことが出来ます。
これで問題解決。
これが DNS の仕組み。
すばらしいことです。おかげで、僕は自分の管理するパソコンを、自分の DNS に登録するだけで、世界中の人に知らせることが出来ます。
でも、問題点がいくつか。
この方式は、遅いです。
一応、遅いことは考慮していて、どのマシンも一度問い合わせたことは「一定時間」覚えておく努力をします。
(一定時間が来る前に忘れることもあるけど。…メモリの制約などで)
あなたの手元のパソコンだってそう。
一度問い合わせたドメイン名を、次の瞬間にもう一度問い合わせるような間抜けはやりません。
だから、同じ WEB ページ内でブラウズしている分には、DNS 問い合わせを省略した分だけ高速に動作するのです。
でも、初めて訪れるページについては、やはり遅い。これは動かしようの無い事実。
だって、それが DNS の仕組みなんだから。
もうひとつ、「嘘つきがいたらどうするの?」という問題があります。
DNS は「知らないことは、知っていそうな人に聞く」という仕組みで動いていますが、知りもしないのに知ったふりをする「シッタカ」がいたらどうなるんでしょう?
悪意をもって応用すれば、有名サイトに成りすましたり、銀行サイトに成りすまして人の口座番号を盗む事だって可能です。
これは、特定のサーバープログラムにバグがある、などの問題ではなく「DNS の思想設計そのものにバグがある」という問題です。
というわけで、やっと話は google DNS へ。
google は、「何でも知っている DNS」を開発しました。
一度問い合わせた内容は忘れません。
…本当に忘れないと、サーバー構成の移動などがあった場合に困るので、「忘れて欲しい期限が近づくと、自働的に再確認を行って、最新データに更新し続ける」のですけど。
だから、伝言リレーは始まりません。google DNS に聞いたら即座に答えてくれます。
伝言リレーが無いのだから、嘘つきが混ざることもありません。
キャッシュ更新の際には、キャッシュ期限切れの「直前」なので、まだ相手のサーバーを知っているため、伝言リレーを行うのではなく「本人に直接問い合わせ」ます。
これで全てが解決! …というほどお気楽なものではないでしょうが、DNS の問題のいくつかは解決できるでしょう。
「多数の小さなマシンが協調動作する」という、インターネットの理想とはかけ離れ、パワーを持った1つのマシン(実際はそうではないが、1つに見える)が全てを支配する、という、別の問題は引き起こしますが。
僕は、自宅内の DNS サーバーの上流として、早速 google DNS を設定しました。
検索結果を次々見ていくときなどは、多少速くなった気はします。
…が、そもそもは、こういうときは「遅いから、Chrome で次々タブを開いて、読み込み終わったものから見る」という習慣が身に付いているのでした。
翌日追記
上の日記を書いた時点では、ちゃんと DNS が理解できて検証している、というような日本語の記事がネット上に見当たらなかったために、理解してもらうための記事を書いたのでした。
その後、SlashDot で話題に上り、アレゲな人が集まるサイトだけに正しい議論が行われていました。
現時点でもっとも有用と思われる記事には、正しい見解とともに、簡単な試験データが数値つきで載っています。
ローカルのサーバーに DNS を立てて、上流に google DNS を設定するのがよさそうだ、とのこと。
うちでやっている設定がそれです :-)
論理的に一番よさそう、と思って作業したものが、数値的に正しいと確かめられたわけで、ちょっと嬉しい。
関連ページ
ミッキーマウス&ポール・モカペトリス 誕生日【日記 13/11/18】
ポール・モカペトリスの誕生日(1946)【日記 14/11/18】
別年同日の日記
申し訳ありませんが、現在意見投稿をできない状態にしています。 |