2007年02月27日
_ Debian GNU/Linuxで無線LAN
無線LANのPCカード(IO DATAのWN-G54/CBL)を買ってきて、 Debianで使えるようにしました。以下その設定についてメモを書いておきます。
要件
Debianで無線LANを使う。自宅、職場、ホットスポット、と複数の 場所で利用したい(複数の場所での設定を持っておいてそれを切り替えたい)。
問題点
- どの無線LANを買うべきか
- 無線を使えるようにするにはどのソフトをインストールすべきか
- どのように設定すれば良いか
環境
Debian, testing. kernelは2.6.18。
どの無線を買うべきか
<URL:http://kmuto.jp/open.cgi?%CC%B5%C0%FELAN%C6%B0%BA%EE%BE%F5%B6%B7> などを 参考にしましょう。
どのソフトをインストールすべきか
まず、無線機器に対応したドライバをインストールする必要があります。 WN-G54/CBLの場合はmadwifiを使います。パッケージにはソースしか ありませんので <URL:http://debian.fam.cx/index.php?Software%2FLinuxKernel#ExternalKernelModule> などを見てカーネルモジュールのコンパイルをし、インストールしてください。
また、PCカードを使う場合はpcmciautilsが必要となります。 その他、wireless-toolsをインストールする必要があります。 「複数の場所での設定を持っておいてそれを切り替える」ためのツールは 複数あるようですが、現時点ではwpasupplicantを使うのが良いようです。
設定
こでは自宅と職場の2箇所で利用する場合を例とします。 とりあえずこの2つに名前を付ける必要があるので、一方をhomeもう一方を officeとします。
基本的に編集すべきファイルは2つで、一方は /etc/network/interfaces、もう一方は /etc/wpa_supplicant/wpa_supplicant.conf です。
まず、デバイスを接続し、それがOSに検出されているかどうかを確認します。 私の場合、ifconfigでwifi0とath0という2つのデバイスが見えました。
次に/etc/network/interfacesを編集します。家と職場ではどちらも DHCPでIPアドレスを取るものとします。
iface ath0 inet manual wpa-driver wext wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf iface home inet dhcp iface office inet dhcp
homeとofficeという名前はここで使います。
最後に、 /etc/wpa_supplicant/wpa_supplicant.conf を編集します。 家の無線ネットワークの(E)SSIDがwest、職場の無線 ネットワークの(E)SSIDはeastであるとします。 家のはWPA-PSKを、職場ではWEPを使うものとします。
その場合、/etc/wpa_supplicant/wpa_supplicant.confにその2つの 設定を列挙しておくと、SSIDによって自動的にどちらを使うべきか
wpa_supplicantが決定してくれます。 network={ ssid="west" proto=WPA key_mgmt=WPA-PSK pairwise=CCMP TKIP group=CCMP TKIP psk="secret pre-shared key" id_str="home" } network={ ssid="east" key_mgmt=NONE wep_key0="-KEY-" wep_tx_keyidx=0 id_str="office" }
このあたりはwpa_supplicantのドキュメントを読んで設定してください。 id_strはDebian特有の機構で、IPアドレスなどの設定はid_strと対応する /etc/network/interfaces の項が参照されます。ここでは両方 dhcpを使うようにしてありますが、固定でIPアドレスを割り振ることも できます。
その他
周辺の無線ネットワークを探すには
iwlist ath0 scan
とします。
network-managerというGUIで無線が設定できるツールがあるらしいです。
参考資料
wpasupplicant をインストールすると /usr/share/doc/wpasupplicant/ 以下にドキュメントが置かれます。 これらは非常に参考になるでしょう。とりあえずREADME.modes.gzの 「Mode #2: Roaming Mode」が重要です。
あとは上で挙げた
が無線購入とドライバ選択の参考になります。
最後に
なにか間違い等あったらつっこんでください。