【無線LAN】OpenWrt/LEDE【強化ファーム】15
■ このスレッドは過去ログ倉庫に格納されています
▼OpenWrtとは
主に無線LANルータのファームウェアを書き換える形で動作するLinuxディストリビューションです。
パッケージマネージャを備えているので
メモリが許せば様々な追加ソフトをインストールして使うことが出来ます。
▼LEDEとは
2016年5月にOpenWrtから派生したディストリビューションです。
開発スピードが早く、2017年9月現在では事実上の後継バージョンといえます。
意見の相違からOpenWrtから独立しましたが、近々の再合流が話し合われています。
▼DD-WRTとの関係
初期のOpenWrtのGUI付バージョンとしてスタートしたプロジェクトで
現在ではかなり乖離しています
GUI操作前提の無線LANルータ用高機能カスタムファームウェアを志向しています。
▼電波法について
日本国内においてはOpenWrt/LEDEを組み込んだ無線LANルータで
無線LANをONにすると電波法に違反することになります。
『適合表示無線設備と同等の機能であっても技術基準適合証明の技適マークの無い機器、
または技適マークがあるが改造された機器の使用は、
総務大臣の免許の無いまま無線局を開設したこととなり、
第110条第1号により1年以下の懲役又は100万円以下の罰金刑に処される。』
※ Wikipedia「技適マーク」からの引用
OpenWrt/LEDEではインストール直後は無効になっているので
無線LANはOFFのまま高機能ルータとして利用しましょう。 今日の戦利品
モロッコヨーグル @20円 x4
うまい棒 @10 x2 エレコムの例のNASへのOpenWrtマイグレーションってどんな感じかな?
あと、ツイッター見てたら
openocdでJTAGアクセスに成功した方がいるみたい
Flashアクセスもできるようなら
bootloader書き換え含めてなんでもできそう > エレコムの例のNASへのOpenWrtマイグレーション
OpenWrtというよりカーネルのリビジョン移行(3.4.x -> 4.9.x)だが...
CPUコア 2個(Cortex-A9 SMP)起動、シリアルポートコンソール開通、
initramfsのroofs上でコマンドライン操作、まで進んだ
GPIOドライバに着手したところ
ここまでで約一ヶ月かかった printkすら使えない条件でのデバッグはツラかった
ブートローダは書き換えの必要性を感じない
u-bootに関しては開示ソースコードがそのままターゲットで動かせる実装ではない可能性がある
Ether, NAND, USB, S-ATA, 移植しなきゃいけないドライバはまだいっぺぇあんぞ >>13
大変乙
kernel 4.9の移植がんがってください
成功の暁にはOpenWrtだけじゃなくて
ubuntu,debianなどの道も開けるかもしれず
喜ぶ方は多いと思います WR4100Nのファーム吸出し無理だった
TH-SP0711とほぼ同じ方法使ったのだが
atermのcatはcat内部で\x0A→\x0D\x0Aの変換やっていてファイルサイズが肥大化してた
tftp転送は512Byteしか転送されない DebianやUbuntuを動かすのは現状のカーネルでもできるんじゃないでしょうか
u-bootのコンソールで起動コマンドや起動パラメータを変更して
LinuxのrootfsをSATA HDDに置いてしまえばいいのですし >>16
>u-bootのコンソールで起動コマンドや起動パラメータを変更して
できればね
u-boot-envの保存領域が無く
常にu-boot内のデフォルト設定使ってる機種が存在する >>17
ELECOM NSB-3xxでは変更保存(setenv,savenv)できますよ >>18
保存コマンドがある=領域がある
ではないぞ >>19
電源OFFして、次に起動したときも記憶されている
これでどうだ? 8 cmdlinepart partitions found on MTD device cs752x_nand_flash
Creating 8 MTD partitions on "cs752x_nand_flash":
0x000000100000-0x000000200000 : "uboot-env0"
0x000000300000-0x000000400000 : "uboot-env1"
0x000000400000-0x000000500000 : "sb0"
0x000000500000-0x000000600000 : "sb1"
0x000001200000-0x00000a800000 : "rootfs"
mtd: partition "rootfs" set to be root filesystem
0x00000a800000-0x000015200000 : "rootfs_data"
0x000000c00000-0x000001200000 : "kernel2"
0x000015200000-0x00001e800000 : "rootfs2"
uboot-env0に書き換えた内容が入っていることはnand readで読み込んで確認した
保存している領域は他の用途と被ってない 果てしなくめんどくせぇやつ...
ただね、全てのことに常に疑念を持って細かく細かく突けるアナタのような人の存在は必要です
これからもその姿勢を貫き通してください 自分では試しもせずいちゃもんだけつける奴は不要だろ WRC-300GHBK
# cat /proc/mtd
dev: size erasesize name
mtd0: 00020000 00010000 "u-boot"
mtd1: 00180000 00010000 "uImage"
mtd2: 00640000 00010000 "rootfs"
mtd3: 00010000 00010000 "mib0" ← SSIDとかファーム上の設定がここに入る
mtd4: 00010000 00010000 "ART"
u-boot envどこー? https://openwrt.org/docs/techref/bootloader/uboot.config
>Some devices seem not to have the uboot_env section and the environment appears with an offset in the section containing uboot (/dev/mtd0) here.
>In the latter case expect that the environment address (offset) is a multiple of Flash sector size.
とのことでmtd0の中に入っている場合もあるようです >>26
ubootに初期値が入ってるのは知ってる
lzma圧縮されたubootの中にあるuboot env (変更不可)
bootargs=console=ttyS0,115200 root=31:02 rootfstype=jffs2 init=/sbin/init mtdparts=ath-nor0:128k(u-boot),1536k(uImage),6400k(rootfs),64k(mib0),64k(ART)
bootcmd=bootm 0x9f080010
bootdelay=2
baudrate=115200
ethaddr=0x00:0xaa:0xbb:0xcc:0xdd:0xee
ipaddr=192.168.1.1
serverip=192.168.1.10
bc=mi124_s17
以下略 >>26
つまりmtd0(普通はu-boot領域)の
一部のブロックをenv領域に使うってことですよね
例えば>25に例にすると、
0x00010000からをenvに使うとか
(u-boot本体が64KByteということはないだろうからこの機種では違うだろうけど) Corega CG-WGR1200 で脆弱性勧告が出てますね
https://jvn.jp/jp/JVN15201064/
無線LAN製品から撤退していたのを知らなかった
新製品の情報を見かけないなぁとは思っていたけど
この機種、発破の方あたりが挑んでおられるんでしたっけ? >>25,>>29
Linuxのmtd partition tableの定義でu-bootのコード領域を記述していなければ
/proc/mtdで現れません。
つまりはu-bootコード領域をLinuxから見えるようにしていない場合です。
u-bootコード領域をLinuxから更新することは一般コンシュマー向けの商品化では
フィールドに出たらほぼ有り得ないですし
(u-boot起動も2面化できる実装になっていない限り、ミスしたら文鎮)
read-only属性をつけて見えるようにしても用途がなく、だったら最初から見せない、と。
そのmtd0領域の内容を、実機上で強引にcatする、ddでファイル化してPCに吸い上げてダンプ、
などで見られれば、環境変数っぽい文字列が現れるかどうかで推測できるんじゃないでしょうか bufpy
# cat /proc/mtd
dev: size erasesize name
mtd0: 0003e000 00001000 "uboot"
mtd1: 00002000 00001000 "uboot_environ"
mtd2: 000e0000 00010000 "linux"
mtd3: 002c0000 00010000 "rootfs"
mtd4: 00010000 00010000 "user_property"
mtd5: 00010000 00010000 "ART"
mtd6: 003a0000 00010000 "firmware"
同じ機種にdd-wrt入れて
root@DD-WRT:/tmp/www# cat /proc/mtd
dev: size erasesize name
mtd0: 00040000 00010000 "RedBoot"
mtd1: 003a0000 00010000 "linux"
mtd2: 002c2000 00010000 "rootfs"
mtd3: 00010000 00010000 "ddwrt"
mtd4: 00010000 00010000 "nvram"
mtd5: 00010000 00010000 "board_config"
mtd6: 00400000 00010000 "fullflash"
mtd7: 00040000 00010000 "fullboot"
>31はこんな感じでしょ (名称が変わってるが) >25にある
mtd1: 00180000 00010000 "uImage" の中身
webg (262,144 Byte)
COMPCS (65,536 Byte)
COMPDS (65,536 Byte)
csys (1,114,112 Byte) *Linux
COMPHS (65,536 Byte)
これ、蟹チップのファームで使われてるヘッダがついてる
COMPCSは設定書き込み領域 IODATAのルーターにシリアル接続した場合の初期パスワードって何ですか? >>35
レスありがとうございます
知りたいのはWN-G300DGRです BroadcomによるQualcomm買収を
米政府が待ったをかけたようで
https://pc.watch.impress.co.jp/docs/news/1111197.html
安全保障を引合いにしたロビー活動が奏功したようですね
今のBroadcomってシンガポールに拠点があるそうですけど
確かAVAGOが買収された上で名前だけ変えた企業でしたよね
とりあえずOSSの観点からは良かったかな? >>10
自ビルドのwhr-g301n用イメージは、sysupgradeでインストールして、普通に
動いてるよ。
luciを含めると、サイズがオーバーするのかsysupgrade用イメージが作られない
ので、luciはなしで動かしてる。 WZR-450HP手に入れたんだけど、これってwzr-hp-g450hとwzr-450hp2のどちらのbin書き込むべきなの? 前者
後者はBHR4-GRV2の無線付きバージョンで
日本では発売されてないはず 前スレでArcherC7v2をブリックさせて相談した者です。
ようやく中国からUSBシリアル変換アダプタが届き、シリアル接続を
試すことが出来ました。結果、無事に復旧することができました。
最初はTX・RX・GNDだけを接続しましたがうまくいかず、
ttps://wiki.openwrt.org/toh/tp-link/archer-c5-c7-wdr7500#recovery_using_serial_connection
を参考にアダプタのVCCにも接続したところ反応してくれました。
10秒間隔でリブートしてしまうような状況でもシリアル接続で回復
できることを体験し、ちょっと感動しました。 おめでとう
ちなみにどんなアダプタにしたんですか? >>44
これ ttp://amzn.asia/0YdSQWX
と
これ ttp://amzn.asia/hbTh7KU
を注文し、早く届いた前者の方を使用しました。
必要になる都度ルーターの蓋を開けて接続するつもりでいましたが、
この値段なので何台か購入してルーターに埋め込むようにすれば、
いつでもシリアルコンソールが使えて良かったかなとも思ってます。 FTDIとCH340
Win環境でなら悪くない選択だったと思いますねー Uncompressing Kernel Image ... OKとなってしまってインスト成功しない場合はどうすればいいですか? WRC-300FEBK-RのWRC-300FEBK-A化
<RealTek>
**TFTP Client Upload, File Name: wrc300febk-a-202-0.bin.2.bin
**TFTP Client Upload File Size = 00000800 Bytes at 80500000
Success!
<RealTek>flw bd020000 80500000 00004000
Write 0x00004000 Bytes to SPI flash#1, offset 0xbd020000<0x7a020000>, from RAM 0x80500000 to 0x80504000
(Y)es, (N)o->Y
.<RealTek> elecomの供給元が判明
CC&C Technologies
http://www.ccandc.com.tw/
ここ、製品提供だけで個人向け販売は無い (GPL無視してるのも納得) >47
機種とか使ったimageとか、前後のログとかを晒さないと何とも言えぬ
>48
-Rと-Aって何が違うんでしたっけ? >>50
機種は buffalo WZR-450HPで使ったイメージはopenwrt-ar71xx-generic-wzr-hp-g450h-squashfs-tftp.bin、wzr_hp_g450h-factory-to-ddwrt.bin、wzr_hp_g450h-dd-wrt-webupgrade-MULTI.binです
ログは、$$$$$$$$$$$$$$$$tftp server done
Bytes transferred = 3407876 (340004 hex)
LAN port disabling: done
skip FW-CRC checking!!!
change bootargs
console=ttyS0,115200 root=31:03 rootfstype=jffs2 init=/sbin/init mtdparts=ar7240-nor0:256k(u-boot),64k(u-boot-env),1152k@384k(uImage),6592k@1536k(rootfs),64k@320k(ART),64k@8128k(properties),8192k@8192k(flash1),16384k@16384k(flash2) mem=64M
## Booting image at bf060000 ...
Image Name: Linux Rootfs Combined Image
Created: 2015-12-29 4:39:07 UTC
Image Type: MIPS Linux Kernel Image (lzma compressed)
Data Size: 21860288 Bytes = 20.8 MB
Load Address: 80002000
Entry Point: 8020aa00
Uncompressing Kernel Image ... OK
No initrd
## Transferring control to Linux (at address 8020aa00) ...
## Giving linux memsize in bytes, 67108864
Starting kernel ...
Booting AR7240(Python)...
Linux version 2.6.31--LSDK-9.2.0.106 (jenkins@dev-build1.melco.local) (gcc version 4.3.3 (GCC) ) #1 Tue Dec 29 13:24:22 JST 2015
flash_size passed from bootloader = 32
arg 1: console=ttyS0,115200
arg 2: root=31:03
arg 3: rootfstype=jffs2
arg 4: init=/sbin/init
arg 5: mtdparts=ar7240-nor0:256k(u-boot),64k(u-boot-env),1152k@384k(uImage),6592k@1536k(rootfs),64k@320k(ART),64k@8128k(properties),8192k@8192k(flash1),16384k@16384k(flash2)
arg 6: mem=64M
です、長文すいません、お願いします シリアルコンソールいらんな。
1.web設定画面から、wzr_hp_g450h-factory-to-ddwrt.binをファームのアップデート
で更新
2.PCでwebサーバを動かし、document_rootにopenwrt-ar71xx-generic-wzr-hp-g450h-squashfs-sysupgrade.bin
を置く
3.ddwrtになったら、sshでddwrtにログイン
4.cd /tmp ;wget http://PCのIP/openwrt-ar71xx-generic-wzr-hp-g450h-squashfs-sysupgrade.bin
5.sysupgrade openwrt-ar71xx-generic-wzr-hp-g450h-squashfs-sysupgrade.bin
6.sshでopenwrtにログイン >>50
-R は中継専用
-A は無印の(ルーター/AP/中継だっけ?の)切替スイッチを無くして設定画面上で設定するタイプ
実際やってみたんだがWAN側MACアドレスがダメだった
MACアドレス調べたら >49
フラッシュの書き換え方法は分かった WN-AX2033GRについてですが、OpenWrt(Snapshot)への書き換えに成功しました
この機種は
・U-Bootのコマンドモードに入れない
・ZyXEL Z-LOADER
・rootにパスワードが設定されている(シリアル接続でのシェルアクセス不可)
という面倒な仕様になっています
U-Bootに関してはTP-Linkにおけるtplのようなものがあるかもしれませんが、現時点では不明です
書き換えにはZ-LOADERを使用しました
WebUI経由での書き換えは未検証です >>52
詳細なレスサンクスです
ただ、1の手順は実はやってるんですが、「ファームウェアデータが正しくありません。再起動します。 」になってしまいます
何かまずいんですかね?古めのファームも数件試しましたが、変わらずでした >>55
そもそもこの手順をやってるんですよね?
https://www57.atwiki.jp/ddwrt_openwrt/pages/23.html
bootlogを確認できているということは
内部のシリアルポートにアクセスされている、ということで良いですかね
No initrd が気になるけど、これって他のも表示されてますっけ? >他のオーナーの方々 >>54
凸乙!
使ったimageファイル名とかOpenWrt snapshotのリビジョンとか
もう少し詳細な情報が欲しいです
あとz-loaderを使ったインストール方法について
日本語ではあまり記事を見たことがないので
具体的手順を教えていただけると大変ありがたいです。 ■ このスレッドは過去ログ倉庫に格納されています