Linux
Tips |
|
NdisWrapperでWindows用無線LANドライバが動作しない場合は
北浦訓行
2005/9/8
|
LinuxでWindows用無線LANドライバを利用するにはで、NdisWrapper(http://ndiswrapper.sourceforge.net/)とWindows用ドライバによる無線LAN PCカード(以下無線LANカード)の利用方法を紹介した。
NdisWrapperを利用する際は、まず使いたい無線LANカードのコントローラの動作実績を調べる。NdisWrapper Wiki(http://ndiswrapper.sourceforge.net/mediawiki/)には、NdisWrapperでの動作実績(List of cards known to work)が公開されている。このページでは、無線LANカード単位だけでなく、そのカードのコントローラも掲載されている。以下のように、lspciコマンドなどでコントローラのメーカーや型番を調べ、それを元に検索するといいだろう。例えば、バッファローの「WLI-CB-G54」の場合、以下のような結果が表示される。
# lspci
(省略)
03:00.0 Network controller: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller (rev 02) ←BroadcomのBCM4306が搭載されている |
WLI-CB-G54の場合、バッファローのWebサイトからダウンロードできるドライバ(wdrv_661.exe)をNdisWrapperで動かそうとしても動作しない。dmesgコマンドで状況を確認すると、カーネルのスタックエリアが不足しているときに表示されるメッセージに似たエラーが出ている。
このようなときは、同じコントローラを使っている他社のドライバを試してみると、動作する場合がある。NdisWrapper Wikiには、BCM4306を搭載した製品がいろいろと出ているので、適当なメーカーのドライバをダウンロードして試してみよう。筆者が確認した限りでは、LinksysのWMP54GSという機種のドライバ(WMP54GS_20050406.exe)で動作した。動作しない場合は、何種類か別のメーカーのドライバ(またはバージョンの異なるドライバ)で試してみるといいだろう。
また、WLI-CB-G54に限ると、バッファローのドライバ(wdrv_661.exe)でも、bwcdrv.sysというファイルを削除するだけで動作させることができる。手順は以下のとおりだ(EXEファイルの展開方法については、LinuxでWindows用無線LANドライバを利用するには参照)。
# cd wdrv_661.exeをダウンロードしたディレクトリ/wdrv_661/cbg54/win2000
# ls
bcm43xx.cat bwcdrv.cat bwcinst.dll mdriver netbwc2k.inf
bcmwl5.sys bwcdrv.sys bwcsrv.exe net2pg54.inf netcbg54.inf
# ndiswrapper -i netcbg54.inf ←ドライバをインストール
Installing netcbg54
Forcing parameter IBSSGMode|0 to IBSSGMode|2
Forcing parameter IBSSGMode|0 to IBSSGMode|2
# ndiswrapper -l ←インストールされたかどうかを確認
Installed ndis drivers:
netcbg54 driver present, hardware present
# rm /etc/ndiswrapper/netcbg54/bwcdrv.sys ←bwcdrv.sysを削除
rm: remove 通常ファイル `/etc/ndiswrapper/netcbg54/bwcdrv.sys'? y ←「y」を入力して[Enter]キー
# modprobe ndiswrapper |
dmesgコマンドで状況を確認する。以下のように表示されれば正常だ。
#dmesg
(省略)
ndiswrapper: using irq 9
wlan0: ndiswrapper ethernet device xx:xx:xx:xx:xx:xx using driver netcbg54, configuration file xxxx:xxxx:xxxx:xxxx.x.conf
wlan0: encryption modes supported: WEP, WPA with TKIP, WPA with AES/CCMP |
後は、iwconfigコマンドでESSIDやWEPキーなどを設定する。
# iwconfig
(省略)
wlan0 IEEE 802.11g ESSID:"default"
Mode:Auto Frequency:2.462 GHz Access Point:
00:00:00:00:00:00
Bit Rate=54 Mb/s Tx-Power:25 dBm
RTS thr=2347 B Fragment thr=2346 B
# iwconfig wlan0 essid ESSID
# iwconfig wlan0 key restricted s:WEPキー
# dhclient wlan0 ←IPアドレスを取得(DHCPの場合) |
Linux Squareフォーラム Linux Tipsカテゴリ別インデックス |
Linux & OSS 記事ランキング
本日
月間