Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
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
120
OSC2019-TokyoFall_OpenWrt-and-Monitoring
musashino205
0
180
tokaido-lug-201909-yokohama
musashino205
0
130
OSC 2019 Tokyo/Spring Aterm & OpenWrt
musashino205
0
1k
OSC 2018 Tokyo/Fall OpenWrt
musashino205
0
430
tokaido-lug_201807-yokohama
musashino205
0
500
OSC2018-Tokyo/Spring_OpenWrt
musashino205
0
330
TokaidoLUG-201712_Router
musashino205
0
360
Other Decks in Technology
See All in Technology
Snowflakeで実現する全社横断の顧客の声(VOC)分析・活用基盤@Snowflake World Tour Tokyo 2026
yuto16
0
120
作り直せるコードは迅速に 作り直せないDBは慎重に - AI時代のプロダクトエンジニアが「判断の不可逆性」で開発速度を変える話
kinosuke01
0
280
リージョンの壁を越える、 ちょっと変わったAWSサービスの話
falken
PRO
1
290
2026-09-04 SRE Tech Talk #15 怠惰なTerraform / Lazy Terraform
masasuzu
0
230
Driving AI Adoption Using In-House GPUs to Serve Qwen
po3rin
2
470
目の前の楽しいが人生を変える - コミュニティの螺旋の歩き方と楽しむコツ / change your life
soudai
PRO
3
180
TinyGo 開発サイクルを高速化する:Go で作るエミュレータ入門
zozotech
PRO
1
130
コスト最適化の「めんどくさい」を AWS FinOps Agent でチョット楽にする
classmethod_kaz
0
280
KPIだけでは評価できないプロダクトが考えるべき Evalsという第二の評価系 / Beyond KPIs: Evals as a Second Evaluation Framework for Products #PdEConf
aki_iinuma
4
3.8k
AIで開発は速くなったのに、なぜ現場は楽にならないのか 〜あなたの組織のボトルネックを突き止めるワークショップ〜
jacopen
1
300
AI活用の現在地、 ちゃんと見えてますか?/XPfest-2026
visional_engineering_and_design
0
170
V8コントリビュート超入門
riyaamemiya
0
160
Featured
See All Featured
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
320
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
202
76k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
680
Bash Introduction
62gerente
615
220k
Music & Morning Musume
bryan
47
7.4k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Crafting Experiences
bethany
1
310
Mind Mapping
helmedeiros
1
350
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Accessibility Awareness
sabderemane
1
200
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
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で無効にしても変わらず • 要検証 • 原因を特定できず作業が行き詰まり • ヘルプミー!!!!!
おわり