え~昨日の続きです。
まずは、WEPで接続してみましょう!
# iwconfig eth4 essid "xxxxxxxx"
# iwconfig eth4 key s:1234567890123
# dhclient eth4
お~つながりました。
iwconfigのkey登録は、文字列で設定する場合は、s:文字列で16進で入力する場合は、0102-0304-xxxxの様に、2バイトずつハイフンを入れる必要があるようです。
次にWPAですが、WPAを設定するには、wpa_supplicantが必要なので、下記のようにしてインストールしましょう。(Debian Etchの場合です)
# apt-get install wpasupplicant
次に、PreSharedKeyを作成します。
wpa_passphrase ssid passphrase
なので
# wpa_passphrase myid mypass > /etc/wpa_supplicant/wpa_supplicant.conf
中身は
network={
ssid="myid"
#psk="mypass"
psk=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
}
となっています。
認証方式にWPA-PSKを使用し、暗号方式をTKIPとする場合は下記のように修正します。
network={
ssid="myid"
proto=WPA
key_mgmt=WPA-PSK
pairwise=TKIP
group=TKIP
psk=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
}
認証方式にWPA-PSKを使用し、暗号方式をAESとする場合は下記のように修正します。
network={
ssid="myid"
proto=WPA
key_mgmt=WPA-PSK
pairwise=CCMP
group=CCMP
psk=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
}
認証方式にWPA2-PSKを使用し、暗号方式をTKIPとする場合は下記のように修正します。
network={
ssid="myid"
proto=RSN
key_mgmt=WPA-PSK
pairwise=TKIP
group=TKIP
psk=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
}
認証方式にWPA2-PSKを使用し、暗号方式をAESとする場合は下記のように修正します。
network={
ssid="myid"
proto=RSN
key_mgmt=WPA-PSK
pairwise=CCMP
group=CCMP
psk=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
}
ちなみに、supplicantを使用してWEP128を使用する場合は下記のように修正します。
network={
ssid="myid"
key_mgmt=NONE
wep_key0="1234567890123"
wep_tx_keyidx=0
}
設定が済んだら、下記コマンドを実行して動作確認をしましょう!
wpa_supplicant -i eth4 -c /etc/wpa_supplicant/wpa_supplicant.conf -w
・・・
CTRL-EVENT-CONNECTED - Connection to xx:xx:xx:xx:xx:xx completed ・・・
上記のようなメッセージが出力されたら、無事に設定は完了です。
なので、下記のコマンドを実行してバックグラウンドで実行しましょう!!
wpa_supplicant -i eth4 -c /etc/wpa_supplicant/wpa_supplicant.conf -B
次に、IPアドレスを設定して終了です。
DHCPの場合は
dhclient eth4
・・・
bound to xxx.xxx.xxx.xxx -- renewal in xxxxx seconds.
とIPアドレスが表示されれば正常に取得できたと言うことです。
ちなみに、私がはまったのは上記のwpa_supplicantを実行した際に正常にSSIDが設定されないので、接続できない問題でした。
これは、バグなんでしょうね~
回避方法は、下記のように手動でSSIDを設定すればOKです。
iwconfig eth4 essid "myid"
まぁ~ここまで来たら、起動時に認識させたいですよね~
その場合は"/etc/network/interface"に下記を追加します。
auto eth4
iface eth4 inet dhcp
wireless-essid myid ←上記のSSIDが設定されないバグの回避
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
以上でOK!
あとは、ifup eth4 and ifdown eth4でON/OFFが出来ます。
ちなみに、今回使用した無線LANカード(WLI-CB-G54HP)はBroadcomの4318チップを使用していました。このチップのカーネルドライバにまだ問題があるみたいで、設定を変更しての再接続が出来ないことが多く、そのたびにmodprobe -r bcm43xxとmodprobe bcm43xxを実行しなければいけませんでした。
まぁ、それ以外は正常に動作しているので、OKでしょう~(^。^)y-.。o○