• 何度も挫折したLinux無線LAN。カーネル2.6.16ぐらいから主要チップについてはドライバが組み込まれるようになったのでだいぶ敷居が下がった。まとめ途中だが、一番楽なのはipw2200搭載無線LAN(Intel Centrino)ということになる。

2015年時点の情報

  • 主要なチップセットであれば、デフォルトドライバーは認識
  • wpaを使うにはwpa_supplicantを使った、非常に複雑な手順が必要(いまだに・・・)

wpa-psk

update_config=1 ap_scan=2 ctrl_interface=/var/run/wpa_supplicant

network={

	mode=0
	scan_ssid=1
	proto=WPA2
	key_mgmt=WPA-PSK
	pairwise=CCMP
	group=CCMP
	bssid=<M.A.C. of Access Point>
	ssid="<text>"
	psk=<hex_string>

}

前提

  • まずは使用されている無線LANのチップを調べる
  • Windowsの様に自動認識でそのまま使えるケースはまれ。ドライバが組み込まれていたとしても対応するファームウェアを落としたりしなければいけないので有線LANをつないでおくこと。もしくはUSBメモリにファームウェアを入れておくといいかもしれない。
  • どれだけがんばってもだめなときもある(特に特定のバージョンとかで)そんな時はディストリビューションを変えてみる。

成功失敗マトリクス

ipw2200

ディストリビューション結果ファームウェアの有無備考
Ubuntu Linux 7.04ファームウェア組込済み
Vine Linux 4.1ファームウェア組込済みファームウェアがエラーをはく
KNOPPIX 5.1.1ファームウェア必要
Fedora7 LiveCDファームウェア必要

bcm43xx

無線カードはBuffalo WLI-CB-G54。カーネル組み込みのドライバとファームウェアの相性がよろしくない。一見動いているように見えてsyslogに大量のエラーが出ていたりする。バイナリパッケージにndiswrapperが用意されていればそっちのほうが確実。

ディストリビューション結果ファームウェアの有無備考
Ubuntu Linux 10.04ndiswapperで運用中
Ubuntu Linux 7.04ファームウェア必要bcm43xxfwcutterでファームウェア組み込める。syslogにエラーがときたま出る
Vine Linux 4.1ファームウェア必要ndiswrapperで運用中。
KNOPPIX 5.1.1×ファームウェア必要ファーム組み込み失敗
Fedora7 LiveCD×ファームウェア必要要求するファームウェアがV4以上なのでファームウェアが見つからず

KNOPPIX

実験対象はknoppix5.1.1。クライアントPCはLet'sNote CF-R3(ipw2200)

ipw2200

  • ドライバーのロードが行われていることを確認
dmsg | grep ipw2200
ipw2200: Intel(R) PRO/Wireless 2200/2915 Network Driver, 1.1.4kmpr
ipw2200: Copyright(c) 2003-2006 Intel Corporation
ipw2200: Detected Intel PRO/Wireless 2915ABG Network Connection
ipw2200: ipw2200-bss.fw request_firmware failed: Reason -2
ipw2200: Unable to load firmware: -2
ipw2200: failed to register network device
ipw2200: probe of 0000:02:04.0 failed with error -5

ファームウェアがないので失敗している(ファームウェアはフリーではないのでしょうがないのだ)自分でとってくる。ドライバーバージョンがV1.1.1(調べるにはmodinfo ipw2200)なのでそれに相当するFirmware v3.0を下記のウェブサイトより取得

http://ipw2200.sourceforge.net/firmware.php

解凍して/usr/lib/hotblug/firmwareに

ipw2200-bss.fwをコピー

そのあとモジュールの削除とリロード

rmmod ipw2200
modprobe ipw2200

モジュールの確認

iwconfigしてみる

でネットワークのESSIDとWEPキーの設定

iwconfig eth1 essid ESSID
iwconfig eth1 key restricted s:キー [キーのインデックス] key [キーのインデックス]
iwconfig eth1 rate 54M

ifup eth1

IPの設定をDHCP任せにしていたらだめだったので手動設定したらついにうまくいった!!!これでもうまくいかない時はnetwork-setupのコマンドを打ち込んで設定してみるべし。

bcm43xx

bcm43xx_microcode4.fw

上記ファームウェアがないと言われる。ファームウェア(3.104.64.52)を持ってきたがドライバーがエラーを吐いてそれ以上進めなかった。認識すらしてくれないのであきらめた。

bcm43xx: TODO: Incomplete code in keymac_write() at drivers/net/wireless/bcm43xx/bcm43xx_main.c:1128

Ubuntu7.0.4日本語ローカライズ版

ipw2200

最初からファームウェアも入っている。後は接続情報さえ入れればOKという一番のハードルの低さ

入れたコマンドは2つだけ。これだと起動毎に入れなければならないのでちゃんと設定する(GUIツールは使わない)

sudo iwconfig eth1 essid essid
sudo iwconfig eth1 key restricted s:キー [2] key [2]
  • ネットワーク設定ツールではWEPキーのインデックスの設定ができない。このページの一番下の情報を下に設定してみて!

