本記事はソラコムが提供する「SORACOM公式ブログ」に掲載された「SIM向けオンデマンドパケットキャプチャサービス「SORACOM Peek for SIM」でSIM単位のキャプチャ機能を提供開始!」を再編集したものです。
みなさんこんにちは、ソラコムの福島 (taku) です。
本日は SIMの通信内容をSORACOMプラットフォーム上でパケットキャプチャできる「SORACOM Peek」の新機能「SORACOM Peek for SIM」のリリースをお伝えします。 また、今回のリリースに合わせて追加された「キャプチャ停止機能」についても解説します。
ソラコムでは昨年7月にSORACOM Peek(以下 Peek)を発表し、ソラコムのSIMを利用している場合お客様が誰でも簡単に、マイコンといった普通ならば難しいようなデバイスに対してもパケットキャプチャを行なうことができる機能を提供をしており、IoTデバイスの開発時における通信の細かな観察から、本番運用におけるトラブルシューティングと幅広くお使いいただいています。 これまでのPeekはVPGという、SORACOMプラットフォーム内の仮想ゲートウェイに対してパケットキャプチャを行なうことができ、VPGに紐付けられている SIM すべての通信を一度にキャプチャすることができました。 実際にPeekをお使いいただいたお客様からは「本番運用をしているSIMのトラブルシュートで、設定を変更せず即座にSIMのパケットキャプチャをしたい」というフィードバックをいただき、本日これらのご要望にお応えできる機能をアナウンスできることを嬉しく思います。
SIM 向け Peek の発表にあたって、今後 「SORACOM Peek」 は SIM 向けの「SORACOM Peek for SIM」(以下Peek for SIM)およびVPG向けの「SORACOM Peek for VPG」(以下Peek for VPG)の2つの機能の総称となります。
SORACOM Peek for SIM
SORACOM Peek for SIMで解決できること
Peek for SIM を利用することでSIM一枚から特別な設定なしで今すぐにパケットキャプチャを開始することができます。デバイスに直接アクセスすることが難しい環境やデバイス上でLinuxなどの汎用OSが動いていない場合でもデバイスの通信に影響を与えることなくSORACOMプラットフォーム上でパケットキャプチャを行ない、お客様はその結果生成されたpcapファイルを直接ダウンロードすることができます。自分でデバイス上でパケットキャプチャする場合、pcapファイルの取り回しというのは往々にして面倒なものです。
以下のようなシナリオを見てみましょう。
うーん、デバイスが想定と違う通信をしているようだぞ、仕方ないパケットキャプチャをしてどんな通信をしているか見てみよう。あれ、デバイスには外部映像出力とキーボードを接続する USB端子が無いんだった。仕方ないsshしてtcpdumpを実行しよう。おやtcpdumpがインストールされていない、パケッージマネージャでインストールしよう。よしパケットが取れたのでtcpdumpを停止し、pcapファイルをscpでコピーだ。(元のpcapファイルを消し忘れ、デバイスのストレージ容量が最低限しかなかったので後日容量が足りなくなりそれが原因で発生した問題のデバッグをすることになる)
実は私も似たような経験をしました。いつ目的のパケットがキャプチャできるのか分からなかったのでscreen上でtcpdumpを実行し放置してそのまま忘れてしまった結果ストレージ容量が足りなくなった、ということもありました。なかなか辛い記憶です。
Peek for SIMの機能はユーザーコンソールよりお使いいただけるのでポチ、ポチ、ポチと数クリックでパケットキャプチャを開始することができます。今まではVPGをご用意いただきSIMをそのVPGと同じグループに所属させるなどの設定をしていたところを設定なしですぐにパッケットキャプチャを開始できます。
通信の透明性
一般的にセルラー通信ではPeekのようなサービスは提供されていないことが多いです。前例にない、他社がやっていない、一人一人にそのような機能を提供することが現実的でないなど様々な理由が考えられますが、IoTデバイス向けの通信機能を提供しているソラコムがこの機能を提供することには意義があると開発者である私は思います。
セルラー網を使っていたとしてもIoTデバイスである以上プログラムが動作し外部との通信が発生していて、それを前提とした開発・運営をする場合実際何が起こっているかを短時間で知ることは生産性に直接大きな影響があります。Peek for VPG発表のブログでPeekをprintfデバッグに例えた通り実際の通信を見て分かることは非常に多くあります。ブラウザの開発者ツールの通信を見ることができるネットワークタブ、使いませんか? 私はめちゃくちゃ使います。
また、コネクテッドなデバイスが実世界にデプロイされるに従ってデバイスが想定通りの通信をしていることを確かめることができるのは広義なセキュリティやガバナンスの文脈で意味のあることだと思います。アプリケーションレベルだけではなくシステム全体の通信レベルで想定外の動作をしていないことをデバイスではなく外部から取得しいつでも確認できることは今後より広まっていくと思われます。
Peek for SIM の使い方
Peek for SIM の利用は簡単です。
ユーザーコンソールからキャプチャ対象のSIMを選択して「パケットキャプチャ」をクリックします。
次に「キャプチャを開始」をクリックします。
さらに以下のように「キャプチャファイル名のPrefix」(任意です)、「キャプチャ時間(秒)」を指定します。「キャプチャを開始」をクリックすると新しいパケットキャプチャセッションが作成され、一覧の一番上に追加されるのを確認したら更新ボタンを押します。
この時作成したパケットキャプチャセッションのステータスがCAPTURINGになっていればキャプチャが開始されていますので、デバイスで通信を行なってください。
「キャプチャ時間」で指定した時間が経過した後に更新ボタンを押すと、パケットキャプチャセッションのステータスが DONE になりパケットキャプチャファイルの列に「リンクを取得」が表示されるのでクリックします。
クリックすると「ダウンロード」が表示されるので、クリックするとパケットキャプチャファイル(pcap ファイル)のダウンロードが開始します。
取得したキャプチャファイルはWiresharkなどを利用して宛先やパケットの内容を確認できます。
数クリックでパケットキャプチャを開始し、pcapファイルを取得することができました。
ユーザーコンソール以外でもSORACOM APIおよびSORACOM CLIを使用することでSIMに対するパケットキャプチャセッションの作成、リスト、取得、削除が可能です。
定期実行や他の SORACOM サービス、その他 API やプログラムと連携してご利用いただくことが可能ですので是非ご活用ください。
ご利用料金
気になるPeek for SIMの料金は以下のとおりです!
Peek for SIM利用料金
・110円(1キャプチャセッション 最初の1時間分まで)
・2時間目以降 1時間あたり22円
データエクスポート料金
・キャプチャファイルのダウンロードのサイズ容量に応じて、以下の料金が発生します。
・データエクスポート量がアカウント(Operator)毎にひと月に5GBを超えると1GB ごとに110円
・月の利用日数に関わらず月5GBまでは無料となります。
・なお、データエクスポート量は、Peek for SIMとPeek for VPGのデータエクスポート量が合算されます。
1時間に満たない端数は切り上げとなります。たとえば、1時間5分のセッションが行なわれた場合、2時間分で132円となります。
いずれも日本カバレッジの料金です。
その他の詳細はSORACOM Peekのご利用料金をご確認ください。
キャプチャ停止機能
2つ目の新機能はキャプチャ停止機能です。キャプチャ開始時に「キャプチャ時間(秒)」を指定しますが、キャプチャ開始後に途中でキャプチャを停止することができます。
キャプチャを停止した場合、停止するまでにキャプチャしたパケットはパケットキャプチャファイルに保存され、ダウンロードすることができます。後述しますが、キャプチャの費用はキャプチャした時間のみかかります。
当機能はPeek for VPGおよびPeek for SIMの両方で使用することができます。
これまでは、想定よりも早く所望のパケットがキャプチャできてしまったという場合でもパケットキャプチャの終了を待たなければいけませんでした。特にトラブルシューティング目的でパケットをキャプチャする場合は事象の再現までどの程度の時間がかかるか読めないため、長めの時間を設定することが多いと思います。
しかし、この機能によってお客様のタイミングでパケットキャプチャを終了させることができます。
キャプチャ停止機能によってより柔軟に Peek をお使いいただくことができ、使い心地がぐっと向上したという自信があります。お客様や社内からも希望する声が多かった機能ですが、遂に皆様にお届けすることができ大変嬉しく思います。
キャプチャ停止機能の使いかた
パケットキャプチャセッションが CAPTURING の場合に「操作」列に 「停止」が表示されるのでクリックします。
本当に停止するか確認する画面に移行され「停止」を押すとパケットキャプチャが停止されます。
停止されたパケットキャプチャセッションのステータスは POSTPROCESSING(後処理中)になり停止までにキャプチャしたパケットを保存します。キャプチャ時間が長いとこの後処理に時間がかかる可能性があります。
更新ボタンを押し後処理が完了していた場合にはステータスがSTOPPEDになったパケットキャプチャが表示され、DONEのものと同様にパケットキャプチャファイルをダウンロードしたり削除することができます。
非常に直感的に操作することができます。
キャプチャ停止機能も他のPeekの機能と同様にSORACOM APIおよびSORACOM CLIでの操作が可能です。
ご利用料金
SORACOM Peek のキャプチャ停止機能自体のご利用料金はございません。キャプチャを停止した場合、システム上でのキャプチャ開始からキャプチャ終了までの期間がキャプチャ時間となり、その時間に応じた料金が発生します。
この場合の料金はPeek for VPGおよびPeek for SIMの料金に準じます。詳細はSORACOM Peekのご利用料金をご確認ください。
まとめ
本日は「SORACOM Peek for SIM」およびSORACOM Peek向けパケットキャプチャ停止機能のご紹介をしました。
Peek for SIMにより、より簡単にSIM 1枚からのパケットキャプチャが可能になり、またパケットキャプチャ停止機能により SORACOM Peek が多くのお客様にとってより使いやすくなりました。
冒頭でも記載しましたが、パケットキャプチャやその後のpcapファイルの取り回しというのは往々にして面倒なものです。今回従来のPeek for VPGを発展させてVPGがなくても任意のセルラー通信を誰もがいつでもかんたんにキャプチャーできるPeek for SIMや、いつでもパケットキャプチャを停止できる機能を提供することで、お客様にストレスの少ない快適なパケットキャプチャを行なっていただけるようになったことをとても嬉しく思っています。
今回のアップデートでSORACOM Peekは非常に手触りの良い、シンプルに目的を達成できるサービスになったと自負しています。常に必要なわけではないけれど、必要になって使った時に便利で頼りになって前よりちょっと好きになる、そんな存在を目指して開発しました。
SORACOMはマイクロサービスアーキテクチャに基づいた分散システムです。パケットキャプチャの仕組みを実装するにあたり、分散環境ならではのユニークな問題が発生し、そういった問題を都度解決していく必要がありました。表面ではシンプルで素朴に見えますが、水面下では頑張って足を掻いています。例えばあなたのダウンロードしたそのpcapファイル、ひとつのファイルに見えていますが実は… 詳しい話は別の機会に取っておきましょう。
最後に、お客様がSORACOM Peekを使って開発・運営されたサービスやデバイスが世界に出ていくことを願っています。皆様がどんなものを作るのか非常にワクワクしています。
ぜひ、SORACOM Peekをご利用いただけると幸いです。
この連載の記事
-
第484回
デジタル
AWS re:Invent 2024に見る、IoTの成熟と生成AIとの融合 -
第483回
デジタル
二歳半の子供を持つエンジニアの一日の働き方 -
第482回
デジタル
VPN 対応の産業用 LTE ルーターの価格改定【30%オフ】 -
第481回
デジタル
時間帯に応じたメール通知の構築方法 : SORACOM LTE-M Button と SORACOM Flux の活用 -
第480回
デジタル
SORACOM Flux 料金プランを発表しました -
第479回
デジタル
12/11-13 商業施設・店舗DX展に出展:最新IoTソリューションや事例をご紹介 -
第478回
デジタル
コープさっぽろが、クラウド型カメラ「ソラカメ」を全店舗で導入、現場主導の改善を実現、サーバールームの異常な温度上昇を通知する新規掲載レシピ takuyaのほぼ週刊ソラコム 11/16-11/29 -
第476回
デジタル
WebRTCとMedia over QUIC Transportの性能比較 -
第475回
デジタル
SORACOM Lagoon 3 の [Math] 機能で、複数データを組み合わせた通知の手順 -
第474回
デジタル
SORACOM Flux の AI アクションに Amazon Bedrock – Anthropic Claude 3.5 Haiku を追加、Teltonika RUT240 の価格を改訂 takuyaのほぼ週刊ソラコム 11/02-11/15