質問
AR10 をイニシエーターとして remote.it 接続を設定し、remoteit status で ready と表示されているにもかかわらず、生成された URL にブラウザでアクセスすると、
「接続が拒否されました」
「Client sent an HTTP Request to an HTTPS Server」
と表示され、GUI にアクセスできません。なぜでしょうか。
回答
この事象は、主に アクセス方法の誤り によって発生します。remoteit status が ready であっても、ブラウザからアクセスする際に URL の指定方法 や HTTP / HTTPS の使い分け が正しくないと、GUI は表示されません。
原因
主な原因は次の 2 点です。
1. HTTP と HTTPS の不一致
remote.it で HTTP タイプ のサービスを作成していても、実際には remote.it 側で HTTPS として扱われる 場合があります。
このため、http:// でアクセスすると、
「Client sent an HTTP Request to an HTTPS Server」
といったエラーが発生します。
2. アクセス先の指定誤り
イニシエーター方式では、LAN 内の PC からアクセスする先は、remote.it が生成したクラウド側の URL そのものではなく、イニシエーター機器の LAN 側 IP アドレスと指定ポート です。
そのため、ブラウザには remote.it の Connection Address ではなく、次の形式でアクセスする必要があります。
https://<イニシエーターLAN側IP>:<指定ポート>/
対象機器・前提
イニシエーター:AG / AX / AR / AC シリーズ
ターゲット:AG / AX / AR / AC シリーズ
ブラウザを使用する PC は、イニシエーターの LAN 側 に接続していること
ターゲット側で、remote.it の初期設定(デバイス登録・サービス作成)が完了していること
想定構成(例)
PC(192.168.0.x)
│ *同一セグメント
├─── (192.168.0.254) AR10【イニシエーター】
│
└─── インターネット ──【remote.it経由】── ターゲット装置(GUI/HTTP(S)待受)
対処方法
1. ターゲット側の Service ID を確認する
remote.it のデスクトップアプリなどで、接続先サービスの Service ID を確認します。
例:90:00:00:00:00:25:C0:31
2. イニシエーター側で接続を作成する
AR10 のコンソール(amsh)で、次のコマンドを実行します。
execute remoteit connection add --id <ServiceID> --port <任意ポート> --ip <イニシエーターLAN側IP>
実行例:
execute remoteit connection add --id 90:00:00:00:00:25:C0:31 --port 34567 --ip 192.168.0.254
execute remoteit status
connection の state が ready になっていることを確認してください。
3. ブラウザでは HTTPS でアクセスする
ブラウザでは、次の形式でアクセスしてください。
https://<イニシエーターLAN側IP>:<指定ポート>/
例:
https://192.168.0.254:34567/
自己署名証明書などによりブラウザ警告が表示される場合がありますが、内容を確認のうえ続行してください。
HTTP でアクセスしたい場合
HTTP でアクセスしたい場合は、remote.it 側で HTTP タイプではなく TCP タイプのサービス を作成し、ターゲット側の 80 番ポート を指定してください。
その場合、ブラウザのアクセス先は次の形式になります。
http://<イニシエーターLAN側IP>:<指定ポート>/
コメント
0件のコメント
サインインしてコメントを残してください。