Hatena::ブログ(Diary)

kinneko@転職先募集中の日記

検索エンジンから来た方へ: 申し訳ないですが、日記なので日々積み重なっています。
目的の情報にたどり着くには、右の検索窓から日記内を再検索してください。
北陸エリア内(もしくはエリア外でも)で転職先を探しています。
(マジです。ネタではありません。ホントですって...)
詳細履歴書をご希望の方はメールでご連絡下さいませ。(kinneko at gmail.com)
chromeで見ると、死ぬほど出るGoogleの広告がブロックできないので、
firefoxでABPを入れるとすっきり見られます。

2016-12-31

イベント備忘録:

12/06-07: 合宿(延期)

12/15: 技術書典2 出展募集

12/24: mbed祭り 2016@クリスマスイブの金沢 https://mbed.doorkeeper.jp/events/53242

02/12: OSC2017 Hamanako http://www.ospn.jp/osc2017-hamanako/ ?

02/25: 金沢ITフェスティバル

03/09-10: (木/金) DroidKaigi 2017 https://droidkaigi.github.io/2017/ エントリはした->落選

04/09: 技術書典2 @アキバスクエア

08/05-06: Maker Faire Tokyo 2017


【済】

01/06: レーザーカッター届く

01/07: Rift予約開始!買えないけどなー

01/23: 熊本支部 Unityを使ったVR(バーチャルリアリティー)アプリ作成入門 https://sites.google.com/site/jagkumamoto/huo-dong-ji-lu/2016-01-23

02/20: Ocufes Final http://www.ocufes.jp/2016/01/2373/

02/21: 上モノラボ http://uemonolab.hanalab.co/

02/27-28: よこはま大さん橋フェスタ http://pierfes.com/

03/12: ABC2016S 青山学院大学(青山キャンパス)

03/13: HTC Viveで遊ぼうぜ!@meleap https://atnd.org/events/75637

03/14: クラウド合同セミナー in 金沢 http://connpass.com/event/25569/

03/18-19: 40周年記念 (あえの風)

04/09-10: フラッシュモブ型NT金沢花見

04/15-: NT金沢2016/MFT2016ワークショップ - C60バッキーボール・キットを作りたい - https://motion-gallery.net/projects/c60hanson 開始

05/14: UNREAL FEST 2016 OSAKA https://atnd.org/events/76761 行けず

05/16: NT金沢2016/MFT2016ワークショップ - C60バッキーボール・キットを作りたい - https://motion-gallery.net/projects/c60hanson 終了

05/18-20: OPIE'2016 http://www.opie.jp/le/index.php パシフィコ横浜

05/18-19: 深夜? JAG5月定例会?ボツ

05/21-22: JAG運営委員会総会@幕張

05/25-27: Wireless Japan 2015 http://www8.ric.co.jp/expo/wj/ 展示・講演

05/26: VR Tech Tokyo #1 http://vrtokyo.connpass.com/event/30849/ LT登壇予定

06/08-10: Interop Tokyo (Apps Japan) http://www.interop.jp/

06/15: JAG I/O報告会。daydreamの話をせよとのこと。

06/25: 技術書典 A-08 https://techbookfest.github.io/

07/16-18: NT金沢2016 http://wiki.nicotech.jp/nico_tech/index.php?NT%E9%87%91%E6%B2%A22016

08/06-07: MFT2016 http://makezine.jp/event/mft2016/

08/24-26: CEDEC 2016 http://cedec.cesa.or.jp/2016/

09/11: Elastic勉強会 in Kanazawa http://connpass.com/event/38656/

10/01: UNREAL FEST 2016 YOKOHAMA https://atnd.org/events/81132 行けず

10/09: DevFest Tokyo 2016 http://gdg-tokyo.connpass.com/event/38927 講演は学生部になったので行かず

10/29: JapanVR Fest開発者会 皆の10分を繋げてVRの未来を作る

https://atnd.org/events/81446 http://jvr-fest.com/2016/09/2882/

11/27: DevFest Kansai 2016 - connpass http://devfestkansai.connpass.com/event/40556/ 公募枠エントリ http://devfestkansai.connpass.com/event/40623/

11/30: 人間ドック

11/19: ABC2016 (柏の葉キャンパス)10/21から延期 http://abc.android-group.jp/2016a/ 行かず

2016-12-08

SDにLinuxシステム展開する環境がなかったのでRaspiを使うことにした

OpenWRTのテストを終わったRaspi1。

そのまま引退かと思われたが、こういう手軽な用途にはいいかな?

セットアップしとくか。


OpenWRTのイメージは結構便利なのだけど、サイズが50MB未満で、SDに書き込むためのイメージを入れる場所がない。

パーティション拡張しても、512MのSDカードではGB単位の最近のイメージファイルを置くことは無理だ。

OpenWRTのイメージは、小さくて何かと便利なので、そのまま残すことにする。


手元にSDはいっぱいあるのだけど、何か書かれているのかわからないものも多い。

小さいからメモしようもないんだよね。

昔は、SD用の小さい樹脂の袋がついていて、それにシール貼って書いたりできたのだけど、この頃はそういうこともないから管理が面倒だわ。

それで、ついつい新しいものを出して使ってしまうのだけど、今回のような用途なら4-8GBのものがよさげなので、古いSDの中を見ようと... 思ったのだけど、見る環境すらない。

