OpenWrt Tips: Difference between revisions
No edit summary |
No edit summary |
||
(18 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
*GL-MT6000 mediatek firmware |
|||
https://github.com/rany2/openwrt |
|||
ここを参考に MTK GPL ソースをいろいろホゲって、すこし安定したようだ。 |
|||
OpenWrt main snapshot: |
|||
<syntaxhighlight lang="text" enclose="div"> |
|||
[ 14.210931] platform 15010000.wed: MTK WED WO Firmware Version: DEV_000000, Build Time: 20221012175005 |
|||
[ 14.220308] platform 15010000.wed: MTK WED WO Chip ID 00 Region 3 |
|||
[ 16.831897] mt798x-wmac 18000000.wifi: HW/SW Version: 0x8a108a10, Build Time: 20221012174648a |
|||
[ 16.831897] |
|||
[ 16.934523] mt798x-wmac 18000000.wifi: WM Firmware Version: ____000000, Build Time: 20221012174725 |
|||
[ 17.018891] mt798x-wmac 18000000.wifi: WA Firmware Version: DEV_000000, Build Time: 20221012174937 |
|||
</syntaxhighlight> |
|||
MTK GPL: |
|||
<syntaxhighlight lang="text" enclose="div"> |
|||
[ 13.247287] platform 15010000.wed: MTK WED WO Firmware Version: DEV_000000, Build Time: 20231024160448 |
|||
[ 13.256586] platform 15010000.wed: MTK WED WO Chip ID 00 Region 3 |
|||
[ 15.828346] mt798x-wmac 18000000.wifi: HW/SW Version: 0x8a108a10, Build Time: 20231024160251a |
|||
[ 15.828346] |
|||
[ 15.864094] mt798x-wmac 18000000.wifi: WM Firmware Version: ____000000, Build Time: 20231024160309 |
|||
[ 15.906781] mt798x-wmac 18000000.wifi: WA Firmware Version: DEV_000000, Build Time: 20231024160432 |
|||
</syntaxhighlight> |
|||
*WDS |
|||
昔は、Wi-Fi ブリッジ(リピーター、エクステンダー)を構成する場合は、relayd を使ってたのだが、今は WDS という機能をつかうのが普通らしい。(WDSはレイヤー2レベルでブリッジを構成する) |
|||
最初はなじみのある relayd を使ってみたのだが、IPv6 関連で微妙な振る舞いがあって、ではということで WDS 使ってみたがむちゃくちゃサックリとブリッジが構成できた。IPv6 関連もなじみの設定であっさりと設定。かつ通信も安定している。 |
|||
もうすこし遊んだら 802.11s 構成にもチャレンジしてみよう。 |
|||
*802.11r不具合 |
|||
MacBookAirでつながんないと悩んでいたが、そうだったのか |
|||
<syntaxhighlight lang="text" enclose="div"> |
|||
Alright... So I've now verified that having 802.11k, 802.11v and 802.11w enabled does not influence the situation. Having them enabled, I've confirmed that a combination of wireless.default_radio0.encryption='sae-mixed' + wireless.default_radio0.ieee80211r='1' causes problems. Changing any of them makes everything work. |
|||
</syntaxhighlight> |
|||
https://forum.openwrt.org/t/wpa2-wpa3-mixed-mode-connectivity-issues-with-ios-15-2/117110/7 |
|||
APをmix-modeからWPA3-SAE固定に変更したばあい、Appleのクライアントはそのままつながらない。再度明示的に接続しに行くと、モードが変更された旨の警告が出る。もっと分かるようにさっさと警告を出せよw |
|||
*GL-MT6000メモ |
|||
openwrt main snapshot kernel 6.1 と bridger(+追加パッチ) で超安定して動いている。WED も完璧。2.5GbE のハブ買うか、もう一台 GL-MT6000 買うかw |
|||
(もう一台買ったw 802.11r.k.v で遊び中w)(あとは SQM 専用機のエッジルータもそろえたw) |
|||
*OOM系 |
|||
とりあえず安全のための設定をするスクリプト |
|||
<syntaxhighlight lang="bash" enclose="div"> |
|||
#!/bin/sh |
|||
PROGS='procd ubusd askfirst urngd logd rpcd netifd dropbear' |
|||
for prog in $PROGS; do |
|||
PIDS=`pgrep $prog` |
|||
for pid in $PIDS; do |
|||
# oom_adj is deprecated, use oom_score_adj instead. |
|||
echo -17 > /proc/$pid/oom_adj |
|||
echo -1000 > /proc/$pid/oom_score_adj |
|||
done |
|||
done |
|||
</syntaxhighlight> |
|||
*GL-MT6000メモ |
*GL-MT6000メモ |
||
追加でinstallしたものメモ |
追加でinstallしたものメモ |
||
<syntaxhighlight lang="bash" enclose="div"> |
<syntaxhighlight lang="bash" enclose="div"> |
||
opkg update |
opkg update |
||
opkg install luci-i18n-base-ja |
|||
opkg install e2fsprogs dosfstools fdisk rsync badblocks tune2fs |
opkg install e2fsprogs dosfstools fdisk rsync badblocks tune2fs |
||
opkg install unzip |
opkg install unzip |
||
opkg install screen |
opkg install screen |
||
⚫ | |||
opkg install dropbearconvert |
opkg install dropbearconvert |
||
opkg install avahi-utils avahi-daemon-service-ssh |
opkg install avahi-utils avahi-daemon-service-ssh |
||
Line 12: | Line 78: | ||
opkg install diffutils |
opkg install diffutils |
||
opkg install mg |
opkg install mg |
||
⚫ | |||
opkg install procps-ng procps-ng-ps procps-ng-w procps-ng-vmstat procps-ng-watch |
opkg install procps-ng procps-ng-ps procps-ng-w procps-ng-vmstat procps-ng-watch |
||
opkg install sysstat irqbalance |
opkg install sysstat irqbalance lm-sensors |
||
opkg install htop |
opkg install htop lsblk usbutils |
||
</syntaxhighlight> |
</syntaxhighlight> |
||
Revision as of 12:29, 5 April 2024
- GL-MT6000 mediatek firmware
https://github.com/rany2/openwrt
ここを参考に MTK GPL ソースをいろいろホゲって、すこし安定したようだ。
OpenWrt main snapshot:
[ 14.210931] platform 15010000.wed: MTK WED WO Firmware Version: DEV_000000, Build Time: 20221012175005
[ 14.220308] platform 15010000.wed: MTK WED WO Chip ID 00 Region 3
[ 16.831897] mt798x-wmac 18000000.wifi: HW/SW Version: 0x8a108a10, Build Time: 20221012174648a
[ 16.831897]
[ 16.934523] mt798x-wmac 18000000.wifi: WM Firmware Version: ____000000, Build Time: 20221012174725
[ 17.018891] mt798x-wmac 18000000.wifi: WA Firmware Version: DEV_000000, Build Time: 20221012174937
MTK GPL:
[ 13.247287] platform 15010000.wed: MTK WED WO Firmware Version: DEV_000000, Build Time: 20231024160448
[ 13.256586] platform 15010000.wed: MTK WED WO Chip ID 00 Region 3
[ 15.828346] mt798x-wmac 18000000.wifi: HW/SW Version: 0x8a108a10, Build Time: 20231024160251a
[ 15.828346]
[ 15.864094] mt798x-wmac 18000000.wifi: WM Firmware Version: ____000000, Build Time: 20231024160309
[ 15.906781] mt798x-wmac 18000000.wifi: WA Firmware Version: DEV_000000, Build Time: 20231024160432
- WDS
昔は、Wi-Fi ブリッジ(リピーター、エクステンダー)を構成する場合は、relayd を使ってたのだが、今は WDS という機能をつかうのが普通らしい。(WDSはレイヤー2レベルでブリッジを構成する)
最初はなじみのある relayd を使ってみたのだが、IPv6 関連で微妙な振る舞いがあって、ではということで WDS 使ってみたがむちゃくちゃサックリとブリッジが構成できた。IPv6 関連もなじみの設定であっさりと設定。かつ通信も安定している。
もうすこし遊んだら 802.11s 構成にもチャレンジしてみよう。
- 802.11r不具合
MacBookAirでつながんないと悩んでいたが、そうだったのか
Alright... So I've now verified that having 802.11k, 802.11v and 802.11w enabled does not influence the situation. Having them enabled, I've confirmed that a combination of wireless.default_radio0.encryption='sae-mixed' + wireless.default_radio0.ieee80211r='1' causes problems. Changing any of them makes everything work.
https://forum.openwrt.org/t/wpa2-wpa3-mixed-mode-connectivity-issues-with-ios-15-2/117110/7
APをmix-modeからWPA3-SAE固定に変更したばあい、Appleのクライアントはそのままつながらない。再度明示的に接続しに行くと、モードが変更された旨の警告が出る。もっと分かるようにさっさと警告を出せよw
- GL-MT6000メモ
openwrt main snapshot kernel 6.1 と bridger(+追加パッチ) で超安定して動いている。WED も完璧。2.5GbE のハブ買うか、もう一台 GL-MT6000 買うかw
(もう一台買ったw 802.11r.k.v で遊び中w)(あとは SQM 専用機のエッジルータもそろえたw)
- OOM系
とりあえず安全のための設定をするスクリプト
#!/bin/sh
PROGS='procd ubusd askfirst urngd logd rpcd netifd dropbear'
for prog in $PROGS; do
PIDS=`pgrep $prog`
for pid in $PIDS; do
# oom_adj is deprecated, use oom_score_adj instead.
echo -17 > /proc/$pid/oom_adj
echo -1000 > /proc/$pid/oom_score_adj
done
done
- GL-MT6000メモ
追加でinstallしたものメモ
opkg update
opkg install luci-i18n-base-ja
opkg install e2fsprogs dosfstools fdisk rsync badblocks tune2fs
opkg install unzip
opkg install screen
opkg install dropbearconvert
opkg install avahi-utils avahi-daemon-service-ssh
opkg install rsync
opkg install diffutils
opkg install mg
opkg install coreutils-ls coreutils-stty
opkg install procps-ng procps-ng-ps procps-ng-w procps-ng-vmstat procps-ng-watch
opkg install sysstat irqbalance lm-sensors
opkg install htop lsblk usbutils
- パッケージが何故か更新されない問題
新しいバージョンがビルドされたのは確認しているが、ターゲットイメージ内の該当パッケージが更新されていない。いろいろ調査して、root.orig-ARCH が古いままであるのがわかった。 なぜ古いままなのか。./bin/package/ARCH にある opkg のパッケージに古いのが残っていた(バージョン違いが残っていた)。./bin/package/ARCH を消すと解消した。 毎回消すのも効率が悪いので、時々消すwことにした。
- cmake で libbsd 勝手に使う問題
-DCMAKE_DISABLE_FIND_BSD=ON
諸注意
Note that CMAKE_DISABLE_FIND_XXXXX works for dependency packages that are discovered by CMake using find_package. But, libbsd searching is not done using find_package but find_library, so the -DCMAKE_DISABLE_FIND_BSD=ON is a no-op.
- Build OpenWrt on FreeBSD
ports の準備
/usr/ports/shells/bash
/usr/ports/sysutils/coreutils
/usr/ports/devel/ncurses
/usr/ports/devel/subversion
/usr/ports/devel/git
/usr/ports/ftp/wget
/usr/ports/archivers/unzip
/usr/ports/lang/gcc
/usr/ports/devel/gmake
/usr/ports/misc/getopt
/usr/ports/devel/patch
/usr/ports/archivers/gtar
/usr/ports/misc/findutils
/usr/ports/lang/gawk (/usr/ports/japanese/gawk は違う)
/usr/ports/textproc/gsed
#/usr/ports/sysutils/e2fsprogs
#/usr/ports/sysutils/squashfs-tools
#/usr/ports/devel/elfutils
OpenWrt ビルドのステップでほかのパッケージも指摘されたらインストールする。
OpenWrtは root 権限ではない一般ユーザでビルドする事を要請されている。また PATH に ASCII 文字以外は使わない。
ln -s /usr/local/bin/bash /bin/bash
mkdir /usr/local/openwrt
cd /usr/local/openwrt
ln -s /usr/local/bin/gawk awk
ln -s /usr/local/bin/gfind find
ln -s /usr/local/bin/getopt getopt
ln -s /usr/local/bin/gmake make
ln -s /usr/local/bin/gpatch patch
ln -s /usr/local/bin/gnustat stat
ln -s /usr/local/bin/gtar tar
ln -s /usr/local/bin/gxargs xargs
ln -s /usr/local/bin/gsed sed
したり
OpenWrt をビルドする専用のユーザを作り、login shell を bash にして
export PATH="/usr/local/openwrt:/usr/local/sbin:/usr/local/bin:$PATH"
export CC=gcc
export CXX=g++
export HOSTCC=gcc
export HOSTCXX=g++
# /usr/local/openwrt を整備して PATH 変えたらこれは不要
alias awk='/usr/local/bin/gawk'
alias find='/usr/local/bin/gfind'
alias getopt='/usr/local/bin/getopt'
alias make='/usr/local/bin/gmake'
alias patch='/usr/local/bin/gpatch'
alias stat='/usr/local/bin/gnustat'
alias tar='/usr/local/bin/gtar'
alias xargs='/usr/local/bin/gxargs'
alias sed='/usr/local/bin/gsed'
tools のビルドで野良パッチを当てつつ頑張ってみた。e2fsprogs, mtd-utils, elfutils は tools/Makefile から除く
ports の pkgconfig は .pc ファイルを libdata に入れるのでそれの対応が必要な場合(util-linux)も有る。
- usb上のデバイスを強制リセット
lsusb -t
echo -n '{Bus}-{Port}' > /sys/bus/usb/drivers/usb/unbind
echo -n '{Bus}-{Port}' > /sys/bus/usb/drivers/usb/bind
echo -n '1-1' > /sys/bus/usb/drivers/usb/unbind
echo -n '1-1' > /sys/bus/usb/drivers/usb/bind