bcm43xx(WLI-CB-G54)

このカードのチップはbcm43xxというものでこちらも最近のカーネルではドライバが組み込まれている。あとはファームウェアを取得すればいいのだがbcm43xx-fwcutterを実行するとなんとファームウェアの切りだしまで自動で行ってくれる。

モジュールの再ロード

sudo rmmod bcm43xx
sudo mobprobe bcm43xx

このコマンドを実行した時点でLANカードのランプが付くはず(付いてなければ dmesgで原因を探ってみ)

ESSIDとWepキーの指定

GUIツールではキーのインデックスが指定できないのでコマンドラインでやるべし

sudo iwconfig eth1 essid ESSID
sudo iwconfig eth1 key restricted s:キー [キーのインデックス] key [キーのインデックス]

 ・パッケージマネージャーにて検索をクリックして「bcm」って入力。  ・bcm43xx-fwcutterをダブルクリック  ・ダウンロード→終了→何か作業している→作業終了  ・再びパッケージマネージャーでbcm43xx-fwcutterを探しだし、   チェックボックスが□から■になっていることを確認  ・WLI-CB-G54HPに付いてきたCDを装填して2000用のbcmwl5.sysを探し出し、   ホームフォルダーにコピー  ・GONME端末で    sudo bcm43xx-fwcutter -w /lib/firmware bcmwl5.sys   を入力(コピペ)  ・なんか文字が一杯出て終了  ・システム管理→ネットワークでESSID、WEPキーを設定(WEPキーはASCII)   パスワードは無しで設定  ・GONME端末でiwconfigを入力  ・Bit Rateを確認すると11Mb/sなので    sudo iwconfig eth1 rate 54M   以上を入力し再度GONME端末でiwconfigを入力  ・Bit Rate=54Mb/sを確認  ・Firefoxを起動して速度を体感

Fedora7

  • LiveCDで実験を行った

bcm43xx(WLI-CB-G54)

bcm43xxに関してはファームウェアがないので認識せず。メルコのサイトからbcmwl5.sysを手に入れ3.100ぐらいのバージョンだったけどこれでも古いといわれた!4.0以上でなければだめだというが、そのバージョンを手に入れるのが難しい。というわけで断念しました。

ipw2200(Let's note CF-R3)

やっぱりファームウェアを追加して、ESSIDとWEPキーの設定をしてやり、システムネットワーク設定でIPアドレス固定にしてネットワーク再取得しないと駄目。

VineLinux4.1

ipw2200

なんとファームウェア組み込み済み。ということで接続設定さえしてあげればそのままつながる。

bcm43xx

組み込みのドライバは試していないが、ndiswrapperがRPM(extras)で提供されるようになっているのでこちらで試した。見事成功

VineLinux4.1でndiswapperを利用して動かす手順

  • バッファローのページよりドライバをダウンロードしてLinuxに持ってくる。USBメモリを使うのがお勧め。
lha x wdrv861.exe
wdrv861b/CBG54/WIN2000/
  • ドライバをインストールと確認
    ndiswrapper -i netcbg54.inf
    ndiswrapper -l
    installed drivers:
    netcbg54 driver installed, hardware (14E4:4324) present (alternate driver: bcm43xx)
  • 動かない上に干渉する標準のドライバをはずす
    rmmod bcm43xx
    blacklist bcm43xx
  • ndiswrapperを有効にする
    modprobe ndiswrapper

起動するたびに入力するのは面倒なので,/etc/rc.localの最後に以下の内容を加えます.

 /sbin/modprobe ndiswrapper

IPアドレスやWEPキーの設定

コマンドラインで無事成功を確認したら、ネットワーク設定スクリプトに書いておく。GUIツールでの設定はWEPキーインデックス(これ設定してない人が多いのか?Web上でほとんど情報が得られなかった)を指定できないのでネットワーク設定ファイルに直接記述するしかない。

RedHat系(RedHat,Fedora,CentOS,VineLinux)

  • /etc/sysconfig/network-scripts/ifcfg-eth0

eth0の部分はiwconfigでワイヤレスと認識されているデバイス名に置き換える

DEVICE=wlan0
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.1.102
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
ESSID="ESSID"
KEY="s:キーの文字列 [キーのインデックス] key [キーのインデックス]"

Debian系(Debian,Ubuntu)

  • /etc/network/interfaces
auto eth1
iface eth1 inet static
wireless-essid ESSID
wireless-key s:WEPキー [WEPキーインデックス] key [WEPキーインデックス]
address 192.168.1.22
netmask 255.255.255.0
gateway 192.168.1.1
  • 再起動
/etc/init.d/network restart

Atheros系

もうひとつUSB無線LANがある。こいつのチップはAtheros製でmadwifiというプロジェクトがドライバーを提供している(VineLinuxならパッケージもある)。こいつを動かすようにがんばろう。

Counter: 37452, today: 1, yesterday: 1

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2019-08-12 (月) 15:33:57