2010年の夏は、今までになく暑い夏でした。
そのお陰で、ルーター兼サーバーに使っているLinux BoxのHDDが壊れてしまいました。
立ち上がらなくなったPCのフタを開けてHDDに触ると、目玉焼きができる程の熱さ…。
これでは、壊れるよなぁ~、、、
と、暑い中HDD交換、そしてLinuxのインストール。
ついでに、無線LANのアクセスポイントを新しい構成で動作させたので備忘録を兼ねてです。
うちのシステム構成は以下の通り、ADSLからブリッジを越えてLinux Boxへ入り、そこからLANと無線LANに振り分けられます。
PCは、ころがっていたDELL製PentiumII 600MHzのものを使っています。
無線LAN用ネットワークカードは富士通製WLL4070-D50というMiniPCIのカードをPCIに変換するボードを使って
PCIスロットに差し込んでいます。
このカードとmadwifi-0.9.4+hostapd-0.6.10で動作しています。
ちなみに、lspciで見ると、、、
00:10.0 Ethernet controller: Atheros Communications, Inc.: Unknown device 001b (rev 01)
と、Unknownなのですが・・・
Linuxは、2.4.31(Slack ware-10.2フルインストール)です*1。
ちなみに、今回は、接続の認証にはMACアドレスを使っており、WPAなど通信内容のセキュリティーも考慮していませんので、あしからず。
madwifi-0.9.4をダウンロードして、/usr/src以下に解凍します。
解凍後、madwifi-0.9.4へ移動し、以下のコマンドでコンパイル~インストールします。
make KERNELPATH=/usr/src/linux-2.4.31 make install
特に、コンパイルエラーやリンクエラーは出ませんでした。
/sbin/modprobe ath_pci autocreate=ap
で、ちゃんとモジュールが起動するか確かめておきます。
次に、hostapdをインストールします。
hostapd-0.6.10をダウンロードして、/usr/src以下に解凍します。
cd hostapd-0.6.10/hostapd
で、ディレクトリを移動し、まず最初に、.configファイルを作ります。
cp defconfig .config
デフォルトでは、madwifiを使うように定義されていないので.configを修正します。
# Driver interface for Host AP driver # CONFIG_DRIVER_HOSTAP=y ←コメントにする # Driver interface for wired authenticator # CONFIG_DRIVER_WIRED=y ←コメントにする # Driver interface for madwifi driver CONFIG_DRIVER_MADWIFI=y ←コメントをはずす CFLAGS += -I../../madwifi-0.9.4 ←コメントをはずす
これで、makeでコンパイルできるのですが、何やら、EAP関係のモジュールが無い!とリンクエラーになりました。
手っ取り早く作業を終わらせたかったので、.config中のCONFIG_EAP~を全てコメントアウトして、
再度makeしたらリンクもOKになったので良しとしました*2。
調べていないので分かりませんが、多分、SSL関係のパッケージを入れれば大丈夫だと思うのですが・・・
ちなみに、今回はMACアドレスを使って接続許可を行うので放置しておきます。
最後に、
make install
で、インストールします。
hostapdの起動や動作に必要なファイルを以下の通り作ります。
1.コンフィグ・ファイル*3 /etc/hostapd.conf
interface=ath0 driver=madwifi logger_syslog=-1 logger_syslog_level=2 logger_stdout=-1 logger_stdout_level=2 dump_file=/tmp/hostapd.dump ssid=YOUR SSID NAME country_code=JP hw_mode=b channel=11 ←空いているチャネル番号を指定 beacon_int=100 dtim_period=2 max_num_sta=16 rts_threshold=2347 fragm_threshold=2346 basic_rates=10 20 macaddr_acl=1 accept_mac_file=/etc/hostapd.accept
2.接続する機器のMACアドレス指定ファイル /etc/hostapd.accept
00:17:xx:xx:xx:xx ←接続する機器のMACアドレスを列挙する。 00:90:xx:xx:xx:xx 00:26:xx:xx:xx:xx ・ ・
これで、
modprobe ath_pci autocreate=ap ifconfig ath0 192.168.1.10 up hostapd /etc/hostapd.conf -B
と打ち込めば、アクセスポイントとして立ち上がる筈です。
・・・が、ルーティングの設定は未だなので、接続できるだけです。
iptableの設定を、各自の用途に合わせて行ってください。
パワーオンやリブート時に、自動的に立ち上げるには、
/etc/rc.d/rc.modulesのIP masquerading modules:の上あたりに、
/sbin/modprobe ath_pci autocreate=ap
を加え、無線LAN用のiptablesの設定を加えます。
そして、/etc/rc.d/rc.localに以下を書き足します。
/sbin/ifconfig ath0 192.168.1.10 up ←自分の環境のIPアドレスにしてください。 /usr/local/bin/hostapd /etc/hostapd.conf -B
これで、自動的に立ち上がるようになるはずです。
上記の流れで、無線LANカードを入れたNote PCや、任天堂、Sonyなどのゲーム機が繋がるようになりました。
クラッシュする前は、違うドライバーとhostapdで構築しましたが、今回の方が楽に動作させる事ができました。