Raspi1 OpenWRTの環境をネットにつないで、opkg install fdiskして使えそうなSDカードを選別した。

4GBのSDがあったので、これを使うことにした。


さて、Raspbian環境だけど、イメージを落として来た。

コンソールだけ動けばよくて、PIXCELはいらないので、LITE版を選ぶ。

http://director.downloads.raspberrypi.org/raspbian_lite/images/raspbian_lite-2016-11-29/2016-11-25-raspbian-jessie-lite.zip

7zipで圧縮されているということで、Mac環境での作業にUnarchiverも落として来る。

http://wakaba.c3.cx/releases/TheUnarchiver/TheUnarchiver3.11.1.zip

zipを展開して、imgファイルを得る。


Macではパーティションの拡張ができないので、とりあえずそのまま書くだけ。

$ sudo dd if=~/Downloads/Raspbian/2016-11-25-raspbian-jessie-lite.img of=/dev/rdisk4
2715648+0 records in
2715648+0 records out
1390411776 bytes transferred in 3274.727099 secs (424589 bytes/sec)

Raspbian自身でパーティションの拡張ができるようなので、それでやる。

できたSDを差し込んで起動。

起動時に勝手にリサイズして、リブートしやがった...

やるじゃん。


コンソール出たけど、ログインアカウントは何なんだ?

ユーザー名:pi

パスワード:raspberry

これは、前から変わらないのね。


リモート接続は、sshが動いているそうだけど...

コンソールで、ifconfigを叩いて、割り当たったIPアドレスでsshを叩いたけどダメ。

$ ssh pi@192.168.51.90
ssh: connect to host 192.168.51.90 port 22: Connection refused

動いてないんじゃない?

コンソールで確認。

pi@raspberrypi:~ $ sudo systemctl status ssh
● ssh.service - OpenBSD Secure Shell server
   Loaded: loaded (/lib/systemd/system/ssh.service; disabled)
   Active: inactive (dead)

動いていない。

動かす。

pi@raspberrypi:~ $ sudo systemctl enable ssh
Synchronizing state for ssh.service with sysvinit using update-rc.d...
Executing /usr/sbin/update-rc.d ssh defaults
insserv: warning: current start runlevel(s) (empty) of script `ssh' overrides LSB defaults (2 3 4 5).
insserv: warning: current stop runlevel(s) (2 3 4 5) of script `ssh' overrides LSB defaults (empty).
Executing /usr/sbin/update-rc.d ssh enable
Created symlink from /etc/systemd/system/sshd.service to /lib/systemd/system/ssh.service.
pi@raspberrypi:~ $ sudo systemctl start ssh

リモートから接続。

$ ssh pi@192.168.51.90
The authenticity of host '192.168.51.90 (192.168.51.90)' can't be established.
RSA key fingerprint is 53:f9:57:3d:b5:43:7f:b7:01:9b:8b:7a:5e:4d:b2:0f.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.51.90' (RSA) to the list of known hosts.
pi@192.168.51.90's password:

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Fri Nov 25 18:03:15 2016

SSH is enabled and the default password for the 'pi' user has not been changed.
This is a security risk - please login as the 'pi' user and type 'passwd' to set a new password.

pi@raspberrypi:~ $

できた。LITEはだいぶ勝手が違うらしい。



おしまい。

2016-12-07

DHCPでアナウンスするDNS情報を設定できる無線ルーターを探す

諸般の事情で探してみた。

昔のルーターはたいてい持っていた機能だと思うのだけど、今は標準ではないというのがよくわかった。動作確認工数の削減で単純化されたのか、OEM先の都合でなくなっているのか。

しかし、日本の家庭用無線ルーターは結構ダメな感じで残念でした。

A. 不明

NEC Aterm

WF800HP

http://www.aterm.jp/function/wf800hp/guide/model/wf800hp/list/m01_t.html

I-O DATA

WNPR1167G   NEW   オープン価格

http://www.iodata.jp/lib/manual/pdf2/wnpr1167g_m-manu201601.pdf


B. 機能ナシ

YAMAHA

WLX202 39,800円

http://www.rtpro.yamaha.co.jp/RT/manual/wlx202/Operation.pdf

WLX302 オープン価格

http://www.rtpro.yamaha.co.jp/RT/manual/wlx302/Users.pdf

Buffalo

WMR-433Wシリーズ 2,210円

http://manual.buffalo.jp/buf-doc/35020963-01.pdf 

Planex

MZK-DP150N オープンプライス

http://www.planex.co.jp/support/download/mzk-dp150n/pdf/MZK-DP150N_QIG_A-V1b.pdf

MZK-UE450AC 4,980円

http://www.planex.co.jp/support/download/mzk-ue450ac/pdf/MZK-UE450AC_QIG_A-V2.pdf

MZK-1200DHP2 オープンプライス

http://www.planex.co.jp/support/download/mzk-1200dhp2/pdf/MZK-1200DHP2_Manual_V1.pdf

DB-WRT01 オープンプライス

http://www.planex.co.jp/support/download/db-wrt01/pdf/DB-WRT01_Manual_V1.pdf

MZK-MF300HP2 オープンプライス

http://www.planex.co.jp/support/download/mzk-mf300hp2/pdf/MZK-MF300HP2_Manual_V1.pdf

MZK-MF300N3 オープンプライス

