GW-USMicroN2W
長らく sos に接続できなかった理由が,
Driver does not support WPA.
という初歩的なオチだった.確かに Thinkpad X2x シリーズは発表が 2001 年前後だったから, 2004 年の WPA2 はもちろん 2002 年の WPA すら対応しなくてもおかしくはない.ちゃんと -dd を渡して調べておけばこの一年もう少し幸せだったような気がするなあ…
ということで,生協で PLANEX の GW-USMicroN2W を購入.競合製品がだいたい 3-5k で売られている中 1980 円と挑戦的な価格だったので何も考えず即決. Linux 対応は謳っていなかったが,これだけ安いならありがちな石の使い回しだろう…というところまで考えたわけではないのだけれど,ラップトップの本体の仕入れ価格が 5k なので 2k でも十分高いと言う話があって.
ちょっと調べてみたところ, Kernel 2.6.32 以降組み込まれた staging tree に含まれる RTL8192SU のドライバをいじって動かしている Ubuntu な人はいたが, Debian lenny の標準的なカーネルは 2.6.26 なので残念ながらこの手は使えない.ドライバのソースだけ貰ってくることも可能かもしれないがこれは依存関係的な意味でうまくいく気がせず, Kernel 自家コンパイルは好きな人は好きだろうけれども Debian のおいしさを 90% 以上損ねる気がするのでこれも気が進まず,まあ無難に正攻法.
dmesg を見るに,
... Apr 21 18:13:17 luna kernel: [5752948.108022] usb 1-1.2: New USB device found, idVendor=2019, idProduct=ed16 Apr 21 18:13:17 luna kernel: [5752948.108022] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3 Apr 21 18:13:17 luna kernel: [5752948.108022] usb 1-1.2: Product: RTL8188S WLAN Adapter ...
だそうなので, Realtek 本家から Kernel 2.6.x 用ドライバ*1を貰ってきて make .案の定このままでは動かなかったので, grep -r USB_DEVICE . などして見つけた os_intf/linux/usb_intf.c に
*** os_intf/linux/usb_intf.c 2010-03-12 16:39:00.000000000 +0900 --- os_intf/linux/usb_intf.c.modifiee 2010-04-21 18:22:33.000000000 +0900 *************** *** 90,95 **** --- 90,97 ---- {USB_DEVICE(0x13D3, 0x3311)}, // 11n mode disable {USB_DEVICE(0x13D3, 0x3325)}, {USB_DEVICE(0x083A, 0xC512)}, + /* GW-USMicroN2W */ + {USB_DEVICE(0x2019, 0xed16)}, {} };
idVendor/Product を書き加えて make install してみたところ, wlan0 として正常に認識された.過熱が気になったが, WEP も WPA-EAP も少なくとも一時間ほどは通信を維持できたので,とりあえずはこれで良さそう.