go back top
prismチップの無線LANを使いたい。
linuxカーネルを作り直す。
無線LANカード
IO-DATAのprism3チップのWN-B11/PCMH
環境
os:Debian GNU/Linux 3.0 sid(unstable)(woodyでも確認済み)
machine:Thinkpad s30
内蔵nic(intel e100)がeth0となるので、カーネルの再構築時に
prism3 用の PCMCIA サポートをさせるために
Network device support → Wireless LAN (non-hamradio)の所で
Hermes chipset 802.11b support (Orinoco/Prism2/Symbol)とHermes PCMCIA card support を選択する。
そしたら、pcmciaの無線 LAN のインタフェースがeth1になり、あとはIPとかをちゃちゃっと設定するだけ。
追伸:
2chにこのやり方を書き込んだら他のページでも利用されているので、うかつに変なことを書けないなと思った今日この頃(intelのことをinterのままになってたりしてるし)
2003年11月11日追記:
linuxカーネルデフォルトのドライバではscpが出来ないなど、どうも調子が悪い。そこで、linux-wlan-ngを使用してみた。
以下がそのときのメモ。(杉山さんサンクス)
Debian sidで無線LANの設定
まずは、カーネルを作り直す。
cd /usr/src/kernel-source-2.4.22
make menuconfig
以下の設定に気をつける。
Generar Setup -> PCMCIA/Cardbus support ->
<*> PCMCIA/CardBus support
[*] CardBus support
[ ] Databook TCIC host bridge support
[*] i82092 compatible bridge support
[*] i82365 compatible bridge support
とする。
次に一応これも入れとく(入れなくていいと思う)
Network device support -> Wireless LAN(non-hamradio) ->
[*] Wireless LAN (non-hamradio)
< > STRIP (Metricom starmode radio IP)
< > AT&T WaveLAN & DEC RoamAbout DS support
< > Aironet Arlan 655 & IC2200 DS support
< > Aironet 4500/4800 series adapters
< > Cisco/Aironet 34X/35X/4500/4800 ISA and PCI cards
<*> Hermes chipset 802.11b support (Orinoco/Prism2/Symbol)
--- Wireless Pcmcia cards support
<*> Hermes PCMCIA card support
< > Cisco/Aironet 34X/35X/4500/4800 PCMCIA cards
あとは、
make dep;make;make install;make modules;make modules_install
でカーネルとモジュールの入れ直しは終了。
次に、linux-wlan-ng-0.2.1-pre9.tar.gzを落としてくる。
linux-wlan-ngのダウンロード
tar -zvxf linux-wlan-ng-0.2.1-pre9.tar.gz
make config
make all
make install
でインストール完了。
次に、/etc/pcmcia/wlan-ng.conf にLANカードの情報を書かないとだめかなと思っていたが、書かなくてもいけたので、うまくいかなかった人は、書いてくださいな。
cardctl ident
Socket 0:
product info: "IO DATA", "WNB11PCMH", "Version 01.02", ""
manfid: 0x028a, 0x0002
function: 6 (network)
こんな感じでカードの情報が取ってこれるので以下のような感じで書いてやる。
card "IO DATA WN-B11/PCMH"
version "IO DATA", "WNB11PCMH"
bind "prism2_cs"
次に/etc/wlan/の中のwlan.confの編集。
SSID_wlan0="ssid名を入れる"
また、ここのssid名は
/etc/wlan/wlancfg-ssid名
みたいに使用します。よって、このファイルを作成するにはwlancfg-DEFAULTをssid名が入った名前にcpして、あとは以下の部分を変更してください。(SSID_wlan0の記述が空だったら自動で持ってきて、wlancfg-ssid名のファイルを見に行くことも確認。でも、dhcpcdでIPを起動時に取得できない。)
lnxreq_hostWEPEncrypt=true # true|false
lnxreq_hostWEPDecrypt=true # true|false
dot11PrivacyInvoked=true # true|false
#wepが128bitだったらtrueに、それ以外はfalseに。(256bitはlinuxでは出来ない)
PRIV_KEY128=true # keylength to generate
#wepキーを16進数で入れる
dot11WEPDefaultKey0=00:11:22:33:44:55:66:7788:99:11:22:33
#使用するチャンネル
CHANNEL=6
注意事項としては、
dot11WEPDefaultKeyが128bitの場合は、PRIV_KEY128をtrueにして、dot11WEPDefaultKey0に16進数で入力してください。(ASCIIはうまく動かないみたい。)
次に、起動時にwlan0のインターフェイスでDHCPでIPをもらうために
apt-get install dhcpcdをインストールして、
/etc/network/interfacesを編集する。
auto wlan0
iface wlan0 inet dhcp
また、pumpというDHCPクライアントがある。このコマンドの使い方は、
pump -i wlan0
とコマンドを打つと、DHCPをもらうことが出来る。
通信もとても安定しています。なるべくこのやり方でやるのがおすすめかも。
2003/11/11 Akihiro Kamada wrote