2012年8月22日水曜日

[.tested] Silex SX-PCEGN(P)+ PCI-E 無線LANモジュール [AX3]



Silex SX-PCEGN(P)+は、IEEE 802.11b/g/n対応の組込み型小型高速無線LANモジュールです。
Openblocks AX3において、クライアント側およびアクセスポイント(無線LANブリッジ)として設定、検証しました。



OBDN技術ブログによる動作検証は、該当するデバイスの動作を保証およびサポートを行うものではありません。
内容に関するご指摘などありましたら、ブログ記事の担当までご連絡下さい。

<検証環境>

OpenBlocks AX3/4 Debian 6.0 kernel: 3.0.6

1. 対応ドライバと事前確認

Qualcomm Atheros社製 AR9287チップセットを使用しており、AX3のkernel-3.0.6では、ath9kドライバでサポートされます。
本ドライバは、出荷時のカーネルには組み込まれており、再構築の必要はありません。

dmesgは以下の通りです。

ath: EEPROM regdomain: 0x88
ath: EEPROM indicates we should expect a direct regpair map
ath: Country alpha2 being used: JP
ath: Regpair used: 0x88
ieee80211 phy0: Selected rate control algorithm 'ath9k_rate_control'
Registered led device: ath9k-phy0
ieee80211 phy0: Atheros AR9287 Rev:2 mem=0xf19c0000, irq=58

インタフェースはwlan0となります。

2. クライアントとして使用する場合

<wpasupplicantパッケージの導入と設定>

# aptitude install wpasupplicant

wpa_supplicantの設定ファイルの雛形を作るために、次のコマンド

# wpa_passphrase SSID パスフレーズ  > /etc/wpa_supplicant/wpa_supplicant.conf

を実行します。SSIDとパスフレーズは、使用される環境の設定に置き換えてください。

ファイル/etc/wpa_supplicant/wpa_supplicant.confを編集します。

ssidとpskは記述済みです。必要に応じて設定ファイルを変更してください。
WPA-PSK/WPA2-PSKの例は以下の通りです。

network={
        ssid="SSID"
        key_mgmt=WPA-PSK
        proto=WPA WPA2
        pairwise=CCMP TKIP
        group=CCMP TKIP
        #psk="パスフレーズ"
        psk=暗号化されたパスフレーズ
}

<インタフェースの設定>
/etc/network/interfacesに、以下の行

auto wlan0
iface wlan0 inet dhcp
wpa-conf        /etc/wpa_supplicant/wpa_supplicant.conf

を追加します。

そのまま動作確認する場合は、以下のコマンドでwlan0インタフェースをupして下さい。

# ifup wlan0

3. アクセスポイント(無線LANブリッジ)として使用する場合

wlan0およびeth0をブリッジ接続し、hostapdによりワイヤレスサービスを行います。

事前準備として、hostapd、bridge-utils、iwの各パッケージを導入します。

# aptitude install hostapd bridge-utils iw

<ブリッジの設定>

wlan0は、4addrモードへ設定する必要があります。debian/squeezeのiwコマンドの場合は、

iw dev wlan0 del
iw phy phy0 interface add wlan0 type managed 4addr on

とする必要があるため、これをインタフェースがupする前にpre-upにて実行させます。

auto eth0
iface eth0 inet static
address 0.0.0.0

auto wlan0
iface wlan0 inet manual
pre-up iw dev wlan0 del
pre-up iw phy phy0 interface add wlan0 type managed 4addr on

# Bridge network interface
auto br0
iface br0 inet static
address 172.16.12.248
netmask 255.255.255.0
network 172.16.12.0
broadcast 172.16.12.255
gateway 172.16.12.5
dns-nameservers 172.16.12.6
bridge_ports eth0 wlan0
bridge_stp off

<hostapdの設定>
設定ファイルとして、/etc/hostapd/hostapd.conf を以下の様に記述します。

interface=wlan0
bridge=br0
driver=nl80211

country_code=JP
ieee80211d=1

ssid=<SSID>
channel=6
hw_mode=g

wpa=2
wpa_passphrase=<設定するパスフレーズ>

wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP

ieee80211n=1
wmm_enabled=1

debian/squeeze のhostapdパッケージ

起動時に自動実行させるためには、/etc/default/hostapdの以下の行を有効にします。

DAEMON_CONF="/etc/hostapd/hostapd.conf"

上記の設定により、無線LANブリッジとしての動作を確認しました。

<hostapd最新版の導入>
debian/squeezeのhostapdパッケージ(0.6)ではなく、hostapd-1.0の導入方法は以下の通りです。
手順としては、

hostapd-1.0のソースパッケージを入手
# wget http://hostap.epitest.fi/releases/hostapd-1.0.tar.gz

ビルドに必要なライブラリのインストール
# aptitude install libssl-dev libnl-dev

パッケージの展開
# tar xvzf hostapd-1.0.tar.gz
# cd hostapd-1.0/hostapd

.configの修正

# cp defconfig .config

以下の部分のコメントを外します。(802.11nを有効にする)
# IEEE 802.11n (High Throughput) support
CONFIG_IEEE80211N=y

ビルド/インストール
# make
# make install

起動時の立ち上げは、debian/squeezeのパッケージから若干修正が必要です。

# vi /etc/init.d/hostapd

DAEMON_SBIN=/usr/local/bin/hostapd

今回は、無線LANモジュールの認識、クライアントとしての設定、AP(ブリッジ)としての設定を行い、動作の検証を行いました。
パフォーマンスのチューニングおよび、性能測定に関しては別途行いたいと思います。

なお、今回使用したモジュールは、組み込み用のサンプルをお借りして、検証のみに使用しています。当社PlatOnlineでもサンプルの販売は可能ですが、あくまでも単体でのサンプル価格であることをご理解下さい。
また、本製品は、付属のアンテナとともに使用する上においては、TELEC認証を取得していますが、クライアント接続に限定されており、APとして利用する場合は、機器全体でTELEC認証を再取得する必要があります。
AX3向けの純正オプションとして、PCI-E接続による無線LANモジュールを準備中であり、その場合はAPでの使用も考慮した認証取得を行う予定です。


[PR]

0 件のコメント:

コメントを投稿