Soracom

Users

ドキュメント

セルラー回線認証を使用してバーチャル SIM/Subscriber をブートストラップする

soratun のサポートする 3 種類のブートストラップ方法 の 1 つである SORACOM Krypton のセルラー回線認証を使用する方法 のガイドです。セルラー接続そのものを認証の手段としますので、デバイス側に認証情報を保存しておく必要がありません。SORACOM Air for セルラーによる通信がセットアップ済みであれば比較的容易にバーチャル SIM/Subscriber の作成と接続ができます。SIM 認証とは異なり、任意のサブスクリプションでも利用できます。

前提条件

  • soratunインストール されていること
  • Raspberry Pi が SORACOM Air for セルラーに接続されていること

ステップ 1: SORACOM Krypton を有効化する

Krypton を有効化します。詳しくは、SORACOM Krypton を有効化する を参照してください。

Krypton に Amazon Cognito や AWS IoT の設定を追加しないでください

ここでは Krypton の有効化 (スイッチをクリックして「ON」にする) のみを行います。Amazon Cognito や AWS IoT の設定を追加しないでください。

ステップ 2: SORACOM Air for セルラーで接続する

任意の接続方法で SORACOM Air for セルラーでインターネットに接続してください。

ステップ 3: ブートストラップする

ブートストラップが完了すると、Krypton および Arc の料金が発生します。詳しくは、以下のページを参照してください。

soratun bootstrap cellular コマンドでブートストラップします。以下の例では設定ファイルを /path/to/arc.json に保存します。ご利用の環境にあわせて任意のパスを指定してください。

$ soratun --config /path/to/arc.json bootstrap cellular
--config フラグで指定した設定ファイルがすでに存在する場合は秘密鍵 (PrivateKey)、公開鍵 (PublicKey)、および接続情報 (arcSessionStatus) を更新して終了します。

成功すると以下のように構成ファイルのパスが表示されます。

Created/updated configuration file: /path/to/arc.json

以上でブートストラップは完了です。ブートストラップ後は SORACOM Air for セルラーの接続は不要です。生成された設定ファイルの詳細は soratun 設定ファイルリファレンス を参照してください。

ステップ 4: soratun を実行しバーチャル SIM/Subscriber で接続する

生成された設定ファイルを指定して soratun を実行し仮想インターフェースを作成、SORACOM プラットフォームへ接続します。

$ sudo soratun --config /path/to/arc.json up

ソラコムにアクセスできることを確認してください。

$ ping pong.soracom.io

soratun up コマンドで仮想インターフェースを作成したタイミングで以下のネットワーク宛の通信を soratun のネットワークインターフェース経由に設定します。すでに同じルートが定義されている場合は上書きします。

  • SORACOM Arc セッション作成時にサーバーから返却された arcAllowedIPs (通常は 100.127.0.0/16)
  • soratun の設定ファイルにお客様で定義する additionalAllowedIPs (デフォルトは設定無し)

soratun はデフォルトゲートウェイを変更しません。そのため、起動後もデフォルトゲートウェイがセルラー回線 (ppp0) になっている場合は、何らかの原因でセルラー通信がオフラインになった際に SORACOM Arc サーバーとの疎通が中断し soratun 経由の通信も不通となります (数十秒後に自動的に実施される WireGuard ハンドシェイクが成功すれば回復します)。この状況を避けるためには soratun 起動前に以下のようなルーティングテーブルの変更を検討してください。

  • デフォルトゲートウェイを Wi-Fi や Ethernet に変更する。
  • 以下のホストおよびネットワーク宛の通信を ppp0 経由にする。
    • SORACOM Krypton の「SORACOM Air のセルラー回線を使用した認証」で使用するエンドポイント: krypton.soracom.io

      詳しくは、Krypton プロビジョニング API リファレンス を参照してください。

    • SORACOM プラットフォームの CIDR: 100.127.0.0/16

ユーザーコンソールからセッションを切断した場合は再度ブートストラップを実施してください。--config フラグで指定した設定ファイル内の秘密鍵 (PrivateKey)、公開鍵 (PublicKey)、および接続情報 (arcSessionStatus) を更新します。