Skip to main content

GitHub Copilot のネットワークエラーのトラブルシューティング

プロキシとカスタム認証に関連する一般的なエラーを解決します。

この機能を使用できるユーザーについて

GitHub Copilot は、GitHub Copilot Individual の個人用アカウントまたはGitHub Copilot Businessの組織アカウントによって管理できます。

確認が取れている学生、教師、およびパブリックのオープン ソース プロジェクトのメンテナンス担当者は、GitHub Copilot を無料で使うことができます。 学生、教師、または一般的なオープンソース プロジェクトのメンテナンス担当者ではない場合にも、1 回限りの 30 日間の試用版で GitHub Copilot を無料で試すことができます。 無料試用版の後、継続して使用するために有料サブスクリプションが必要になります。詳細については、「GitHub Copilot の課金について」を参照してください。

会社の備品で作業し、会社のネットワークに接続している場合は、VPN または HTTP プロキシ サーバーを介してインターネットに接続している可能性があります。 このような種類のネットワーク セットアップでは、GitHub Copilot が GitHub のサーバーに接続できない場合があります。 CodeQL CLI のプロキシを設定するオプションについて詳しくは、「GitHub Copilot のネットワーク設定の構成」をご覧ください。

この記事では、HTTP プロキシとカスタム認証に関連するよくある問題に関するガイダンスを提供します。 ファイアウォールを使用する場合、これは GitHub Copilot の接続にも干渉する可能性があります。 詳しくは、「GitHub Copilot のファイアウォール設定のトラブルシューティング」を参照してください。

ネットワークの問題点を診断する

ネットワークの問題点のトラブルシューティングを行っている場合は、接続をテストするための curl 要求を行うのに役立つ場合があります。 --verbose フラグを追加すると、これらの要求により、問題点を診断したり、会社の IT 部署や GitHub Support と共有したりするための詳細情報が提供されます。 GitHub Supportに問い合わせるには、GitHub Support ポータル にアクセスしてください。

環境から少なくとも一部の GitHub のエンドポイントにアクセスできるかどうかを確認するには、コマンド ラインから次のコマンドを実行できます。

Shell
curl --verbose https://copilot-proxy.githubusercontent.com/_ping

接続できる場合は、HTTP 200 応答を受け取ります。

HTTP プロキシ経由で接続していることがわかっている場合は、プロキシ経由で要求が成功したかどうかを確認できます。 次の例では、YOUR-PROXY-URL:PORT をプロシキの詳細に置き換えます。

Shell
curl --verbose -x http://YOUR-PROXY-URL:PORT -i -L https://copilot-proxy.githubusercontent.com/_ping

「認証の失効」に関連するエラーを受け取った場合は、--insecure フラグを指定して要求を再試行できます。 --insecure フラグが追加されたときにのみ要求が成功した場合、認証エラーを無視した場合にのみ GitHub Copilot が正常に接続することを示している可能性があります。 詳細については、「認証に関連するエラーのトラブルシューティング」を参照してください。

エディターの Copilot Chat で特に問題が発生している場合は、上記 curl コマンドを実行しますが、https://copilot-proxy.githubusercontent.com/_ping の代わりに https://api.githubcopilot.com/_ping を使用してください。

注: 2024 年 2 月 1 日に、https://copilot-proxy.githubusercontent.com ‭‬を通じてルーティングされていた Copilot Chat API エンドポイントは非推奨となりました。 代わりに、これらの要求は https://api.githubcopilot.com/ を通過します。 最新バージョンの Copilot 拡張機能を使用していることを確認し、ファイアウォールとネットワーク設定で https://api.githubcopilot.com への通信が許可されていることを確認してください。

接続できず、curl 要求がエラーの特定に役立たない場合は、エディターで詳細な診断ログを収集するのに役立つ場合があります。 会社の IT 部署または GitHub Support と連携している場合、これらの診断を共有すると、エラーの解決に役立つ場合があります。 エディターでデバッグ ログを有効にすると、より具体的な情報を共有するのに役立ちます。 詳しくは、「環境での GitHub Copilot のログの表示」を参照してください。

プロキシ エラーのトラブルシューティング

プロキシのセットアップに問題がある場合は、次のエラー GitHub Copilot could not connect to server. Extension activation failed: "read ETIMEDOUT" or "read ECONNRESET"が表示されることがあります。 このエラーは、さまざまなネットワークの問題点によっても発生する可能性があります。

プロキシ経由で接続していることがわかっている場合は、環境内でプロキシが正しく構成されていることを確認してください。 詳しくは、「GitHub Copilot のネットワーク設定の構成」を参照してください。

GitHub Copilot は、カスタム コードを使用してプロキシに接続します。 つまり、エディターでサポートされているプロキシセットアップは、必ずしも GitHub Copilot でサポートされるとは限りません。 プロキシに関連するエラーのよくある原因は次のとおりです。

  • プロキシの URL が開始 https://された場合、現在、GitHub Copilot ではサポートされていません。
  • プロキシに対する認証が必要な場合があります。 GitHub Copilot では、基本認証またはKerberosでの認証がサポートされます。 Kerberos を使用している場合は、プロキシ サービスの有効なチケットがあり、サービスに正しいサービスプリンシパル名を使用していることを確認してください。 詳しくは、「GitHub Copilot のネットワーク設定の構成」を参照してください。
  • GitHub Copilot は、カスタム認証を拒否する場合があります。 詳細については、「認証に関連するエラーのトラブルシューティング」を参照してください。

プロキシのセットアップによっては、「認証シグネチャ失敗」、「カスタム認証」、「最初の認証を確認できない」 などのエラーが発生する場合があります。 通常、これらのエラーは、カスタム認証を使用してセキュリティ保護接続をインターセプトして検査する企業向けプロキシのセットアップによって発生します。

認証に関連するエラーを解決する方法は次のとおりです。

  • セキュリティで保護された接続をインターセプトしない別のプロキシを構成します。

  • 企業プロキシを使っている場合は、IT 部署に連絡し、セキュリティ保護接続をインターセプトしないようにプロキシを構成できるかどうかを確認してください。

  • カスタム認証がオペレーティング システムの信頼ストアに正しくインストールされていることを確認してください。 詳しくは、「GitHub Copilot のネットワーク設定の構成」を参照してください。 認証がコンピューターにインストールされていても、GitHub Copilot で検出されない場合は、GitHub Copilot が認証を検索するために使用するメカニズムを把握するのに役立つ場合があります。

    • Windows では、Copilot は win-ca パッケージを使用します。
    • macOS では、Copilot は mac-ca パッケージを使用します。
    • Linux では、Copilot は標準の OpenSSL ファイル /etc/ssl/certs/ca-certificates.crt/etc/ssl/certs/ca-bundle.crt を確認します。
  • 認証エラーを無視するように GitHub Copilot を構成します。 プロキシ設定で、Visual Studio Code の [Proxy Strict SSL] の選択を解除するか、JetBrains IDE で [信頼されていない認証を自動的に受け入れる] を選択できます。 詳しくは、「GitHub Copilot のネットワーク設定の構成」を参照してください。

    警告: セキュリティの問題が発生する可能性があるため、認証エラーを無視することはお勧めしません。