IoT ハブ パブリック エンドポイントの IP アドレス プレフィックスは、AzureIoTHubサービス タグで定期的に発行されます。
注
オンプレミス ネットワーク内にデプロイされているデバイスの場合、Azure IoT Hub では、プライベート エンドポイントとの仮想ネットワーク接続の統合がサポートされます。 詳細については、 Azure Private Link を使用した仮想ネットワークに対する IoT Hub のサポートに関するページを参照してください。
次の IP アドレス プレフィックスを使用して、さまざまなネットワーク分離目標を実装するために、IoT Hub とデバイスまたはネットワーク資産間の接続を制御できます。
目標 | 該当するシナリオ | アプローチ |
---|---|---|
デバイスとサービスが IoT Hub エンドポイントのみと通信するようにする | Device-to-cloud および cloud-to-device メッセージング、 ダイレクト メソッド、 デバイスツインとモジュール ツイン、 およびデバイス ストリーム | AzureIoTHub サービス タグを使用して IoT Hub IP アドレス プレフィックスを検出し、これらの IP アドレス プレフィックスのデバイスとサービスのファイアウォール設定で ALLOW 規則を構成します。 他の宛先 IP アドレスへのトラフィックは破棄されます。 |
IoT Hub デバイスのエンドポイントが、使用しているデバイスとネットワーク資産からのみ接続を受信するようにする | Device-to-cloud および cloud-to-device メッセージング、 ダイレクト メソッド、 デバイスツインとモジュール ツイン、 およびデバイス ストリーム | 使用しているデバイスとネットワーク資産の IP アドレスからの接続を許可するには、IoT Hub IP フィルター機能 を使用します。 制限事項の詳細については、「 制限事項と回避策 」セクションを参照してください。 |
ルートのカスタム エンドポイント リソース (ストレージ アカウント、Service Bus、およびイベント ハブ) がネットワーク資産からのみアクセス可能であることを確認する | メッセージ ルーティング | 接続の制限に関するリソースのガイダンスに従います。たとえば、プライベート リンク、サービス エンドポイント、ファイアウォール規則を使用します。 ファイアウォールの制限の詳細については、「 制限事項と回避策 」セクションを参照してください。 |
ベスト プラクティス
IoT ハブの IP アドレスは、予告なしに変更される可能性があります。 中断を最小限に抑えるために、可能な限り、ネットワーキングとファイアウォールの構成には IoT ハブ ホスト名 (例: myhub.azure-devices.net) を使用します。
ドメイン名解決 (DNS) を使用しない制約付き IoT システムの場合、変更を有効にする前に、IoT Hub IP アドレス範囲がサービス タグを使用して定期的に公開されます。 そのため、最新のサービス タグを定期的に取得して使用するためのプロセスを開発することが重要です。 このプロセスは、Service Tag Discovery API を使用するか、ダウンロード可能な JSON 形式でサービス タグを確認することで自動化できます。
特定のリージョン内の IoT Hub エンドポイントによって使用される IP プレフィックスを識別するには、AzureIoTHub.[リージョン名] タグを使用します。 データセンターのディザスター リカバリーまたはリージョンのフェールオーバーを考慮するには、IoT ハブの geo ペア リージョンの IP プレフィックスへの接続も有効になっていることを確認します。 詳細については、「 Azure IoT Hub の信頼性」を参照してください。
IoT Hub でファイアウォール規則を設定すると、IoT Hub に対して Azure CLI と PowerShell コマンドを実行するために必要な接続がブロックされる場合があります。 接続をブロックしないように、クライアントの IP アドレス プレフィックスの ALLOW 規則を追加して、CLI または PowerShell クライアントが IoT ハブと通信し直せるようにすることができます。
デバイスのファイアウォール構成で許可規則を追加する場合、適用されるプロトコルで使用される特定のポートを指定することをお勧めします。
制限事項と回避策
IoT Hub IP フィルター機能では、規則の数は 100 個に制限されています。 この上限は、Azure カスタマー サポートへリクエストすることで上げることができます。
構成済みの IP フィルタリング規則は、既定で、IoT Hub の組み込みイベント ハブ エンドポイントではなく、IoT Hub IP エンドポイントにのみ適用されます。 メッセージが格納されているイベント ハブにも IP フィルターを適用する必要がある場合は、IoT ハブのネットワーク設定で [組み込みのエンドポイントに IP フィルターを適用する] オプションを選択できます。 また、必要な IP フィルタリング ルールを直接構成できる独自のイベント ハブリソースを用意して、同じことを行うこともできます。 この場合は、独自の Event Hubs リソースをプロビジョニングし、IoT ハブの組み込みイベント ハブではなく、そのリソースにメッセージを送信するように メッセージ ルーティング を設定する必要があります。
IoT Hub サービス タグには、受信接続の IP 範囲のみが含まれます。 他の Azure サービスのファイアウォール アクセスを IoT Hub メッセージ ルーティングからのデータに制限するには、サービスに適切な [信頼された Microsoft サービスを許可する] オプションを選択します。たとえば、 Event Hubs、 Service Bus、 Azure Storage などです。
IPv6 のサポート
現在、IPv6 は IoT Hub ではサポートされていません。