# ターミナル ネットワークの要件 ネットワークが Terminal に対応していることを確認し、一般的な問題のトラブルシューティングを行います。 Terminal のネットワーク要件は、使用するリーダーと、実装の構築方法によって異なります。ネットワークが以下に示す要件を満たさない場合、 Terminal の実装は、予期したとおりに機能しません。 ネットワークの状態が不安定または不明な遠隔地で Terminal リーダーを使用する予定の場合は、予期しないネットワーク問題に対処するための準備を整えておいてください。 スマートリーダーを使用する場合は、発生する可能性のあるネットワーク問題を最小限に抑えるために[サーバー主導型の実装](https://docs.stripe.com/terminal/payments/setup-integration.md?terminal-sdk-platform=server-driven)にしておくことをお勧めします。 ## モバイルリーダー [モバイルリーダー](https://docs.stripe.com/terminal/mobile-readers.md)は、インターネット接続を POS デバイスに依存し、次のネットワーク要件を持ちます。 - POS デバイスはインターネットに接続され、さらに[Stripe のインフラストラクチャー](https://docs.stripe.com/ips.md) に接続可能である必要があります。 - 動作環境に、Bluetooth デバイスが正常に機能するのを妨げる干渉がないことを確認する必要があります (たとえば、電子レンジを過剰に使用すると 2.4GHz 帯域で干渉が発生し、Bluetooth 接続が中断されることがあります)。 次のモバイルリーダーを使用できます。 - [Stripe Reader M2](https://docs.stripe.com/terminal/readers/stripe-m2.md) - [BBPOS WisePad 3](https://docs.stripe.com/terminal/readers/bbpos-wisepad3.md) ## スマートリーダー [スマートリーダー](https://docs.stripe.com/terminal/smart-readers.md) は、ネットワークに直接接続し、その接続を使用してインターネットや Stripe にアクセスします。Stripe の Terminal SDK のいずれかを使用する場合、POS デバイスとスマートリーダーは、ローカルネットワークを介して相互に直接通信します。 次のスマートリーダーを使用できます。 - [Stripe Reader S700/S710](https://docs.stripe.com/terminal/readers/stripe-reader-s700-s710.md) - [BBPOS WisePOS E](https://docs.stripe.com/terminal/readers/bbpos-wisepos-e.md) > スマートリーダーには診断機能が組み込まれており、接続に関するトラブルシューティングに役立ちます。診断画面では、DNS 解決、Stripe への接続、Terminal イベントへの接続のテスト結果を確認できます。また、Wi-Fi の信号強度、バッテリーの状況、ハードウェアの状態も表示されます。[WisePOS E](https://docs.stripe.com/terminal/readers/bbpos-wisepos-e.md#diagnostics)、または [S700/S710](https://docs.stripe.com/terminal/readers/stripe-reader-s700-s710.md#diagnostics) での診断の実行についての詳細は、各リンク先を参照ください。 スマートリーダーには次のネットワーク要件があります。 - ネットワークが IPv4 をサポートしている必要があります。 - IPv6 のみのネットワークはサポートされていません。 - 一部のリーダーは DHCP を介して IPv6 ネットワークに接続できますが、IPv4 アドレスも割り当てる必要があります。静的 IP、ルーター、サブネットマスク、DNS などの詳細設定の変更は、IPv6 ではサポートされていません。 - Terminal リーダーには、[プライベート IP アドレス](https://en.wikipedia.org/wiki/Private_network) を割り当てる必要があります。 - Terminal リーダーと POS デバイスの両方が、[Stripe のインフラストラクチャー](https://docs.stripe.com/ips.md) に接続可能である必要があります。 - Terminal リーダーが WiFi とイーサネットの両方に対応している場合、両方ではなく、一方を使用します。WiFi とイーサネットを同時に使用しようとすると、接続が不安定になり、断続的なダウンタイムが発生します。 - WiFi を使用する場合は、イーサネットケーブルを接続せずにドックを使用できます (充電またはアクセサリー専用など)。 - WiFi ネットワークは WPA/WPA2/WPA3-Personal または WPA2/WPA3 EAP-PEAP Enterprise の暗号化を使用し、パスワードで保護されている必要があります。 - Terminal リーダーは、WiFi 6 (802.11ax とも呼ばれる) に対応していません。 - Verifone P400 リーダーは、WPA パーソナルまたは WPA2 パーソナルの暗号化のみに対応しています。 - イーサネットネットワークは 10/100 イーサネットデバイスをサポートしている必要があります。 - ネットワークで動的な IP アドレスの割り当てを使用する場合は、DHCP サーバー設定で、 Terminal リーダーが少なくとも 1 営業日の間ずっと同じ IP アドレスを保持できるようにする必要があります。 - ネットワークでネットワークセッション (アイドル状態のセッションを含む) の期間を制限している場合、Terminal リーダーの最小セッション期間は、少なくとも 1 営業日全体でなければなりません。 - Stripe のいずれかのTerminal SDK を別の POS デバイス で使用する場合 (たとえば、Terminal リーダー上で実行しているアプリではない)、次の要件も満たしている必要があります。 - リーダーは、POS デバイスと同じローカルネットワーク上にある必要があります。 - リーダーは、ローカルネットワークを介して POS デバイスと直接通信できる必要があります。 - POS デバイスで使用される DNS サーバーは、インターネットでルーティング可能なホスト名をローカル IP アドレスに解決できる必要があります。 ## トラブルシューティング ネットワーク関連の問題が発生した場合は、経験豊富な担当者に実際に問題を診断して修正してもらう必要があります。 Terminal の導入、デプロイ、および保守を計画する際は、この点を考慮してください。 > ネットワーク設定やインフラストラクチャーはさまざまであるため、 Stripe では基本的なネットワークに関する質問にのみ対応いたします。ネットワークの操作とトラブルシューティングは、お客様が責任を負います。 問題が発生した場合は、その原因がネットワークかその他のものかを判断します。1 つ以上の Terminal リーダーと POS デバイスを別のネットワークおよびインターネット接続に一時的に移動し、同じ問題がそこで発生していないかを確認することで、ネットワークを問題の原因から除外できます。このようなテストには、モバイルホットスポットが適しています。 問題が別のネットワークおよびインターネット接続で解決しない場合は、導入のコードについて追加のテストとデバッグを実行します。サポートが必要な場合は、[サポートに問い合わせて](https://support.stripe.com/contact)、技術的な詳細情報 (エラーメッセージ、ログなど) をできるだけ詳しくお知らせください。 お客様のネットワークのみで問題が発生している場合は、以下をお試しください。 - 特に最近ネットワークに関する変更があった場合は、ネットワークが上記のすべての要件を満たしていることを確認してください。 - ファイアウォールやその他のセキュリティ設定を調べて、[Stripe のインフラストラクチャー](https://docs.stripe.com/ips.md) へのアクセスがブロックされていないことを確認してください。 - Terminal リーダーと POS デバイスの両方に、別の接続を試します (WiFi からイーサネットに切り替えるなど)。 - WiFi の場合は、すべてのデバイスの信号強度が十分であることを確認してください。 - イーサネットの場合は、別のネットワークケーブルの使用をお試しください。 - スマートリーダーに、想定される IP とサブネットが割り当てられていることを確認します。 - 別の POS デバイスでスマートリーダーと Terminal SDK を使用している場合、以下を実行してください。 - POS デバイスで、`10-42-42-42.test.device.stripe-terminal-local-reader.net` を IP アドレスに解決してみます。このホスト名は IP `10.42.42.42` に解決されるはずです。別の IP に解決される場合、または DNS 解決に失敗した場合は、[Cloudflare DNS サーバー](https://1.1.1.1/dns/) (`1.1.1.1` および `1.0.0.1`) または [Google DNS サーバー](https://developers.google.com/speed/public-dns) (`8.8.8.8` および `8.8.4.4`) を使用するように POS デバイスを設定して、もう一度お試しください。 - ルーターの設定を確認して、無線 (WiFi) クライアントと有線 (イーサネット) クライアント間の接続がブロックされていないかを確認します。 - POS デバイスから Terminal リーダーの IP アドレスに ping を送信できることを確認します。 ### ブラウザのローカルネットワークアクセス Terminal JavaScript SDK を使用する場合、新しいブラウザバージョンでは、ウェブサイトがローカルネットワーク上のデバイスに接続する前に明示的な許可が必要です。POS がブラウザ上で動作し、あるブラウザではリーダーに接続できるのに別のブラウザでは接続できない場合 (例えば Safari では動作するが Chrome や Firefox では動作しない)、問題はブラウザのローカルネットワークアクセス (LNA) 権限にある可能性が高いです。 ブラウザで LNA 権限を確認して修正するには: **Chrome** Chrome バージョン 142 以降では、各サイトごとにローカルネットワークアクセスを許可するよう促されます。このプロンプトを無視またはブロックした場合は、以下を実行してください: 1. Chrome で POS のウェブサイトを開きます。 1. アドレスバーのサイト設定アイコン (URL の横にある「tune」アイコン) をクリックします。 1. **サイトの設定** を選択します。 1. **ローカルネットワーク**を見つけて**許可**に設定します。 1. ページを再読み込みします。 また、`chrome://settings/content/localNetworkAccess` にアクセスして、すべてのサイトの権限を確認・更新することもできます。 権限を付与しても Chrome が接続できない場合は、権限が付与されているように見えてもローカルネットワークリクエストがブロックされる macOS のバグの可能性があります。これを解決するには、macOS のローカルネットワーク権限データベースをクリアします: 1. Mac を[リカバリーモード](https://support.apple.com/guide/mac-help/macos-recovery-a-mac-apple-silicon-mchl82829c17/mac)で起動します。 1. **ディスクユーティリティ**を開きます。 1. 左側のペインの**Data**ボリュームをクリックし、次に**マウント**をクリックします。 1. ディスクユーティリティを終了します。 1. **ユーティリティ**\>**ターミナル**をクリックして Terminal ウィンドウを開きます。 1. 以下のコマンドを実行して、ローカルネットワーク権限データベースファイルを削除します: ``` rm /Volumes/Data/Library/Preferences/com.apple.networkextension.plist /Volumes/Data/Library/Preferences/com.apple.networkextension.uuidcache.plist ``` 1. `reboot` を実行して Mac を再起動します。 1. ログイン後、**システム設定** > **プライバシー & セキュリティ** > **ローカルネットワーク**を開き、エントリーがないことを確認します。 1. Chrome を開いて、以前失敗していた操作をやり直してみてください。 **Firefox** Firefox はローカルネットワークのアクセス制限も実装しています。これらの権限を管理するには、[Firefox で個人のデバイスおよびローカルネットワークの権限を制御する](https://support.mozilla.org/en-US/kb/control-personal-device-local-network-permissions-firefox#w_manage-access-permissions-to-your-device-and-local-network)を参照してください。 **macOS** macOS では、アプリにローカルネットワークへのアクセスを明示的に許可する必要があります。ブラウザにこの権限があるか確認するには: 1. **システム設定**を開きます。 1. **プライバシーとセキュリティ**をクリックします。 1. **ローカルネットワーク**をクリックします。 1. ブラウザがトグルを有効にした状態でリストされていることを確認してください。 **ブラウザ拡張機能** ブラウザの拡張機能は、ローカルネットワークリクエストに干渉する可能性があります。原因として拡張機能を除外するには、プライベートウィンドウまたはシークレットウィンドウでリーダーに接続してみてください。これにより、ほとんどの拡張機能がデフォルトで無効になります。