RaspberryPiでGL06Pを使う(USB接続)
Category : サーバ管理日記
Published by M-naka on 2017/11/4
旧イーモバイルMVNOを使っていた頃のLTE/3Gモバイルルータ「GL06P(Huawei製)」がまるっと浮いているので、RaspberryPiに繋いで使ってみる。

GL06Pは旧イーモバイル(現ワイモバイル)のLTE/3Gモバイルルータながら、周波数的にはdocomo LTE/3Gにも対応する。LTEはBand3(1800MHz)のみ対応。これはdocomoの東名阪バンドで、docomo LTE対応を謳う機器ほどのLTE対応エリアは広くないものの、いわゆる格安SIM(docomo MVNO)での利用は可能。LTEでつながらなければ3G。とりあえず北関東の実家でIIJmioのSIMカードを挿してみたら、LTEで使えている。

で、「なぜモバイルルータなのにUSB接続なのか」の話。

モバイルルータなので、無線LANは簡単に繋がる。RaspberryPiで無線LANアダプタは問題なく使える(搭載チップにより例外はある)から、手軽さを求めるならそちらでも勿論良い。

個人的には以下がRaspberryPi利用でUSB接続する理由。
特に3番目が重要。

 ・ルータに対しての電源供給はUSBであり、データリンクは給電ついで
 ・ルータとRaspberryPiの距離が至近で、そもそも無線接続の必要がない
 ・無線LAN接続は「単純すぎて芸がない」

で、GL06P(というか、Huaweiのモバイルルータ全般)はUSB接続すると「USB接続のイーサネットデバイス」になる……のだが、これはWindows/MacOSに対する、いわゆるゼロインストール機能を前提としている。USB接続するとまず内蔵ストレージ領域が見え、それに格納されているドライバ・ユーティリティをインストールする。ユーティリティにより、マスストレージクラスでのUSB接続がモデムクラスに変更され、インターネットに繋がる。

この点、Linuxではどうなるか、というと、この手のデバイスはまずストレージデバイスとして見え、それにejectコマンドを実行するか、usb_modeswitchコマンドで必要なパラメータを添えてモードスイッチを行うか、で、モデムモードに移行する。

まーここまで書いておいて何だけど、オチはこんな感じ。

 raspbian wheezy:ドライバはソースからビルドが必要
 raspbian jessie:ドライバはカーネルモジュールとしてもともとある

となっていて、wheezyではえらく苦労させられた一方、jessieは挿すだけで使えた。Huawei製モバイルルータ用のドライバ(wheezyにはビルドが必要なもの)がjessieにはカーネルモジュールとしてマージされており、usb_modeswitchのデフォルト設定にもパラメータがプリセットされているようで、USBケーブルをつなぐと自動認識→モードスイッチ、で自動的にインターフェースwwan0が出現する。



wwan0はイーサネットデバイスのため、ダイヤルアップ接続などのコマンド(ponやwvdial)は必要ない。見えるIPアドレスはプライベートアドレスで、機器内部で外向けのアドレスへルーティングが行われている。

そんなわけで、jessie以降なら「挿せば使える」ので簡単(たぶん)、という、逆にあっさり完了で拍子抜け、というオチ。