http://www.planex.co.jp/support/download/mzk-mf300n3/pdf/MZK-MF300N3_Manual_V1.pdf


C. WAN設定でIPアドレスを固定であれば、DNSの指定が可能

NEC Aterm

WG2600HP2

http://www.aterm.jp/function/wg2600hp2/guide/internet_router.html

WG800HP

http://www.aterm.jp/function/wg800hp/guide/internet_router.html

I-O DATA

WN-AX2033GR 13,100円

http://www.iodata.jp/lib/manual/wn-ax2033gr/index.html#p4_1

WN-AC1600DGR3     ¥11,700

http://www.iodata.jp/lib/manual/wn-ac1600dgr3/basic/reference03.htm

WN-AX1167GR     ¥8,900

http://www.iodata.jp/lib/manual/wn-ax1167gr/index.html#p5_01

WN-AC1167R     ¥6,600

http://www.iodata.jp/lib/manual/wn-ac1167r/index.html#p4_1 画像間違いあり

WN-GX300GR     ¥7,200

http://www.iodata.jp/lib/manual/wn-gx300gr/index.html#p5_01

WN-G300R3     ¥3,600

http://www.iodata.jp/lib/manual/pdf2/wn-g300r3.pdf P83

WNPR2600G   NEW   オープン価格

http://www.iodata.jp/lib/manual/wnpr1167f_wnpr1750g_wnpr2600g/index.html#p4_1

WNPR1750G   NEW   オープン価格

http://www.iodata.jp/lib/manual/wnpr1167f_wnpr1750g_wnpr2600g/index.html#p4_1

WNPR1167F   NEW   オープン価格

http://www.iodata.jp/lib/manual/wnpr1167f_wnpr1750g_wnpr2600g/index.html#p5_3


D. WAN設定でDNSを指定することが可能

Buffalo

WXR-2533DHP2 27,700円

http://manual.buffalo.jp/buf-doc/35021105-04.pdf P24

WXR-1900DHP2 19,900円

http://manual.buffalo.jp/buf-doc/35021036-03.pdf P29

WSR-2533DHP 16,500円

http://manual.buffalo.jp/buf-doc/35021206-01.pdf P23

WXR-1750DHP 16,500円

http://manual.buffalo.jp/buf-doc/35020946-04.pdf P29

WSR-1166DHP2 10,000円

http://manual.buffalo.jp/buf-doc/35020918-03.pdf P23

WHR-1166DHP3 7,800円

http://manual.buffalo.jp/buf-doc/35021114-02.pdf P20

WSR-600DHP 6,600円

http://manual.buffalo.jp/buf-doc/35020659-05.pdf P26

WCR-1166DS 5,500円

http://manual.buffalo.jp/buf-doc/35021082-02.pdf P18

WSR-300HP 4,300円

http://manual.buffalo.jp/buf-doc/35020750-05.pdf P31

NEC Aterm

WG2200HP

http://www.aterm.jp/function/wg2200hp/guide/internet_router.html

WG1800HP2

http://www.aterm.jp/function/wg1800hp2/guide/internet_router.html

WG1200HP

http://www.aterm.jp/function/wg1200hp/guide/internet_router.html

WG1200HS

http://www.aterm.jp/function/wg1200hs/guide/internet_router.html

WF1200HP2

http://www.aterm.jp/function/wf1200hp2/guide/internet_router.html

ELECOM

WRC-2533GHBK-I 17,810円

http://www.elecom.co.jp/support/manual/network/wireless-lan/router/wrc-2533ghbk-i/wrc-2533ghbk-i_manual_v02.pdf P73

WRC-1900GHBK-S 15,400円

WRC-1467GHBK-S 11,540円

WRC-1167GHBK-S 7,690円

WRC-1167FEBK-S 6,400円

WRC-300FEBK-S 4,220円

http://www.elecom.co.jp/support/manual/network/wireless-lan/router/wrc-300febk-s/wrc-300febk-s_users_manual_v1.pdf P100

2016-12-06

[] LuCIを日本語表示に切り替える

15.05.1のx86イメージを展開した環境での作業。

OpenWRTは、日本語の情報が少ないので、メッセージ類は英語のままのほうがいいんだけど、直感的に理解して、間違いを少なくできる日本語もありがたい。LuCIを日本語表示に切り替えてみる。


設定の変更は、System-Systemに"Language and Style"タブがある。

しかしLanguage auto以外は選べない。

root@OpenWrt:/# uci show | grep lang
luci.main.lang='auto'
luci.languages=internal

ググるとluci-i18n-japaneseパッケージを入れろと出てくることが多いのだけど、そんなパッケージは存在しない。

root@OpenWrt:/# opkg list | grep luci-i18n-japanese

どうやら、ページごとに言語モジュールが適用されるようになってる感じ。

