La FoneraにOpenWrtをインストールする
La Fonera (FON2200E) にOpenWrtをインストールします。
OpenWrt
OpenWrtは組み込み向けLinuxディストリビューションです。
<基本構成>
・カーネル2.6
・Cライブラリ uClibc
・コマンド集 BusyBox
・パケットフィルタリング netfilter
・パッケージ管理 Opkg
インストールに使うLinuxマシンの準備
インストールに使用するLinuxマシンUbuntu 9.04を準備します。
TFTPサーバ Advanced TFTP (atftpd)をインストールします。
$ sudo aptitude install atftpd
openbsd-inetdサービスを起動(再起動)し、インストールしたatftpdの設定を読み込ませます。
$ sudo /etc/init.d/openbsd-inetd start
UDP 69番ボートが開いていることを確認します。
$ netstat -lnu | grep :69
atftpdがファイルを公開するディレクトリは /var/lib/tftpboot に用意されます。
$ sudo /etc/init.d/openbsd-inetd start * Starting internet superserver inetd [ OK ] $ netstat -lnu | grep :69 udp 0 0 0.0.0.0:69 0.0.0.0:* $
TelnetクライアントからのLa Foneraへのアクセス
TelnetクライアントからLa Fonera(FON2200E)のブートローダRedBootにアクセスできるようにします。
FON2200EへはFON2201E(La Fonera+)と同様の方法でTelnetからアクセスすることができます。
La Fonera+にTelnetクライアントからアクセスする
OpenWRTファームウェアのダウンロード
OpenWrtのファームウェア Kamikaze 8.09.1 をダウンロードします。
ダウンロードサイト
http://downloads.openwrt.org/kamikaze/8.09/atheros/
ルートファイルシステムのイメージ
openwrt-atheros-root.squashfs
カーネルのイメージ
openwrt-atheros-vmlinux.lzma
ダウンロードした2つのファイルを /var/lib/tftpboot にコピーします。
$ sudo cp openwrt-atheros-* /var/lib/tftpboot
コピーしたファイルのパーミッション設定を変更します。
$ sudo chmod o+r /var/lib/tftpboot/openwrt-atheros-*
OpenWrtのインストール
TFTPサーバ IPアドレスの設定
TFTPサーバのIPアドレスを設定します。
RedBoot> ip_address -h 192.168.1.2
OpenWrtファームウェア保存領域の確保
オリジナルのファームウェアを削除し、OpenWrtファームウェアの保存領域を確保します。
RedBoot> fis init
... - continue (y/n)? y
Linuxカーネルイメージの転送とフラッシュメモリへの書き込み
LinuxカーネルのイメージをTFTPサーバから転送し、フラッシュメモリへ書き込みます。
RedBoot> load -r -b %{FREEMEMLO} openwrt-atheros-vmlinux.lzma
RedBoot> fis create -e 0x80041000 -r 0x80041000 vmlinux.bin.l7
未使用フラッシュメモリの大きさ調査
未使用のフラッシュメモリの大きさを調べます。
RedBoot> fis free
0xA80F0000 .. 0xA87E0000
右側の値から左側の値を引き算します。
0xA87E0000 - 0xA80F0000 = 0x006f0000
"引き算の値" 0x006f0000 を次の操作で使いますのでメモしておきます。
ルートファイルシステムイメージの転送とフラッシュメモリへの書き込み
ルートファイルシステムのイメージをTFTPサーバから転送し、フラッシュメモリへ書き込みます。
RedBoot> load -r -b %{FREEMEMLO} openwrt-atheros-root.squashfs
-lオプションに前の操作で求めた"引き算の値"を指定して書き込み操作をします。
RedBoot> fis create -l 0x006f0000 rootfs
再起動
La Fonera+を再起動します。
RedBoot> reset
OpenWrtへのTelnetからのアクセス
OpenWrtにTelnetからのアクセスします。
有線LANのIPアドレスは 192.168.1.1 になっています。
$ telnet 192.168.1.1
OpenWrtのロゴが端末に表示されます。
OpenWrtの設定
管理者パスワードの設定
管理者パスワードを変更します。
# passwd
rootパスワード設定後は、SSHからのアクセスになります。
(Telnetサーバは起動しなくなります。)
ホスト名とタイムゾーンの変更
ホスト名を設定します。
# uci set system.@sysem[0].hostname=fon
タイムゾーンを日本時間に設定します。
# uci set system.@system[0].timezone=JST-9
コミットします。
# uci commit system
再起動します。
# reboot
ネットワークの設定
ネットワークの設定を行います。
<固定アドレス>
# uci set network.lan.proto=static
# uci set network.lan.ipaddr=192.168.1.120
# uci set network.lan.netmask=255.255.255.0
# uci set network.lan.gateway=192.168.1.1
# uci commit network
# ifdown lan && ifup lan
DHCPでネットワークを設定する場合は次のように設定します。
# uci set network.lan.proto=dhcp
# uci commit network
# ifdown lan && ifup lan
無線LANアクセスポイントの設定
無線LANのネット-ワークを設定します。
無線LANアクセスポイント機能を有効にします。
# uci set wireless.wifi0.disabled=0
最大電波出力値を10dBmにします。
# uci set wireless.wifi0.txpower=10
SSIDをFON_APに設定します。
# uci set wireless.wifi0.ssid=FON_AP
セキュリティ方式をWPA2 Personalの WPA2-PSK に、暗号化アルゴリズムを AES にします。
# uci set wireless.wifi0..encryption=psk2
パスワードを設定します。
# uci set wireless.wifi0.key=<パスワード>
コミットします。
# uci commit
無線LANアクセスポイント機能を有動作させます。
# wifi
<セキュリティ方式>
psk2 |
WPA2 Personal + PSK
|
---|---|
psk |
WPA2 Personal + TKIP
|
wep |
WEP
|
参考サイト
RedBoot User's Guide
http://www.ecoscentric.com/ecospro/doc.cgi/html/redboot-guide/redboot-guide.html
変更 2010.10.25
追加 2010.07.19
2009.03.08