ルータをネットにつないだ話(SORACOM的な意味で)

この記事は SYSKEN Advent Calendar 2015 13日目の記事です。

前回は我らがさんだーの「たまには設計(落書き)しよう」という記事でした。

こんにちは、先日OBとなったpuhitakuことルータ芸人です。
私は専攻科を休学しFULLER株式会社に入社しました。よく考えれば就職してもう1ヶ月経ちますね。

高専時代に使ってたコーヒー道具をオフィスに配置した結果、今日も今日とて表参道すぐ近くの国連大学にて開催されていたTOKYO COFFEE FESTIVALでガッツリお金を溶かしてきたわけですが、今日の話はコーヒーの話ではありません。例によってルータの話です。もともと私のブログで公開しようかと企んでいましたが、カオスの塊ことSYSKENの文化に乗っかる形で公開することにしました。

さて、みなさんSORACOM Airはご存知ですか?もちろんご存知ですよね?

そう、IoTのためのMVNO SIMとしてナウなヤングにバカ受けのニューウェイブSIMです。
先日弊社のCTOがおもむろに私にSIMを下さいまして(以下その時の様子)、

C「SORACOMのSIM手に入れたんだけどいr」

私「もちろんです(キリッ」

…と欲望満載の私は思わず脊髄反射で言葉を発してしまいました。
その時は特に考えもせず「管理しやすいMVNO SIMか〜、どうやって使おう」と思いつつNexus 5にぶっ挿したりしてました。と、その瞬間!入社3日でオフィスにデプロイした相棒ことBUFFALOルータが目に入りまして、

私「ルータで直にSORACOM接続できねーかなぁ」

と悪魔のアイデアが浮かんでしまいました。それからオフィスに中古のDOCOMO 3Gモデム、L-02Aが届いたのは5日ほどあとのことでした。

こうして、特に悩むこともなくその日のうちにめでたくSORACOMデビューできたため、以下にその流れを書いておきます。

設定してみる

BUFFALOの無線ルータなど一般家庭向けのネットワークルータは大抵Linuxが内部で動いていて、そのためのLinuxディストリも存在することは言うまでもありません

「え!?ルータの中ってLinux動いてるの!?」と驚いたあなた、お手元の資料をご覧ください。そちらにすべて解説が記してあります。

要は無線ルータってOSが動くパワフルな組み込みコンピュータなので、x86で動くPCと同様3Gモデムの発信もできるはずです。
実際、ルータ向けLinuxディストリの代表格OpenWrtのWikiには、モデムを接続・発信する方法が記されていました

ここにしたがって設定してみると以下の様な手順になります。

  • kmod-usb-serialほか、USB-シリアル変換チップのKernel Moduleを入れる
  • comgt, chat, ppp(PPP通信を制御するソフト群)を入れる
  • 発信の設定をする

多くの3Gモデムでは、PCに挿した最初はドライバ入りの仮想CD-ROMドライブとして動作するものが多いのですが、Wikiではmodeswitchを使ってこれに対処しています。
一方で少なくともL-02Aについては設定を書き換えることで最初からモデムとして動作させられるため、事前に下ごしらえしておけばmodeswitchは必要ないです。
(上記リンク先にはL-02AのAPN設定の書き換え方も同時に説明しているため、SORACOMのAPNに書き換える作業もついでにしておくことをおすすめします。)

まず、Kernel Moduleとcomgtを入れます。chatとpppはcomgtの依存関係で勝手に入ります。

opkg update
opkg install comgt kmod-usb-serial kmod-usb-serial-wwan

次にOpenWrt側のAPN・発信情報を設定します。私が実際に設定した内容は以下のとおりです。が、環境によりけりなので動作するかは保証できないです。

ABORT BUSY
ABORT 'NO CARRIER'
ABORT ERROR
REPORT CONNECT
TIMEOUT 10
OK "ATZ"
OK 'AT+CGDCONT=1,"IP","soracom.io"'
SAY "Calling UMTS/GPRS"
TIMEOUT 30
OK "ATD*99***1#"
CONNECT ' '

あとはWikiにしたがって/etc/config/networkも設定します。

Kernel Moduleがちゃんとロードされていて設定も正しければ、ifup wanすればdmesgで接続の進行状況が出てくるかと思います。
そこでifconfigすると見慣れないインターフェースが追加されているので、ping www.google.co.jpとかしてネットに出られるか試してみましょう。

動作確認

2015-12-04 12.56.29

やったね!つながった瞬間興奮しすぎて思わずツイートしてました。
リクエストレイテンシがでかい感じが懐かしかったです。

というわけで、固定回線が無くてもルータだけで直接3Gの海に繰り出せることが確認できました。SORACOMは料金も安いですし、ぜひ試してみてはいかがでしょう。

では!!


コメントを残す

メールアドレスが公開されることはありません。