root@OpenWrt:/# opkg list | grep luci | grep ja
luci-i18n-ahcp-ja - git-16.018.33482-3201903-1 - Translation for luci-app-ahcp - 日本語 (Japanese)
luci-i18n-asterisk-ja - git-16.018.33482-3201903-1 - Translation for luci-app-asterisk - 日本語 (Japanese)
luci-i18n-base-ja - git-16.018.33482-3201903-1 - Translation for luci-base - 日本語 (Japanese)
luci-i18n-commands-ja - git-16.018.33482-3201903-1 - Translation for luci-app-commands - 日本語 (Japanese)
luci-i18n-ddns-ja - 2.2.4-1 - Translation for luci-app-ddns - 日本語 (Japanese)
luci-i18n-diag-core-ja - git-16.018.33482-3201903-1 - Translation for luci-app-diag-core - 日本語 (Japanese)
luci-i18n-firewall-ja - git-16.018.33482-3201903-1 - Translation for luci-app-firewall - 日本語 (Japanese)
luci-i18n-freifunk-ja - git-16.018.33482-3201903-1 - Translation for luci-mod-freifunk - 日本語 (Japanese)
luci-i18n-freifunk-policyrouting-ja - git-16.018.33482-3201903-1 - Translation for luci-app-freifunk-policyrouting - 日本語 (Japanese)
luci-i18n-hd-idle-ja - git-16.018.33482-3201903-1 - Translation for luci-app-hd-idle - 日本語 (Japanese)
luci-i18n-meshwizard-ja - git-16.018.33482-3201903-1 - Translation for luci-app-meshwizard - 日本語 (Japanese)
luci-i18n-minidlna-ja - git-16.018.33482-3201903-1 - Translation for luci-app-minidlna - 日本語 (Japanese)
luci-i18n-mmc-over-gpio-ja - git-16.018.33482-3201903-1 - Translation for luci-app-mmc-over-gpio - 日本語 (Japanese)
luci-i18n-multiwan-ja - git-16.018.33482-3201903-1 - Translation for luci-app-multiwan - 日本語 (Japanese)
luci-i18n-ntpc-ja - git-16.018.33482-3201903-1 - Translation for luci-app-ntpc - 日本語 (Japanese)
luci-i18n-olsr-ja - git-16.018.33482-3201903-1 - Translation for luci-app-olsr - 日本語 (Japanese)
luci-i18n-openvpn-ja - git-16.018.33482-3201903-1 - Translation for luci-app-openvpn - 日本語 (Japanese)
luci-i18n-p2pblock-ja - git-16.018.33482-3201903-1 - Translation for luci-app-p2pblock - 日本語 (Japanese)
luci-i18n-p910nd-ja - git-16.018.33482-3201903-1 - Translation for luci-app-p910nd - 日本語 (Japanese)
luci-i18n-pbx-ja - git-16.018.33482-3201903-1 - Translation for luci-app-pbx - 日本語 (Japanese)
luci-i18n-pbx-voicemail-ja - git-16.018.33482-3201903-1 - Translation for luci-app-pbx-voicemail - 日本語 (Japanese)
luci-i18n-polipo-ja - git-16.018.33482-3201903-1 - Translation for luci-app-polipo - 日本語 (Japanese)
luci-i18n-qos-ja - git-16.018.33482-3201903-1 - Translation for luci-app-qos - 日本語 (Japanese)
luci-i18n-radvd-ja - git-16.018.33482-3201903-1 - Translation for luci-app-radvd - 日本語 (Japanese)
luci-i18n-samba-ja - git-16.018.33482-3201903-1 - Translation for luci-app-samba - 日本語 (Japanese)
luci-i18n-splash-ja - git-16.018.33482-3201903-1 - Translation for luci-app-splash - 日本語 (Japanese)
luci-i18n-statistics-ja - git-16.018.33482-3201903-1 - Translation for luci-app-statistics - 日本語 (Japanese)
luci-i18n-tinyproxy-ja - git-16.018.33482-3201903-1 - Translation for luci-app-tinyproxy - 日本語 (Japanese)
luci-i18n-transmission-ja - git-16.018.33482-3201903-1 - Translation for luci-app-transmission - 日本語 (Japanese)
luci-i18n-upnp-ja - git-16.018.33482-3201903-1 - Translation for luci-app-upnp - 日本語 (Japanese)
luci-i18n-vnstat-ja - git-16.018.33482-3201903-1 - Translation for luci-app-vnstat - 日本語 (Japanese)
luci-i18n-voice-core-ja - git-16.018.33482-3201903-1 - Translation for luci-app-voice-core - 日本語 (Japanese)
luci-i18n-watchcat-ja - git-16.018.33482-3201903-1 - Translation for luci-app-watchcat - 日本語 (Japanese)
luci-i18n-wol-ja - git-16.018.33482-3201903-1 - Translation for luci-app-wol - 日本語 (Japanese)
luci-i18n-wshaper-ja - git-16.018.33482-3201903-1 - Translation for luci-app-wshaper - 日本語 (Japanese)

デフォルト環境に適用するのは"luci-i18n-base-ja"かな。


インストールする。

root@OpenWrt:/# opkg install luci-i18n-base-ja
Installing luci-i18n-base-ja (git-16.018.33482-3201903-1) to root...
Downloading http://downloads.openwrt.org/chaos_calmer/15.05.1/x86/64/packages/luci/luci-i18n-base-ja_git-16.018.33482-3201903-1_all.ipk.
Configuring luci-i18n-base-ja.

System-Systemの"Language and Style"タブで、auto以外に日本語の選択が出てきた。

設定して、Save&Applyボタンを押すと反映された。

2016-12-05

[] OpenWRTをRasPiで作る(うまくいったけどUSB-NICが不安定で実用にならない)

特殊な設定を適用したNATルーターが必要になった。

といっても、DHCPでアナウンスするDNS情報を上流から来ている情報と違うものを流すだけなんだけど。

