WHR-1166DHP3のopenwrt化

手順メモ

PCには、raspbianOS を利用. openwrtは、24.10.5 を利用.

  1. WHR-1166D のファームウェアを「kernel.bin」と「sysupgrade.bin」をPCにダウンロード
  2. PCのアドレスを 192.168.11.168/24 に設定
  3. PCにtftpdのインストールとファームウェアの準備する
    $ sudo apt install tftpd-hpa
    $ sudo mkdir -p /var/lib/tftpboot
    $ sudo mv ~/kernel.bin /var/lib/tftpboot/firmware_WHR-1166DHP2.ram
    $ sudo chmod -R 777 /var/lib/tftpboot
  4. tftpd の設定ファイルを編集
    $ sudo vi /etc/default/tftpd-hpa
    TFTP_DIRECTORY="/srv/tftp" # ファイル格納場所を「/var/lib/tftpboot」に変更 TFTP_OPTIONS="--secure --verbose" # ここに --verbose を追加 $ sudo systemctl restart tftpd-hpa.service
  5. どんなリクエストが届いているかなどトラブルシュートのため、tftpd のログを表示させておく
    $ sudo journalctl -u tftpd-hpa -f
  6. WHR-1166DHP3 のWAN とPC とをLANケーブルで接続して、AOSSボタンを押しながら電源ON
  7. tftpd のログに準備していたファイルを取得するログが表示される
  8. しばらくすると、電源ランプが点滅から点灯に変わり、192.168.1.1 で起動する。
  9. PCを 192.168.1.2 に設定して、 WHR-1166DHP3 のLAN 側と接続。
  10. http://192.168.1.1 にアクセスして、ファーム画面に行き、「〜sysupgrade.bin」適用
  11. LED点滅が続くが、しばらくすると点灯に変わり、openwrtインストールが完了
  12. 起動後の空きメモリは10MiB.ディスク空きは、9MiB.消費電力は、4W.
WHR-1166DHP3 SPEC

CPU: MediaTek MT7620A
CPU MHz:580
Flash MB:16
RAM MB:128
Ethernet 100M ports:4
Ethernet 1Gbit ports:1

参考 ここにきてWHR-1166DHP2がOpenWRTに最強なのではないかと気付かされる

OpenWrt 25.12.0 を試してみる

2026-03-05 OpenWrt 25.12.0 がリリースされた
Luci から、System-> Administration-> Flash new firmware image を利用して 24.12.0 にアップデート
パッケージマネージャが apk に変わったぐらいで、自分が利用している機能には問題なさそう

# apk update
# apk upgrade -s <--- upgrade対象の確認
# apk upgrade
# apk add xxxxx <---  パッケージのインストール

アップデートしてみた機種
* Buffalo WHR-1166DHP3
* ELECOM WRC-1750GST2

スリムブレードトラックボール

2025年10月に購入した、スリムブレードトラックボール (slimbladetrackball)について

  • 左上、左下、右下ボタンを同時に3秒押すと、スクロール音が無効/有効に切り替わる
スクロール音の無効/有効化

画像は、AIで作成したものです

  • 右上、右下、左下ボタンを同時に3秒押すと、スクロール機能が無効/有効に切り替わる

Emacs 30.1 on Windows 11を使用している方へ: gptelパッケージ利用時の注意点

Emacs 30.1をWindows 11で利用している場合に、gptelパッケージを使用する際の設定について説明します。

標準のcurlを使用せず、urlを使う設定が必要

gptelパッケージを使う場合、デフォルトのcurlではなく、urlを使用する設定が必要です。この設定を行わないと、responseエラーが発生します。以下のコードを設定してください。

(setq gptel-use-curl nil)

proxyを通す場合の設定

urlを利用する場合でproxyを通す必要がある場合は、gptelのproxy設定 (setq gptel-proxy) ではなく、別途のproxy設定を行う必要があります。以下の設定例を参考にしてください。

;; proxy設定
(setq url-proxy-services
      '(("http" . "proxy.example.com:8080")
        ("https" . "proxy.example.com:8080")))

エラー特定のためのログ設定

エラーを特定するには、以下の設定を行うことで、自動的にログ用のバッファが作成されます。このログには送信内容などが記録されるため、トラブルシューティングの際に役立ちます。

(setq gptel-log-level "info")

以上の設定を行うことで、エラーを回避し、問題解決がスムーズになります。ぜひお試しください。

Openwrt 設定3 adblock

adblock 導入

LAN内端末全てにadblockを提供するため、adblock パッケージを導入
packages/net/adblock/files/README.md at master · openwrt/packages · GitHub

