一難去ってまた一難。¶
wlデバイスドライバでようやくMacBook Airでも新しい無線LANルータに接続できるようになったと思った矢先、また新たな問題が発生。遅すぎて使い物にならないんだ、これが。Bit rateが2Mb/s~40Mb/sを変動するのだが、通信始めると大体2Mb/sに落ちてしまい、普通のWebサイトを開くだけでも数秒~数十秒かかる。無線LANルータ側からはIEEE802.11nとして接続していると認識されているのに、MacBook Air側ではiwconfigを実行するとIEEE802.11abgnと全部表示される。
取り合えず、有線LANに戻すか…。
Debian on MacBook Airで開通。¶
Broadcom Linux STA driver に再挑戦。yamamotoさんに教えてもらった リンク先 をたどり、 2.6.29用のパッチを当てたら うまく行った。備忘用にメモ。
$ wget -c http://www.broadcom.com/docs/linux_sta/hybrid-portsrc-x86_64-v5_10_79_10.tar.gz
$ wget -c http://www.leprosys.net/files/broadcom-sta-5.10.79.10-linux-2.6.29.patch
$ tar zxvf hybrid-portsrc-x86_64-v5_10_79_10.tar.gz
$ patch -p1 -d src/wl/sys < broadcom-sta-5.10.79.10-linux-2.6.29.patch
$ make -C /lib/modules/`uname -r`/build M=`pwd` clean
$ make -C /lib/modules/`uname -r`/build M=`pwd`
$ modprobe -r ndiswrapper
$ sudo cp -i wl.ko /lib/modules/`uname -r`/kernel/net/wireless/
$ sudo depmod -a
$ sudo modprobe lib80211_crypt_ccmp
$ sudo modprobe wl
$ lsmod | grep wl
wl 1482308 0
lib80211 7284 2 lib80211_crypt_ccmp,wl
wlだと、デバイスがwlan0じゃなく、eth1になったので/etc/network/interfaceなどを修正してOK。IEEE802.11nで通信できるようになった。
(/etc/wpa_supplicant/wpa_supplicant.conf)
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
ap_scan=2
update_config=1
network={
ssid="ssid"
psk=64bit_presharedkey
proto=WPA2
key_mgmt=WPA-PSK
pairwise=CCMP
}
(/etc/network/interface)
auto lo
iface lo inet loopback
auto eth1
iface eth1 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
yamamotoさん、情報ありがとうございました。
Debian on MacBook Air & PSPのみダメだった。¶
NEC WR8500Nを返品して、代わりに購入したBUFFALO WZR-HP-G300NHだが、WPA2-PSK AESで接続検証を行ってみた。
使えたもの。¶
Let’s Note R3 + NETGEAR WN511T
Debian squeeze/sid
ndiswrapper / netmw14x
Marvell Technology Group Ltd. 88W8361(11ab:2a02)として認識。
Windows xp SP3
黒MacBook
Debian squeeze/sid
madwifi
Mac OS X
MacBook Air
Mac OS X
Chumby
Wii
iPod touch
ダメだったもの。¶
PSP
MacBook Air
Debian squeeze/sid
ndiswrapper / bcmwl5
Broadcom Corporation BCM4328 802.11a/b/g/n (rev 05) (14e4:4328)として認識。
PSPはWPA2自体を扱えないので仕方ない。最新のファームウェアも対応してなかった。MacBook Airは何でだろうかなぁ…。まぁ有線LANを使うか…。
/etc/modprobe.d/arch/以下は変更しちゃアカンようだ。¶
先日のHack Cafeで実行した下記コマンドの結果による不具合。
$ cd /etc/modprobe.d/
$ for i in `find -type f ! -name "*.conf"`; do sudo mv $i{,.conf} ; done
これを実行していたせいで、initramfsの作成がうまく行かないようだ。
$ sudo apt-get update
(snip)
E: dpkg was interrupted, you must manually run 'dpkg --configure -a' to correct the problem.
$ sudo dpkg --configure -a
menu のトリガを処理しています ...
initramfs-tools (0.93.2) を設定しています ...
update-initramfs: deferring update (trigger activated)
initramfs-tools のトリガを処理しています ...
update-initramfs: Generating /boot/initrd.img-2.6.29
cpio: ./etc/modprobe.d/arch-aliases: Cannot stat: そのようなファイルやディレクトリはありません
update-initramfs: failed for /boot/initrd.img-2.6.29
dpkg: サブプロセス post-installation script はエラー終了ステータス 1 を返しました
仕方ないので、symlink張っておいた。
$ cd /etc/modprobe.d/arch
$ sudo ln -s i386.conf i386
これで解決したけど、arch/以下は将来的に.confにしないで良いのかな?