2009/02/23
InstantMode
VAIO type P を Xp 化するときに
インスタントモードプログラムが参照している
以下のデフォルトフォルダを作成すると
Xp でもインスタントモードが起動できる。
- \Users\Public\Pictures
- \Users\Public\Music
- \Users\Public\Videon
- \Users\Public\Favorites
インスタントモードからもちゃんと音楽や画像、動画などが楽しめる。
正直な所 Xp 化して起動が早くなったので インスタントモード自体あまり利用しないのだが。
2009/02/21
2009/02/18
wget でファイル送信
wget (1) でファイルを送信する必要が生じたので、 ブラウザでファイルを送信する際のパケットをキャプチャして 通信内容を調べてみる。
想定しているのは input type='file'、
enctype='multipart/form-data' を指定した
フォームによるファイル送信処理。
通常の http ヘッダ以外に "Content-Type" と
"boundary" を wget (1) の
--header オプションで指定し、
multipart/form-data 形式に整形した送信するファイルの内容を
--post-data オプションで指定するだけで送信できる。
Content-Type は 'multipart/form-data'、
boundary は送信するデータの中に含まれない
任意の文字列を指定すれば問題ない。
multipart/form-data 形式は以下の形式に整形する。
--任意の文字列 Content-Disposition: form-data; name="フォーム名"; filename="ファイル名" Content-Type: text/plain (空行) ファイルの中身 (空行) --任意の文字列
実際にコマンドライン形式に記述するとこの様になる。
wget --header="Content-Type: multipart/form-data; boundary=バウンダリ" \ --post-data=' --バウンダリ Content-Disposition: form-data; name="フォーム名"; filename="ファイル名" Content-Type: text/plain ファイルの中身 : --バウンダリ ' 送信先URL
スクリプトの場合などはシェル変数などを利用すると、 もう少し見やすいスクリプトになるだろう。
: : # バウンダリ文字列は世界標準時基準時点からの秒数とする boundary="boundary-`date '+%s'`" # 受信する cgi の <input type="file" name="..."> で指定されるフォーム名 formname="フォーム名" # 送信するファイル filename="ファイル名" # 送信するファイルのデータ contents="`cat ${filename}`" # multipart/form-data 形式のデータ生成 data=" --${boundary} Content-Disposition: form-data; name='${formname}'; filename='${filename}' Content-Type: text/plain ${contents} --${boundary} " # ファイルの送信処理 wget --header="Content-Type: multipart/form-data; boundary=${boundary}" \ --post-data="$data" 送信先 URL : :
2009/02/16
VAIO type P
まさかこの Blog に "VAIO" なんてカテゴリが出来るとは…
高校生の頃の痛い原体験のトラウマに(若干大げさな表現)により、
以来ずっと sony (というか sony 製品)が嫌いだった。
特に VAIO という PC は色んな意味で大嫌いだったので、
とことん忌避して来たのだが…ここにきて VAIO を手にする事になるとは。
本当にジーンズの尻ポケットに入るサイズながら(はい、実際に入れました)、
タッチタイピングできるキーボード(しかも英語キーボード選択可能)、
スティックポインタ、ファンレス+SSD による完全 0 スピンドルなど、
ソニーが、そして VAIO が大嫌いでも選んでしまう魅力にあふれてる。
初期状態でインストールされている Windows VISTA は重くて使いづらいいので、
ダウングレード権を行使するために高価な Windows VISTA business を選び、
早速 Windows Xp をインストールしてみる。
ネット上で公開されている偉大な先人達の努力の結晶を有り難く参照しつつ、
ワンセグ、無線LAN、インスタントモード、ノイズキャンセリングヘッドフォン、
VAIO Media Plus、Bluetooth などを Windows Xp でも使える様にセットアップすると、
非常に快適なモバイルマシンとなった。
ちなみに上記のダウングレード権の公使に関する件で
初めてマイクロソフトのカスタマサポートにメイルで問い合わせをしたのだが、
意外にも(失礼)親切・丁寧な回答に驚いた。
2009/02/05
議論
コピペですが、確かにこういう人いるんだよなぁ…
例:「犬ははたして哺乳類か」という議論をしている場合、 あなたが「犬は哺乳類としての条件を満たしている」と言ったのに対して 否定論者が…
- 事実に対して仮定を持ち出す
「犬は子供を産むが、もし卵を生む犬がいたらどうだろうか?」
- ごくまれな反例をとりあげる
「だが、時として尻尾が2本ある犬が生まれることもある」
- 自分に有利な将来像を予想する
「新しいものは必ず批判される、犬に羽が生えないという保証は誰にもできない」
- 主観で決め付ける
「犬自身が哺乳類であることを望むわけがない」
- 資料を示さず自論が支持されていると思わせる
「世界では、犬は哺乳類ではないという見方が一般的だ」
- 一見関係ありそうで関係ない話を始める
「ところで、カモノハシが卵を産むのは知っているか?」
- 陰謀であると力説する
「それは、犬を哺乳類と認めると都合の良いアメリカが画策した陰謀だ」
- 知能障害を起こす
「何、犬ごときにマジになってやんの、バーカバーカ」
- 自分の見解を述べずに人格批判をする
「犬が哺乳類なんて言う奴は、社会に出てない証拠。現実をみてみろよ」
- ありえない解決策を図る
「結局、犬が卵を産めるようになれば良いって事だよね」
- レッテル貼りをする
「犬が哺乳類だなんて過去の概念にしがみつく右翼はイタイね」
- 決着した話を経緯を無視して蒸し返す
「ところで、犬がどうやったら哺乳類の条件をみたすんだ?」
- 勝利宣言をする
「犬が哺乳類だという論はすでに何年も前に論破されてる事なのだが」
- 細かい部分のミスを指摘し相手を無知と認識させる
「犬って言っても大型犬から小型犬までいる。もっと勉強しろよ」
- 新しい概念が全て正しいのだとミスリードする
「犬が哺乳類ではないと認めない限り生物学に進歩はない」
2009/02/03
2009/02/01
DNS DDoS
詐称された IP address から `. IN NS' という query を投げる
DNS DDoS 攻撃が最近流行っているらしい。
この query に対して root servers のリストを応答すると、
わずか数バイトの問い合わせに対して数百バイトの応答が発生してしまうので、
詐称された IP address に膨大なトラヒックが集中してしまい、
結果として DDoS攻撃
分散型サービス拒否攻撃 Distributed Denial of Service attack
となってしまうらしい。
bind は既に対策が実施されており、 `. IN NS' query に `refused' と応答する様になったので、 対策されていない DNS の管理者は早急に対策するした方が良いと思う。
2009/01/31
URL
当ブログの URL を blog.mitz.jp から blog.bsdhack.org に変更しました。
全然深い意味はないのですが、
blog.bsdhack.org
のトップペイジに当ブログへのリンクを追加したのでドメインを合わせた次第です。
元々当ブログの色味自体が bsdhack.org という感じだったので、
寧ろ正しいドメインに戻したという感じかも?
blog.mitz.jp でアクセスした場合
blog.bsdhack.org に
Rewrite で飛ばしていますので、
bookmark されている方は気が向いたら変更して下さい。
2009/01/24
2009/01/19
FreeBSD で BlueTooth マウスを利用する
最近は BlueTooth を内蔵しているハードウェア(特にラップトップ)が増えたが、
勿論 FreeBSD からも BlueTooth マウスは利用可能である。
特にラップトップの場合少ない USB ポートを占有しないので、
BlueTooth マウスは非常に嬉しいハードウェアだといえる。
プラネックスから発売されている USB 接続タイプの Bluetooth ドングル
BT-MicroEDR2X と、日本では発売されていないが Logicool の V470 という
BlueTooth マウスを入手したので FreeBSD でも利用してみる。
BlueTooth マウスを利用するためにはカーネルモジュールをロードする必要がある。 シェルプロンプトから kldload (8) を実行してロードしてもよいが、 /boot/loader.conf に以下の記述をすることで 起動時に自動的にカーネルモジュールをロードする様になる。
netgrph_load="YES" ng_ubt_load="YES" vkbd_load="YES"
Logicool の V470 の場合は底面にデバイスアドレスが明記してあるので、 BlueTooth 機器との接続を管理している hcsecd (8) コマンドの 設定ファイル /etc/bluetooth/hcsecd.conf に登録しておく。
device { bdaddr XX:XX:XX:XX:XX:XX; name "任意の名称"; key nokey; pin nopin; }
デバイスアドレスが不明な場合は hccontrol (8) コマンドを実行して 情報を取得する。
# hccontrol -n ubt0hci inquiry Inquiry result, num_responses=1 Inquiry result #0 BD_ADDR: XX:XX:XX:XX:XX:XX Page Scan Rep. Mode: 0x1 Page Scan Period Mode: 0x2 Page Scan Mode: 00 Class: 38:01:0c Clock offset: 0x5f95 Inquiry complete. Status: No error [00]
BlueTooth マウスのデバイスアドレスを /etc/bluetooth/hosts に登録する。
XX:XX:XX:XX:XX:XX 任意の名称
bthidcontrol (8) コマンドで BlueTooth マウスの情報を取得し
定義ファイルに出力した上で、bthidd (8) コマンドを実行すると
BlueTooth マウスが利用可能となる。
# bthidcontrol -a 名称 query > /etc/bluetooth/bthidd.conf # bthidd -c /etc/bluetooth/bthidd.conf