調べてみると、近頃の市販のルーターが細かい設定できずにヘタレすぎるので、一台作ることにする。

手元に前にタダでもらったRasPi1があるので、これで。

もらってから、まったく使ってなかったのだけど、ケース付きで新品でもらったので何かに使わないと忍びない。

裏のシールには、1.0B1.1と書いてある。


NATルーターなので、Raspianをチマチマ設定するより、OpenWRTだろということで対応イメージがあるか本家を見てみる。

なくても、ARMなのでビルドはできるっしょ。

https://wiki.openwrt.org/toh/raspberry_pi_foundation/raspberry_pi

あるな。

Raspberry Pi 1: http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm2708/bcm2708/

落とす。

http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm2708/bcm2708/openwrt-15.05.1-brcm2708-bcm2708-sdcard-vfat-ext4.img.gz

sha256sumsも落として内容を確認する。

SHA256(config.diff)= be2898d15e47b23811b4ac14e8c11884b7efc7955e74bd5f78259141800eb1a4

SHA256(kernel-debug.tar.bz2)= 2bdba742bd26a883452b946b6ad179302346d3c441d3359628374a0f2befd83a

SHA256(openwrt-15.05.1-brcm2708-bcm2708-ext4.img)= 035779c6275fbc7bc04588efddfa66ef96dac60ce6b15ba059adccac1b89c8ed

SHA256(openwrt-15.05.1-brcm2708-bcm2708-Image)= 5582c64b9699ca528580b3f0a2b651fb915a67014126c97bc3662b093b1965d3

SHA256(openwrt-15.05.1-brcm2708-bcm2708-sdcard-vfat-ext4.img)= 13477fde473294a410512f173f1cfe181500bcac070ed29ee285c7f0c398dd80

SHA256(openwrt-15.05.1-brcm2708-bcm2708-sdcard-vfat-ext4.img.gz)= d7433d9e301716c64ef018fe595cc0cc62acebc731fe29c229f30ebb02cca804

SHA256(OpenWrt-ImageBuilder-15.05.1-brcm2708-bcm2708.Linux-x86_64.tar.bz2)= b7a5c0722383b407300dca27b3e74a4305c9f4434502617712e8948a93c2ce77

SHA256(OpenWrt-SDK-15.05.1-brcm2708-bcm2708_gcc-4.8-linaro_uClibc-0.9.33.2_eabi.Linux-x86_64.tar.bz2)= 88d867ea5da428bb5ea1c2a4bb3d7ddba7315ac68785e6470577a3517d226a50

$ shasum -a 256 openwrt-15.05.1-brcm2708-bcm2708-sdcard-vfat-ext4.img.gz
d7433d9e301716c64ef018fe595cc0cc62acebc731fe29c229f30ebb02cca804  openwrt-15.05.1-brcm2708-bcm2708-sdcard-vfat-ext4.img.gz

一致する。問題なし。

タイムスタンプは、15-Mar-2016 17:51なので、そんなに古いというわけでもない。

プロジェクトの正式リリースでは最新バージョンになる感じ。

展開する。

$ gzip -d openwrt-15.05.1-brcm2708-bcm2708-sdcard-vfat-ext4.img.gz
$ ls -lh openwrt-15.05.1-brcm2708-bcm2708-sdcard-vfat-ext4.img
-rw-r--r--@ 1 kinneko  staff    76M 12  2 10:52 openwrt-15.05.1-brcm2708-bcm2708-sdcard-vfat-ext4.img

小さいな。

SDに焼く。512MのSDがあったのでこれを使う。

環境はMac OSXから。

ディスクユーティリティでFATに初期化。

$ diskutil list
(snip)
/dev/disk4
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *500.7 MB   disk4
   1:                 DOS_FAT_32 UNTITLED                500.6 MB   disk4s1
$ df -h
Filesystem      Size   Used  Avail Capacity   iused   ifree %iused  Mounted on
(snip)
/dev/disk4s1   477Mi  984Ki  476Mi     1%       512       0  100%   /Volumes/UNTITLED

/dev/disk4はバッファキャッシュで、実体は/dev/rdisk4なので注意。

$ diskutil unmount  /Volumes/"NO NAME"
Volume NO NAME on disk4s1 unmounted
$ sudo dd if=openwrt-15.05.1-brcm2708-bcm2708-sdcard-vfat-ext4.img of=/dev/rdisk4
155648+0 records in
155648+0 records out
79691776 bytes transferred in 114.416721 secs (696505 bytes/sec)

OSXだと、conv=fsyncとかないのね。まぁいいか。

$ diskutil eject /dev/disk4
Disk /dev/disk4 ejected

SDを取り出す。


Raspiでシリアルは、GPIOでやるのね。

そもそもOpenWRTで、シリアルにコンソール出てるのかしらん?

GND - GND

TXD - GPIO15 (RXD)

RXD - GPIO14 (TXD)

という結線になるようだ。3.3Vが標準かしらん?


いきなりヘッドレスもメンドクサイので、HDMIケーブルでモニタをつなげて起動してみる。

基板上から見て、端子上、ラベル下でSDを差し込む。はみ出るのはダサい。

HDMIケーブルをモニタにつなげる。

USBキーボードをつなげる。

給電はUSBしかないのね。

microUSBケーブルで給電。ACは、初代Kindle Fireについてたのを使う。

