スポンサーリンク

OpenWrtでRaspberry Piを無線LANルーター化

LINEで送る
Pocket

前回の投稿でも少し触れていたが、Raspberry Pi 3 Model B+ (もしくは 3 Model A+ (以降、ラズパイ))で無線LANコンバーターの構築をしたのだが、ラズパイから無線親機に対して接続できているものの、親機からラズパイに接続できない事象が解決できず、仕方なく市販のルーターで代替した。
使用した OSは、勿論、ラズパイ用の Ubuntu Server 20.04.1 LTSである。

無線 LANコンバーターを構築する前に、無線 LANルーターを簡単に構築できるとの情報を発見したので、今回は、こちらを備忘録として残しておく。
無線 LANルーター化に使用するのは、「OpenWrt」という組込デバイスを対象とする Linuxオペレーティング システム。
https://openwrt.org/toh/raspberry_pi_foundation/raspberry_pi

昔、Buffaloの WLA2-G54Cに OpenWrtのファームウェアを焼いて無線 LANルーター化していたのを思い出した。

1.準備するもの

 ・ラズパイ本体(今回は 3A+で構築)
 ・ACアダプターなどの周辺機器
  ※ USB接続のキーボード必須
  ※ 3A+で構築する場合は、別途、USB接続の有線 LANアダプター(以降、USB-Ethernet   アダプタ)が必要
   ただし、3A+は、USBが 1つだけなので、USBハブが必要
 ・OpenWrtのイメージファイル

2.OpenWrtのイメージファイルをダウンロード

 下記URLへ移動して、少し下へスクロールすると「Installation」があるので、そこから該当するラズパイのイメージを選択する。
 ちなみに 3A+は、3B+と機能が同じであるため、赤枠の 3B+用を選択する。

 ダウンロード画面に遷移するので、「Image Files」の一覧から rpi-3-ext4-factory.img.gz をダウンロードする。

 今回は、USB-Ethernetアダプタとして「TP-Link UE300」を使用するため、下記ディレクトリから対象のファイルをダウンロードする。

  https://downloads.openwrt.org/releases/19.07.3/targets/brcm2708/bcm2710/packages/

 必要なモジュールファイルは、以下の 4ファイル。
 ・kmod-mii_4.14.180-1_aarch64_cortex-a53.ipk
 ・kmod-usb-core_4.14.180-1_aarch64_cortex-a53.ipk
 ・kmod-usb-net_4.14.180-1_aarch64_cortex-a53.ipk
 ・kmod-usb-net-rtl8152_4.14.180-1_aarch64_cortex-a53.ipk

3.イメージファイルを SDカードに書き込む

 さて、以前の投稿では、SDカードに書き込むために一度、ファイルを解凍していたが、今回は、そのまま使用する。
 書き込むソフトに「Rufus (ルーファス)」を使用することで、圧縮ファイルのまま SDカードに書き込むことができる。
 

 書き込み先とイメージファイルを指定して、スタートボタンをクリック。

 書き込み完了後、SDカードへ移動し、/boot配下に workというフォルダを新規作成し、
 手順 2でダウンロードしたモジュールをコピーする。

4.ラズパイを起動

 4-1.SDカードをラズパイに挿入。
 4-2.ラズパイの有線 LANにケーブルを挿す。
   ※ まだ無線 LANが使えないため
    USB-Ethernetアダプタは、まだ挿さない
 4-3.ラズパイの電源を入れる(ACアダプターをコンセントに挿す)。
 4-4.ディスプレイまたは、SSHによるターミナル上で、起動されたことを確認。
   ※ SSH接続で確認する場合は、前もって IPアドレスを調べておく

   パスワードは不要で、以下のように表示される。

5.初期設定

■ rootパスワードの設定

root@OpenWrt:~# passwd    ← root のパスワードを入力

■ USB-Ethernetアダプタのカーネルモジュールをインストール
 ・「オフライン」でインストールする場合

root@OpenWrt:~# opkg install /boot/work/*.ipk

 ・「オンライン」でインストールする場合

root@OpenWrt:~# opkg list-upgradable | cut -f 1 -d ' ' | xargs opkg upgrade
root@OpenWrt:~# opkg install kmod-usb-net-rtl8152

■ 再起動する

root@OpenWrt:~# reboot

■ 再起動後に USB-Ethernetアダプタを接続。 以下のコマンドで新しいネットワークデバイス(この例では eth1)が、認識されていれば OK。

root@OpenWrt:~# ip addr show

■ LAN側(eth0)の IP設定例

root@OpenWrt:~# uci set network.lan.ipaddr=192.168.1.10
root@OpenWrt:~# uci set network.lan.gateway=192.168.1.1
root@OpenWrt:~# uci set network.lan.dns=192.168.1.1
root@OpenWrt:~# uci commit
root@OpenWrt:~# service network restart

■ LuCIのインストール

root@OpenWrt:~# opkg update
root@OpenWrt:~# opkg install luci
root@OpenWrt:~# opkg install luci-i18n-base-ja luci-i18n-firewall-ja luci-i18n-opkg-ja
root@OpenWrt:~# service uhttpd restart

■ IPv6のモジュールをインストール

root@OpenWrt:~# opkg install luci-proto-ipv6 ip6tables

■ ブラウザからラズパイのIPアドレスにアクセス

root@OpenWrt:~# 192.168.1.10

■ OpenWrt にログイン
 予め設定していた rootのパスワードを入力し、「ログイン」をクリック。
 ログインするとステータス画面が表示される。

<ログイン認証画面>

<ステータス画面>

■ dhcpの設定
 メニューから、ネットワーク>インターフェース>LANをクリック。
 DHCPサーバータブをクリックして、諸々の設定を行い、「保存」をクリック。


■ 無線 LANの設定
 メニューから、ネットワーク>無線をクリック。
 初期状態は、無効になっているため「設定」をクリック。
 下記画像を参考に必要な情報を入力し、「保存」をクリック。




 すると、設定情報が反映されるので、「保存&適用」をクリック。
 パソコンまたはスマートフォンのWi-Fiから、作成した SSIDが表示されていることを確認し、接続する。
 正しく接続されると、下記画像のように「アソシエーション端末」として表示される。


以上で、ラズパイの無線LANルーター化が完了!
今回は、基本的な設定のみを取り上げているので、ssh接続を暗号鍵にするなど、色々と弄ってみると良いでしょう。

スポンサーリンク