ThinkPad L412 の Linux での無線 LAN のテスト
搭載している Intel Centrino Advanced-N 6200 AGN の Gentoo でのテスト。
カーネル設定
カーネル設定。カーネルソースは 2.6.33-gentoo-r2 で確認。
いじる場所
- Intel Wireless WiFi Next Gen AGN (iwlagn) をモジュール <M> にして
- Intel Wireless WiFi 5000AGN; Intel WiFi Link 1000, 6000, and 6050 Series にチェック [+] を入れる
Device Drivers -> Network device support (NETDEVICES [=y]) -> Wireless LAN (WLAN [=y]) -> Intel Wireless Wifi (IWLWIFI [=m]) -> Intel Wireless WiFi Next Gen AGN (iwlagn) (IWLAGN [=m]) Intel Wireless WiFi 5000AGN; Intel WiFi Link 1000, 6000, and 6050 Series (IWL5000 [=y])
モジュール名は iwlagn になるので覚えておく。
また後述のファームウェアを読み込みのために、以下も有効にしておく。
Device Drivers -> Generic Driver Options Userspace firmware loading support (FW_LOADER [=m])
必要なパッケージのインストール
とりあえず必要なものを入れてみる。 dhcp クライアントを使った WEP での接続を想定。
$ sudo emerge -v wireless-tools dhcpcd
接続してみる
まず無線のスイッチを忘れずに入れる。
次にこんな感じでつないでみる。
$ sudo su - # iwconfig lo no wireless extensions. eth0 no wireless extensions. wlan0 IEEE 802.11abgn Mode:Managed Access Point: Not-Associated Tx-Power=15 dBm Retry long limit:7 RTS thr:off Fragment thr:off Encryption key: Power Management:off # iwconfig wlan0 essid ${ESSID} # iwconfig wlan0 key s:${WEP_KEY} # dhcpcd wlan0 wlan0: dhcpcd 4.0.15 starting wlan0: read_interface: No such device
失敗する。このときの dmesg に以下のようなものがある。
usb 1-1.6: new full speed USB device using ehci_hcd and address 4 iwlagn 0000:03:00.0: firmware: requesting iwlwifi-6000-4.ucode iwlagn 0000:03:00.0: iwlwifi-6000-4.ucode firmware file req failed: -2 iwlagn 0000:03:00.0: Could not read microcode: -2
ファームウェアがないよってことらしい。
ファームウェアの入手
ファームウェアは ココ にあるので、ココから 6000 シリーズをダウンロードする。ちなみに、 6000 シリーズは『Intel® 6000 Series Wi-Fi Adapters (6200AGN and 6300AGN) 』のことらしい。 6250G は別。
今回は iwlwifi-6000-ucode-9.221.4.1.tgz を使用した。
ファームウェアのインストール
ダウンロードした iwlwifi-6000-ucode-9.221.4.1.tgz を展開してコピーするだけ。詳しくは添付の README を読むと良い。
$ tar xf iwlwifi-6000-ucode-9.221.4.1.tgz $ sudo cp iwlwifi-6000-ucode-9.221.4.1/iwlwifi-6000-4.ucode /lib/firmware
再度接続
一応、カーネルモジュールをリロードして
$ sudo su - # rmmod iwlagn # modprobe iwlagn
再チャレンジしてみる。
# iwconfig wlan0 essid ${ESSID} # iwconfig wlan0 key s:${WEP_KEY} # dhcpcd wlan0 wlan0: dhcpcd 4.0.15 starting wlan0: broadcasting for a lease wlan0: offered 192.168.x.xxx from 192.168.x.xxx wlan0: acknowledged 192.168.x.xxx from 192.168.x.xxx wlan0: checking 192.168.x.xxx is available on attached networks wlan0: leased 192.168.x.xxx for 43200 seconds
繋がったみたい (アドレスは化かしてあります)。
dmesg のログはこんな感じ。 ${MAC} には MAC アドレスが入ってるけど化かしてます。
ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready wlan0: no IPv6 routers present wlan0: deauthenticated from ${MAC} (Reason: 2) wlan0: direct probe to AP ${MAC} (try 1) wlan0: direct probe responded wlan0: authenticate with AP ${MAC} (try 1) wlan0: authenticated wlan0: associate with AP ${MAC} (try 1) wlan0: RX AssocResp from ${MAC} (capab=0x411 status=0 aid=1) wlan0: associated
落とすときは
# dhcpcd -k wlan0 wlan0: sending signal 1 to pid 19161 wlan0: waiting for pid 19161 to exit
まぁ、据え置きのサーバにするつもりなので、無線を使う予定はないんだけど。 Linux でも動くねってことで。