赤いLEDが点灯して、起動メッセージがコンソールに流れる。他のLEDも点灯や点滅をはじめた。

遅い... SDが遅いのか、SoCが非力なのか。


起動途中のメッセージでEnter入れるとシェル出るみたいな表示がある。

Enter入れるとシェルに落ちた。

uciコマンドで現在の設定のバックアップを取る。

# cd /root
# uci show > setting.def

このままではどこにも接続されていないので、何もできない。

NICはLANに設定されていて、DHCPサーバーが動作している。

コンソールのキーボードが英語デフォルトなので、パイプが入力できない。

不便なので、なんとかする...

ダメだな。何もツールがないようだ。

はやいところリモートで入れるようにしないと。


コンソールから、uciコマンドで、NICの設定がサーバー構成になっているのを、クライアントに切り替える。

root@OpenWrt:~# uci set network.lan.proto=dhcp
root@OpenWrt:~# uci commit
root@OpenWrt:~# /etc/init.d/network restart

本体NICを外につながっているケーブルを接続する。

コンソールには、インターフェイスがアップしたメッセージしか出ない。

ifconfigで取れたIPアドレスを見る。br-lanに割り当てられるようだ。

なんでeth0でないのかと思ったら、デフォルト設定では、br-lanとeth0はブリッジ設定がされている。eth0はusb-bcm2708のUSB NICにつながっているようだ。br-lanは、内蔵HUBかなんかだろうか?


先ほど調べたアドレスでtelnetする。

$ telnet 192.168.51.87
Trying 192.168.51.87...
Connected to 192.168.51.87.
Escape character is '^]'.
 === IMPORTANT ============================
  Use 'passwd' to set your login password
  this will disable telnet and enable SSH
 ------------------------------------------


BusyBox v1.23.2 (2016-01-31 10:28:42 CET) built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 CHAOS CALMER (15.05.1, r48532)
 -----------------------------------------------------
  * 1 1/2 oz Gin            Shake with a glassful
  * 1/4 oz Triple Sec       of broken ice and pour
  * 3/4 oz Lime Juice       unstrained into a goblet.
  * 1 1/2 oz Orange Juice
  * 1 tsp. Grenadine Syrup
 -----------------------------------------------------
root@OpenWrt:/#

とりあえず、有線NATルーターにしてみる。

ドライバ類が何も入ってないので、追加しないとUSB-NICが使えない。

手元にあるのは、ASIXのチップが乗ったUSB-CDC Etherのドングル。台湾のビリオントンのもの。

こいつのドライバを入れる。

パッケージリストを最新に更新する。

root@OpenWrt:/# opkg update
Downloading http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm2708/bcm2708/packages/base/Packages.gz.
Updated list of available packages in /var/opkg-lists/chaos_calmer_base.
Downloading http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm2708/bcm2708/packages/base/Packages.sig.
Signature check passed.
Downloading http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm2708/bcm2708/packages/luci/Packages.gz.
Updated list of available packages in /var/opkg-lists/chaos_calmer_luci.
Downloading http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm2708/bcm2708/packages/luci/Packages.sig.
Signature check passed.
Downloading http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm2708/bcm2708/packages/packages/Packages.gz.
Updated list of available packages in /var/opkg-lists/chaos_calmer_packages.
Downloading http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm2708/bcm2708/packages/packages/Packages.sig.
Signature check passed.
Downloading http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm2708/bcm2708/packages/routing/Packages.gz.
Updated list of available packages in /var/opkg-lists/chaos_calmer_routing.
Downloading http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm2708/bcm2708/packages/routing/Packages.sig.
Signature check passed.
Downloading http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm2708/bcm2708/packages/telephony/Packages.gz.
Updated list of available packages in /var/opkg-lists/chaos_calmer_telephony.
Downloading http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm2708/bcm2708/packages/telephony/Packages.sig.
Signature check passed.
Downloading http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm2708/bcm2708/packages/management/Packages.gz.
Updated list of available packages in /var/opkg-lists/chaos_calmer_management.
Downloading http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm2708/bcm2708/packages/management/Packages.sig.
Signature check passed.

現在インストールされているパッケージのリストはこんな感じ。