導入方法

  1. System->Softwareをクリック
  2. Update listsをクリックしてアップデート
  3. luci-app-adblockをインストール*1
  4. luci-app-adblock Web管理画面
    Services-> adblock をクリック
  5. Startup Trigger InterfaceにWANを選択。
    これでインターフェース起動後にadblockが自動起動する。 *2
  6. フィルタ編集(必要なら)
    1. gzip -d /etc/adblock/adblock.sources.gz
    2. vi /etc/adblock/adblock.sources で編集
    3. gzip /etc/adblock/adblock.sources
  7. フィルタ更新のため,Refresh Timer ボタンから、restart/reload を設定

DNS Report 機能

ブロックしたドメインを知りたい場合は、tcpdump-mini を入れる。

E-Mail Notification機能

report mail にて、DNS Report と同様の内容をメールする
'msmtp' のインストールとその設定が必要。ルータの稼働状況がわかるので設定。

メールは、Googleアカウントの「アプリ パスワード」を生成を利用するのがお手軽かもしれない
Googleアカウントのアプリパスワード設定手順について - ファクス - Panasonic

account adb_notify
auth on
tls on
tls_starttls on
from めーる@gmail.com
host smtp.gmail.com
port 587
user めーる@gmail.com
password パスワード

*1:依存するadblockも一緒に入る

*2:/etc/config/adblock に option adb_trigger 'wan'が追加される

Openwrt 設定2

設定

管理用設定

  1. System -> Router Password タブにて設定
  2. SSH Access タブ
    inerface を lan のみを選択

タイムゾーン設定

  1. System -> System
  2. General Setting タブのTimezone を Asia/Tokyo を選択してSave

systemlog にエラーの対処

daemon.err odhcpd[1616]: Failed to send to ff02::1%lan@br-lan (Operation not permitted) といったメッセージが記録される。
ipv6 を利用しないため、不要パッケージを削除

  1. System -> Software
  2. Installed タブを選択
  3. 以下を削除
    • odhcp6c を削除
    • odhcpd-ipv6only

pppoe 設定変更

  1. Network -> Interfaces を選択
  2. pppoe-wan -> edit をクリック
  3. General Setting タブ内
      • Protocol -> PPPoE を選択
      • PAP/CAHP username
      • PAP/CAHP password

dhcp設定変更

  1. Network -> Interfaces を選択
  2. lan(br-lan) Edit をクリック
  3. General Settings タブ
    IPv4 address でネットワークアドレス変更可能(192.168.10.1./24など)
  4. Advanced Setting タブ
    IPv6 assignment length -> disable に設定
  5. DHCP Server タブ内 General Setup
      • Start DHCPで利用する範囲を設定
      • Start 開始するアドレス 100 なら、192.168.10.100 から開始
      • Limit 提供する数 120 なら、 192.168.10.219 までとなる
  6. DHCP Server タブ内 IPv6 Settings
      • RA-Service -> disable
      • DHCPv6-Service -> disable
      • NDP-Proxy -> disable

定期的な再起動

30 4 * * * sleep 70 && touch /etc/banner && reboot

参考 [OpenWrt Wiki] Scheduling tasks with cron

Openwrt 設定1 Firewall

Model: ELECOM WRC-1750GST2
Firmware Version: OpenWrt 23.05.2

firewall設定

Webインターフェースで設定する場合、sshで接続しておくことで、設定失敗してWebインターフェースに接続できなくなった場合、fw4 stop を入力して停止すると再設定が可能

  1. Network -> Firewall を選択
  2. General Setting ( ) Enable Sys-flood protection をチェック
  3. Input,Output,Forward を reject に設定
  4. Routing/NAT Offloading
    Software flow offloading にチェック
    Hardware flow offloading にチェック
  5. Zones
    • lan-> wan
      • input,output,forwardを rejectに設定
        lan側端末は応答を待たせないために拒否を通知する
    • wan-> REJECT
      • input,output,forwardを dropに設定
        wan側のパケットには応答しない
  6. traffice rules タブ
    既存設定を全て削除して以下を追加
name protocol source source-port dest dest-port
LAN-CPU(TCP) TCP lan デバイス 22 53 80 443
LAN-CPU(UDP) UDP lan デバイス 53 67 123
LAN-CPU(ICMP) ICMP lan デバイス
CPU-LAN(TCP) TCP デバイス 22 53 80 443 lan
CPU-LAN(UDP) UDP デバイス 53 67 123 lan
CPU-WAN(TCP) TCP デバイス wan 53 80 443
CPU-WAN(UDP) UDP デバイス wan 53 123
CPU-WAN(ICMP) ICMP デバイス wan
LAN-WAN(TCP) TCP lan wan 80 443
LAN-WAN(UDP) UDP lan wan 123 443
LAN-WAN(Swichbot) TCP lan wan 8883
LAN-WAN(icloud ) TCP lan wan 5223
LAN-WAN(Exchage) TCP lan wan 587 993 995 143 25
LAN-WAN(Teams) UDP lan wan 3478 3479 3480 3481
LAN-ANY(file) TCP/UDP lan 137 138 139 445 2049 any zone action:reject
LAN-ANY TCP/UDP lan any zone action:drop

メモ