pslaboが試したことの記録

はてなダイヤリーからはてなブログに引っ越してきました

この日記は現在実行中の減量記録を含む個人的なメモとして始めましたが、最近はコンピュータやガジェット、ハック、セキュリティネタのほうがメインになっております。

はてなダイヤリー時代はカテゴリ分けが適当だったのですが、これはそのうち直します。


Raspberry Pi に OpenWrt 19.07.0 をインストールする

OpenWrt 19.07.0 がリリースされましたので、手持ちのRaspberry Piで早速試すことにします。 downloads.openwrt.org

イメージのダウンロード

ここからダウンロードできます。 新規インストールは factory, アップグレードや sysupgrade です。

device image
Pi, Zero, Zero W https://downloads.openwrt.org/releases/19.07.0/targets/brcm2708/bcm2708/
Pi2 https://downloads.openwrt.org/releases/19.07.0/targets/brcm2708/bcm2709/
Pi3 https://downloads.openwrt.org/releases/19.07.0/targets/brcm2708/bcm2710/

18.04.x からのアップグレードは Luci の Web UI から行えます。既存の設定は保持されるはずですが、追加インストールしたopkgは手作業で別途追加インストールします。

新規インストールは次の手順で行います。

イメージを microSD に焼く

dd などで普通に焼いてください。

macOSの方は下記記事のスクリプトを使うと書き込み先デバイスの検出、ddの実行、ejectを自動で行ってくれます。

https://pslabo.hatenablog.com/entry/2015/12/09/MacOS_X%E3%81%A7_Raspberry_Pi%E7%94%A8%E3%81%AE%E8%B5%B7%E5%8B%95%E3%82%A4%E3%83%A1%E3%83%BC%E3%82%B8%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92SD%E3%82%AB%E3%83%BC%E3%83%89%E3%81%AB%E6%9B%B8

基本設定をバッチで流し込むためのファイルを作る

基本設定をバッチで流し込むためのファイルを作る

こんな設定をGUI操作なしに投入しようと思います

管理UIのパスワードはバッチ投入しないほうがよいだろうと思うので、これはインストール完了後にGUIから変更してください。

このような設定は、次の内容をスクリプトとして保存・実行することで投入できます。 initialconfig.sh のような名前で保存して OpenWRTの microSD に入れておきます。WiFiSSIDパスフレーズはご自身が使うものに変えてください。

#!/bin/sh -x

uci set system.@system[0].zonename='Asia/Tokyo'

uci set dropbear.@dropbear[0].Interface=lan

uci set dhcp.lan.ra_management='1'
uci set network.lan.ipaddr='192.168.4.1'
uci set network.lan.ifname='wlan0'

uci set network.wan=interface
uci set network.wan.proto='dhcp'
uci set network.wan.ifname='eth0'

uci set wireless.radio0.disabled='1'
uci set wireless.radio0.country='JP'
uci set wireless.radio0.txpower='10'
uci set wireless.default_radio0.encryption='psk2'
uci set wireless.default_radio0.network='lan'
uci set wireless.default_radio0.ssid='[設定するSSID名]'
uci set wireless.default_radio0.key='[WPA-PSKのパスフレーズ]'
uci set wireless.default_radio0.wpa_disable_eapol_key_retries='1'
uci delete wireless.radio0.disabled='1'

パッケージの追加:最初から日本語UIで使いたい場合の追加パッケージをインストールする

OpenWrtのUIは英語で表示されますが、luci-i18n-base-ja をインストールすれば、最初から日本語UIで使えます。OpenWrtの起動後にLuCiのUIから追加インストールしても良いのですが、英語が得意ではない方は予め microSD にコピーしておきます。

http://downloads.openwrt.org/releases/19.07.0/packages/arm_cortex-a7_neon-vfpv4/luci/luci-i18n-base-ja_git-20.008.69804-de34495-1_all.ipk

パッケージの追加:Pi, Pi2 向けのWiFi USBドングル向けドライバ

PI, Pi2 などでWiFi USBドングルを使う場合はインストール後にLuCiのUIで必要なドライバをインストールします。

BUFFALO WLI-UC-GNM2 の場合は次のパッケージをダウンロードしてインストールしておくと、最初から使えるようになります。

http://downloads.openwrt.org/releases/19.07.0/packages/arm_cortex-a7_neon-vfpv4/base/usbutils_007-10_arm_cortex-a7_neon-vfpv4.ipk
http://downloads.openwrt.org/releases/19.07.0/packages/arm_cortex-a7_neon-vfpv4/base/libusb-1.0-0_1.0.22-2_arm_cortex-a7_neon-vfpv4.ipk

http://downloads.openwrt.org/releases/19.07.0/targets/brcm2708/bcm2709/kmods/4.14.162-1-2911c85b0fe34f5899879f41e832a894/kmod-rt2800-usb_4.14.162%2b4.19.85-1-1_arm_cortex-a7_neon-vfpv4.ipk
http://downloads.openwrt.org/releases/19.07.0/targets/brcm2708/bcm2709/kmods/4.14.162-1-2911c85b0fe34f5899879f41e832a894/kmod-mac80211_4.14.162%2b4.19.85-1-1_arm_cortex-a7_neon-vfpv4.ipk
http://downloads.openwrt.org/releases/19.07.0/targets/brcm2708/bcm2709/kmods/4.14.162-1-2911c85b0fe34f5899879f41e832a894/kmod-rt2x00-lib_4.14.162%2b4.19.85-1-1_arm_cortex-a7_neon-vfpv4.ipk
http://downloads.openwrt.org/releases/19.07.0/targets/brcm2708/bcm2709/kmods/4.14.162-1-2911c85b0fe34f5899879f41e832a894/kmod-rt2x00-usb_4.14.162%2b4.19.85-1-1_arm_cortex-a7_neon-vfpv4.ipk
http://downloads.openwrt.org/releases/19.07.0/targets/brcm2708/bcm2709/kmods/4.14.162-1-2911c85b0fe34f5899879f41e832a894/kmod-rt2800-lib_4.14.162%2b4.19.85-1-1_arm_cortex-a7_neon-vfpv4.ipk
http://downloads.openwrt.org/releases/19.07.0/packages/arm_cortex-a7_neon-vfpv4/base/rt2800-usb-firmware_20190416-1_arm_cortex-a7_neon-vfpv4.ipk

パッケージの追加:Pi Zero向け(確認中)

焼いたmicroSDを装着してRaspberry Pi を起動し、パッケージインストールと初期設定の投入を行う

初期段階では NIC には LAN ケーブルを刺さずに作業します。(Pi Zero W は USB NIC だけ装着し、ケーブルは刺しません)。OpenWrt のデフォルトのIPアドレスは 192.168.1.1 が NIC に設定され、さらにDHCPも有効のため、既存のLANに接続して起動すると接続先ネットワークに影響が出るおそれがあります。

行う作業はこんな内容です。

  • 起動したらシェルから cd /boot/作業ディレクトリ を実行
  • パッケージをインストールする。opkg install *.ipk
  • 初期設定の投入./initialconfig.sh
  • 初期設定をコミット uci commit
  • 再起動 reboot

ここまでくれば、有線LAN側がDHCPクライアントに設定されたWiFiルータになっています。あとは管理UIのパスワード設定を行い、さらに必要なカスタマイズを加えていきます。

内容的には、過去バージョンのインストールと基本的に違いはありませんでした。

pslabo.hatenablog.com