root@OpenWrt:/# opkg list_installed
base-files - 157.2-r48532
brcm2708-gpu-fw - 20150210-1
busybox - 1.23.2-1
dnsmasq - 2.73-1
dropbear - 2015.67-1
firewall - 2015-07-27
fstools - 2016-01-10-96415afecef35766332067f4205ef3b2c7561d21
ip6tables - 1.4.21-1
iptables - 1.4.21-1
jshn - 2015-11-08-10429bccd0dc5d204635e110a7a8fae7b80d16cb
jsonfilter - 2014-06-19-cdc760c58077f44fc40adbbe41e1556a67c1b9a9
kernel - 3.18.23-1-f3144d3f6bd4032509c8ac6728e75f4b
kmod-hid - 3.18.23-1
kmod-hid-generic - 3.18.23-1
kmod-input-core - 3.18.23-1
kmod-input-evdev - 3.18.23-1
kmod-ip6tables - 3.18.23-1
kmod-ipt-conntrack - 3.18.23-1
kmod-ipt-core - 3.18.23-1
kmod-ipt-nat - 3.18.23-1
kmod-ipv6 - 3.18.23-1
kmod-lib-crc-ccitt - 3.18.23-1
kmod-nf-conntrack - 3.18.23-1
kmod-nf-conntrack6 - 3.18.23-1
kmod-nf-ipt - 3.18.23-1
kmod-nf-ipt6 - 3.18.23-1
kmod-nf-nat - 3.18.23-1
kmod-nf-nathelper - 3.18.23-1
kmod-nls-base - 3.18.23-1
kmod-ppp - 3.18.23-1
kmod-pppoe - 3.18.23-1
kmod-pppox - 3.18.23-1
kmod-slhc - 3.18.23-1
kmod-sound-arm-bcm2835 - 3.18.23-1
kmod-sound-core - 3.18.23-1
kmod-usb-core - 3.18.23-1
kmod-usb-hid - 3.18.23-1
libblobmsg-json - 2015-11-08-10429bccd0dc5d204635e110a7a8fae7b80d16cb
libc - 0.9.33.2-1
libgcc - 4.8-linaro-1
libip4tc - 1.4.21-1
libip6tc - 1.4.21-1
libiwinfo - 2015-06-01-ade8b1b299cbd5748db1acf80dd3e9f567938371
libiwinfo-lua - 2015-06-01-ade8b1b299cbd5748db1acf80dd3e9f567938371
libjson-c - 0.12-1
libjson-script - 2015-11-08-10429bccd0dc5d204635e110a7a8fae7b80d16cb
liblua - 5.1.5-1
libnl-tiny - 0.1-4
libubox - 2015-11-08-10429bccd0dc5d204635e110a7a8fae7b80d16cb
libubus - 2015-05-25-f361bfa5fcb2daadf3b160583ce665024f8d108e
libubus-lua - 2015-05-25-f361bfa5fcb2daadf3b160583ce665024f8d108e
libuci - 2015-08-27.1-1
libuci-lua - 2015-08-27.1-1
libxtables - 1.4.21-1
lua - 5.1.5-1
luci - git-16.018.33482-3201903-1
luci-app-firewall - git-16.018.33482-3201903-1
luci-base - git-16.018.33482-3201903-1
luci-lib-ip - git-16.018.33482-3201903-1
luci-lib-nixio - git-16.018.33482-3201903-1
luci-mod-admin-full - git-16.018.33482-3201903-1
luci-proto-ipv6 - git-16.018.33482-3201903-1
luci-proto-ppp - git-16.018.33482-3201903-1
luci-theme-bootstrap - git-16.018.33482-3201903-1
mtd - 21
netifd - 2015-12-16-245527193e90906451be35c2b8e972b8712ea6ab
odhcp6c - 2015-07-13-024525798c5f6aba3af9b2ef7b3af2f3c14f1db8
odhcpd - 2015-11-19-01d3f9d64486ac1daa144848944e877e7f0cb762
opkg - 9c97d5ecd795709c8584e972bfdf3aee3a5b846d-9
ppp - 2.4.7-6
ppp-mod-pppoe - 2.4.7-6
procd - 2015-10-29.1-d5fddd91b966424bb63e943e789704d52382cc18
rpcd - 2015-01-10-f00890cd6eb47ad9bb5da0fb6c50aedc8406e7c5
ubox - 2015-11-22-c086167a0154745c677f8730a336ea9cf7d71031
ubus - 2015-05-25-f361bfa5fcb2daadf3b160583ce665024f8d108e
ubusd - 2015-05-25-f361bfa5fcb2daadf3b160583ce665024f8d108e
uci - 2015-08-27.1-1
uhttpd - 2015-11-08-fe01ef3f52adae9da38ef47926cd50974af5d6b7
uhttpd-mod-ubus - 2015-11-08-fe01ef3f52adae9da38ef47926cd50974af5d6b7
usign - 2015-05-08-cf8dcdb8a4e874c77f3e9a8e9b643e8c17b19131

インストール可能なパッケージのリストからASIX用のkmodを探す。

root@OpenWrt:/# opkg list | grep asix
kmod-usb-net-asix - 3.18.23-1 - Kernel module for USB-to-Ethernet Asix convertors
kmod-usb-net-asix-ax88179 - 3.18.23-1 - Kernel module for USB-to-Ethernet ASIX AX88179 based USB 3.0/2.0 to Gigabit Ethernet adapters.

インストールする。関連する依存パッケージもインストールされる。

root@OpenWrt:/# opkg install kmod-usb-net-asix kmod-usb-net-asix-ax88179
Installing kmod-usb-net-asix (3.18.23-1) to root...
Downloading http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm2708/bcm2708/packages/base/kmod-usb-net-asix_3.18.23-1_brcm2708.ipk.
Installing kmod-libphy (3.18.23-1) to root...
Downloading http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm2708/bcm2708/packages/base/kmod-libphy_3.18.23-1_brcm2708.ipk.
Installing kmod-usb-net (3.18.23-1) to root...
Downloading http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm2708/bcm2708/packages/base/kmod-usb-net_3.18.23-1_brcm2708.ipk.
Installing kmod-mii (3.18.23-1) to root...
Downloading http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm2708/bcm2708/packages/base/kmod-mii_3.18.23-1_brcm2708.ipk.
Installing kmod-usb-net-asix-ax88179 (3.18.23-1) to root...
Downloading http://downloads.openwrt.org/chaos_calmer/15.05.1/brcm2708/bcm2708/packages/base/kmod-usb-net-asix-ax88179_3.18.23-1_brcm2708.ipk.
Configuring kmod-libphy.
Configuring kmod-mii.
Configuring kmod-usb-net.
failed to find a module named usbnet
Configuring kmod-usb-net-asix-ax88179.
Configuring kmod-usb-net-asix.

