Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
tokaido-lug-201812-yokohama
Search
musashino205
December 15, 2018
Technology
350
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
tokaido-lug-201812-yokohama
musashino205
December 15, 2018
More Decks by musashino205
See All by musashino205
OSC2025_Tokyo-Fall_RecentOpenWrt
musashino205
0
110
OSC2019-TokyoFall_OpenWrt-and-Monitoring
musashino205
0
180
tokaido-lug-201909-yokohama
musashino205
0
130
OSC 2019 Tokyo/Spring Aterm & OpenWrt
musashino205
0
990
OSC 2018 Tokyo/Fall OpenWrt
musashino205
0
420
tokaido-lug_201807-yokohama
musashino205
0
500
OSC2018-Tokyo/Spring_OpenWrt
musashino205
0
330
TokaidoLUG-201712_Router
musashino205
0
350
Other Decks in Technology
See All in Technology
AI時代の開発生産性は、個人技からチーム設計へ
moongift
PRO
4
2.5k
VPCセキュリティ対応の最新事情
nagisa53
1
240
複数プロダクトで進めるAI機能実装 ── 実践から得たリアルな学びとロードマップ実現への挑戦 / AICon2026_yanari
rakus_dev
1
270
なぜ、あなたのAPIは使われないのか? AX時代の設計原則、ガードレール、運用体制
yokawasa
1
210
大量データに対しても、生成AIを用いてリーズナブルにデータ加工をしたい!Databricksのai_queryについて調べてみた
kamoshika
1
280
Playwright × AI Agent でE2Eテストはどう変わるか AI駆動テストの可能性と実用検証の結果
taiga7543
2
790
Type-safe IaC for Dart
coborinai
0
180
人とエージェントが高め合う協業設計
kintotechdev
0
750
AIとハーネスで育てるトランスコンパイラ / 20260722 Yasushi Katayama
shift_evolve
PRO
3
770
OPENLOGI Company Profile for engineer
hr01
1
74k
_NIKKEI_Tech_Talk__勉強会は熱量では続かない___17回続いた輪読会の設計術.pdf
_awache
1
100
Amplify Gen2でbackend.tsにCDKを定義する/しない事によるCDKの挙動の違いとユースケース
smt7174
1
490
Featured
See All Featured
Thoughts on Productivity
jonyablonski
76
5.3k
GraphQLとの向き合い方2022年版
quramy
50
15k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
220
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.4k
Unsuck your backbone
ammeep
672
58k
A designer walks into a library…
pauljervisheath
211
24k
Into the Great Unknown - MozCon
thekraken
41
2.6k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
380
Color Theory Basics | Prateek | Gurzu
gurzu
0
390
Music & Morning Musume
bryan
47
7.3k
The browser strikes back
jonoalderson
0
1.4k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
560
Transcript
近況まとめ 東海道らぐ 横浜 2018冬 @musashino205
自己紹介 • HN: 武蔵野, 大破 • musashino_205 • musashino205 @mstdn.maud.io
• 続きはWebで: taiha.net, 大破.net
OpenWrtとは • ルータ等の組込デバイス向けLinuxディストリビューション • 見方を変えると → 組込Linux開発環境 • サポート済み各SoCに最適化されたLinuxイメージの生成 •
組込デバイスに特化したユーティリティ類 • dnsmasq, dropbear, busybox, ... • デバイス用ファームウェア生成ツール類 Linuxカーネルからファームウェアまで スライド: https://speakerdeck.com/musashino205/fall-openwrt
法律関係 • 市販ルータ(技適取得済み)へのサードパーティファームウェア導 入は “改造” に該当する可能性がある • 技適認証が無効扱いになる • OpenWrt等サードパーティファームウェアをインストールする場合、
電波は原則として出力しない • Raspberry Pi等は例外 法律を守って楽しいhackを。
近況
近況 • 機種のサポート追加(初夏の横浜以降(2018.08~)) • マージ済み • BUFFALO • BHR-4GRV (2011.08上旬
– ?(販売終了)) • BHR-4GRV2* (2014.06上旬 – ) • WZR-HP-G302H (2010.12上旬 – ?(販売終了)) • I-O DATA • ETG3-R (2013.03下旬 – 2018.03.07) • WN-AG300DGR (2012.8下旬 – 2013.11.13) • WN-AC1167DGR (2013.09中旬 – 2014.12/24) • WN-AC1600DGR2 (2014.03中旬 – 2014.10.01) • ELECOM • WRC-300GHBK2-I (2015.07下旬 – ?(販売終了)) * : ar71xx -> ath79移植
近況 • 機種のサポート追加(続き) • 作業中 • BUFFALO • WXR-2533DHP (2015.06中旬
– ?(販売終了)) • I-O DATA • WN-AC1167GR (2014.10下旬 – 2018.02.14) • WN-AC1600DGR (2013.06中旬 – 2014.07.16) • ELECOM • WRC-733GHBK (2013.10下旬 – ?(販売終了)) • WRC-1750GHBK2-I/C (2015.01中旬 – ?(販売終了)) • NEC • WG800HP (2016.04.14 – ?(販売終了)) • stock firmware → OpenWrtベース • 作業中(特別挑戦枠) • NEC • WR8750N (2012.01中旬 – ?(販売終了)) • NetBSD機
NEC Aterm WR8750N
NEC Aterm WR8750N • ハードウェア仕様 • SoC: Atheros AR9344 (1C1T,
560MHz) • RAM: 128 MB (DDR2 64MB x2) • Flash: 8 MB (SPI-NOR) • Ethernet: 1000 Mbps x5 • Switch: Atheros AR8327 • USB: USB 2.0 Type-A x1 • ソフトウェア仕様 • Bootloader: 不明(オリジナル?) • OS: NetBSD • Baudrate: 9600 bps ハードウェアは(RAMだいぶ多いけど)至って普通、ソフトウェアは(民生 用としては)異色
NEC Aterm WR8750N • 元々NECのNetBSD機は避けていた • Linuxをブートできなさそう • 色々めんどくさそう •
が。 • SoCが古すぎない, GbE機, ...などの条件の機種が尽きてきた • まだ多少あるけど • AR9342 / AR9344はまだまだ使えるので興味が湧いた • USBポートあるし使い勝手良さそう • NetBSDブートできるならLinuxだってブートできるやろ(←???????? • NEC機は似たソフトウェア構成の機種が多い • この機種サポートできれば他機種もワンチャン
NEC Aterm WR8750N • レッツトライ • BootloaderとKernelにパスワードが掛けられている • Bootloaderは5chにヒント有 •
TFTPで流し込むことはできそう • tftpd コマンドでTFTP待ち受け、クライアントからTFTP PUT • OpenWrtのinitramfs (Kernel + ramfs Root) ファームで試行 できそう
NEC Aterm WR8750N • Bootloaderコマンド類(主要なもの) • boot: Load済みイメージをブート • tftpd:
TFTPサーバ開始 • debug: 各種デバッグコマンド • debug memory: メモリ系デバッグコマンド • debug memory read 0xb805002c 1 • 0xb805002cから1word(32bit)読み出し • debug flash: Flash系デバッグコマンド • debug flash info • Flash情報表示 • debug flash read 0xbf000000 100 • 0xbf000000から100byte読み出し
NEC Aterm WR8750N • 進捗 • gzip-compressedなOpenWrtのLinux Kernelを開始すること はできた
start tftp load openwrt-ath79-tiny-nec_wr8750n-i end tftp load length = 3583343
start memory load ... memory load complete begin : 0x80060000 length : 3583319 startup: 0x80060000 boot begin : 0x80060000 length : 3583319 startup: 0x80060000 option: 0x0 [ 0.000000] Linux version 4.14.87 (tofu@tofu-z77hvub18_openwrt) (gcc version 7.3.0 (OpenWrt GCC 7.3.0 r8695-1eb39ece8d)) #0 Tue Dec 11 13:11:03 2018 [ 0.000000] bootconsole [early0] enabled [ 0.000000] CPU0 revision is: 0001974c (MIPS 74Kc) [ 0.000000] MIPS: machine is NEC Aterm WR8750N [ 0.000000] SoC: Atheros AR9344 rev 1 [ 0.000000] Determined physical RAM map: [ 0.000000] memory: 08000000 @ 00000000 (usable) [ 0.000000] Initrd not found or empty - disabling initrd [ 0.000000] Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes. [ 0.000000] Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32 bytes [ 0.000000] Zone ranges: [ 0.000000] Normal [mem 0x0000000000000000-0x0000000007ffffff] [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x0000000000000000-0x0000000007ffffff] [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x0000000007ffffff] [ 0.000000] random: get_random_bytes called from 0x8045772c with crng_init=0 ...
NEC Aterm WR8750N • 進捗 • gzip-compressedなOpenWrtのLinux Kernelを開始すること はできた •
お!?!?!?
NEC Aterm WR8750N • 進捗 • gzip-compressedなOpenWrtのLinux Kernelを開始すること はできた •
お!?!?!? • が。
[ 1.048781] TCP bind hash table entries: 1024 (order: 0,
4096 bytes) [ 1.124770] TCP: Hash tables configured (established 1024 bind 1024) [ 1.200908] UDP hash table entries: 256 (order: 0, 4096 bytes) [ 1.270713] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes) [ 1.345915] NET: Registered protocol family 1 [ 1.511715] Crashlog allocated RAM at address 0x3f00000 [ 1.575637] workingset: timestamp_bits=30 max_order=15 bucket_order=0 [ 1.657573] squashfs: version 4.0 (2009/01/31) Phillip Lougher [ 1.727362] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc. [ IPL:SOFT-RESET memory test ... ok flinistall OK boot version: 1.0.0 PKG “Orthos-HP” CPU “Atheros/AR9344” Revision 212.1 CLOCK 560.0 MHz HEAP MEMORY 262144 bytes Boot: InitFilesystem phy0.1: “Atheros/AR8327(SW)” phy0.0: “Atheros/AR8327(phy)” active ch:0 now booting Firmware ... loaded Firmware ... (以降FlashからNetBSDのブート)
NEC Aterm WR8750N • 進捗 • gzip-compressedなOpenWrtのLinux Kernelを開始すること はできた •
お!?!?!? • が。 • ブートが途中で中断され、soft-resetが掛かって再起動されてし まう • この原因は不明 • 複数の方より 「watchdog timer (wdt) では」 という指摘 • DTSで無効にしても変わらず • 要検証 • 原因を特定できず作業が行き詰まり • ヘルプミー!!!!!
おわり