ドライバモジュールを追加したので再起動する。

root@OpenWrt:/# reboot

telnetで再接続して作業を継続する。

起動メッセージには見えている。

root@OpenWrt:/# dmesg | grep six
[    9.689286] asix 1-1.3:1.0 eth1: register 'asix' at usb-bcm2708_usb-1.3, ASIX AX8817x USB 2.0 Ethernet, 00:10:60:2b:a4:05
[    9.706144] usbcore: registered new interface driver asix

NICにケーブルを差し込む。

コンソール表示に、USBまわりがなんか頻繁にリセットされている状況が出てくる。

パワー足りてないか...

とりあえず、USBキーボードを外してみる。

頻度は下がったけど、リセットはおさまらない。

電源を1Aにパワーアップすることにする。

安定した感じ。

追加したUSB-NICは、eth1として認識しているようだ。

root@OpenWrt:/# dmesg | grep eth1
[    9.699322] asix 1-1.3:1.0 eth1: register 'asix' at usb-bcm2708_usb-1.3, ASIX AX8817x USB 2.0 Ethernet, 00:10:60:2b:a4:05

いまのところ、設定がないのでOpenWRTでは認識していない。

ここからの設定はブラウザでLuciを使った設定のほうが楽そうなので、そちらに切り替える。


同じセグメントに接続されたMacのブラウザから、ターゲットのIPアドレスを指定して開く。

Luciのログイン画面が表示される。

「No password set!」と出てくるので、その下のリンク「Go to password configuration...」からパスワードを設定する。

設定すると、telnetの接続ができなくなり、sshでの接続に限定される。

sshからは、rootでの接続になってしまうようなので、パスワード認証は不許可にして、自分の端末の公開鍵を登録して、鍵認証でないとログインできないようにしておく。

Router Passwordを入力。

SSH Accessの設定を行う。

interfaceはunspecified。Password authenticationとAllow root logins with passwordのチェックは外す。SSH-Keysに公開鍵をコピペする。

Save&Applyボタンを押す。

telnetで接続できなくなったのを確認する。

$ telnet 192.168.51.87
Trying 192.168.51.87...
Connected to 192.168.51.87.
Escape character is '^]'.
Login failed.
Connection closed by foreign host.

sshで公開鍵認証で接続できるのを確認する。

$ ssh root@192.168.51.87
The authenticity of host '192.168.51.87 (192.168.51.87)' can't be established.
RSA key fingerprint is 5c:5e:97:8a:e3:1a:02:ad:ca:07:94:99:8d:51:65:7c.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.51.87' (RSA) to the list of known hosts.


BusyBox v1.23.2 (2016-01-31 10:28:42 CET) built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 CHAOS CALMER (15.05.1, r48532)
 -----------------------------------------------------
  * 1 1/2 oz Gin            Shake with a glassful
  * 1/4 oz Triple Sec       of broken ice and pour
  * 3/4 oz Lime Juice       unstrained into a goblet.
  * 1 1/2 oz Orange Juice
  * 1 tsp. Grenadine Syrup
 -----------------------------------------------------
root@OpenWrt:~#

Luciから、Network->Intafacesの設定を開く。

現在はLANセグメントに、br-lanが有効になっている。

追加したUSB-NICをWAN側に設定していく。

Add new intarface... ボタンを押す。

Name of the new interfaceはWANに。

Protocol of the new interfaceは、DHCP Clientに。

Cover the following interfaceをeth1にして、Submitボタンを押す。

Interfaces - WANに遷移するので、Firewall SettingsだけWANにチェックを入れて、Save&Applyボタンを押す。

Interfacesに戻るとWANにIPアドレスが割り当てられているのがわかる。


LAN側を変更するので、設定を仮変更する。

まずWANのFirewallの設定を変更しておく。

・Input reject->accept

・Output accept そのまま

・Forward reject->accept

・Masquerading チェック外す

・MSS clamping チェック外す

Save&Applyボタンを押す。

Luciの接続アドレスをUSB NIC側のものに変更する。

LAN側の設定をDHCPサーバーに変更する。

NICのケーブルを外しておく。

InterfacesからLANのEditボタンを押す。

General SetupのProtocolをStatic addressに変更し、Switch protocolボタンを押す。

IPv4 addressを192.168.128.1に。

IPv4 netmaskを255.255.255.0に。

IPv4 gatewayを192.168.128.1に。

IPv4 broadcastを255.255.255.255に。

DHCP Serverの設定はデフォルトのままさわらない。

Save&Applyボタンを押す。

LAN側にMacのケーブルを接続しなおして、192.168.128.1を宛先にLuciを開く。

WAN側のFirewall設定をもとにもどしておく。

これでNATルーターとしての構成はできた。

Mac側からのNAT接続も問題なく外に出られる。

しかし、ASIXドライバのMIIが応答がなくなって、しょっちゅうリセットしている。

これはよくない感じだ。

ASIXドライバは安定していると思うのだけど、このままでは使えない。

電気足りないか...

カニのNICとかなら通るのかねぇ...