に参加して、VS Code の AI 支援開発について学びましょう。

Visual Studio Code のネットワーク接続

Visual Studio Code は Electron 上に構築されており、Chromium の持つすべてのネットワークスタック機能を活用できます。これは、VS Code ユーザーが Google Chrome で利用可能な多くのネットワークサポートを得られることも意味します。

一般的なホスト名

自動更新メカニズム、拡張機能のクエリとインストール、テレメトリーなど、VS Code 内のいくつかの機能はネットワーク通信を必要とします。これらの機能がプロキシ環境で適切に動作するには、製品が正しく設定されている必要があります。

VS Code が使用する特定のドメインを許可する必要があるファイアウォールの背後にいる場合は、通信を許可する必要があるホスト名のリストを次に示します。

  • update.code.visualstudio.com - Visual Studio Code のダウンロードおよび更新サーバー
  • code.visualstudio.com - Visual Studio Code のドキュメント
  • go.microsoft.com - Microsoft のリンク転送サービス
  • marketplace.visualstudio.com - Visual Studio Marketplace
  • *.gallery.vsassets.io - Visual Studio Marketplace
  • *.gallerycdn.vsassets.io - Visual Studio Marketplace
  • rink.hockeyapp.net - クラッシュレポートサービス
  • bingsettingssearch.trafficmanager.net - 製品内設定検索
  • vscode.search.windows.net - 製品内設定検索
  • raw.githubusercontent.com - GitHub リポジトリの生ファイルアクセス
  • vsmarketplacebadges.dev - Visual Studio Marketplace バッジサービス
  • *.vscode-cdn.net - Visual Studio Code CDN
  • vscode.download.prss.microsoft.com - Visual Studio Code ダウンロード CDN
  • download.visualstudio.microsoft.com - Visual Studio ダウンロードサーバー。一部の VS Code 拡張機能 (C++、C#) の依存関係を提供
  • vscode-sync.trafficmanager.net - Visual Studio Code 設定同期サービス
  • vscode-sync-insiders.trafficmanager.net - Visual Studio Code 設定同期サービス (Insiders)
  • vscode.dev - 拡張機能または設定同期のために GitHub または Microsoft でログインする際に使用
  • *.vscode-unpkg.net - ウェブ拡張機能を読み込む際に使用
  • default.exp-tas.com - Visual Studio Code 実験サービス。実験的なユーザーエクスペリエンスを提供するために使用

プロキシサーバーのサポート

VS Code は Google Chromium とまったく同じプロキシサーバーサポートを備えています。Chromium のドキュメントからの抜粋です

"The Chromium network stack uses the system network settings so that users and administrators can control the network settings of all applications easily. The network settings include:

 - proxy settings
 - SSL/TLS settings
 - certificate revocation check settings
 - certificate and private key stores"

これは、プロキシ設定が自動的に検出されることを意味します。

それ以外の場合は、次のコマンドライン引数を使用してプロキシ設定を制御できます。

# Disable proxy
--no-proxy-server

# Manual proxy address
--proxy-server=<scheme>=<uri>[:<port>][;...] | <uri>[:<port>] | "direct://"

# Manual PAC address
--proxy-pac-url=<pac-file-url>

# Disable proxy per host
--proxy-bypass-list=(<trailing_domain>|<ip-address>)[:<port>][;...]

これらのコマンドライン引数の詳細については、Chromium ネットワーク設定を参照してください。

認証付きプロキシ

PR #22369 の追加により、認証付きプロキシは VS Code 内でシームレスに動作するはずです。

サポートされている認証方法は次のとおりです。

  • Basic
  • Digest
  • NTLM
  • Negotiate

認証付き HTTP プロキシの背後で VS Code を使用している場合、次の認証ポップアップが表示されるはずです。

proxy

SOCKS5 プロキシ認証のサポートはまだ実装されていません。詳細は Chromium のイシュートラッカーで確認できます。

VS Code 内での HTTP プロキシ認証の詳細については、Chromium HTTP 認証を参照してください。

SSL 証明書

多くの場合、HTTPS プロキシは受信リクエストの SSL 証明書を書き換えます。Chromium は、信頼されていない証明書によって署名された応答を拒否するように設計されています。SSL 信頼性の問題が発生した場合、いくつかのオプションがあります。

  • Chromium は OS の証明書信頼インフラストラクチャを使用するため、推奨されるオプションはプロキシの証明書を OS の信頼チェーンに追加することです。詳細については、Chromium ルート証明書ポリシーのドキュメントを参照してください。
  • プロキシがlocalhostで実行されている場合は、常に--allow-insecure-localhost コマンドラインフラグを試すことができます。
  • それでもすべてうまくいかない場合は、--ignore-certificate-errors コマンドラインフラグを使用して、VS Code にすべての証明書エラーを無視するように指示できます。警告:これはセキュリティ上の問題につながるため、危険であり、推奨されません

レガシープロキシサーバーのサポート

拡張機能は、VS Code がサポートするプロキシサポートと同じ恩恵をまだ受けていません。この問題の開発状況はGitHubで確認できます。

拡張機能と同様に、いくつかの他の VS Code 機能、特に CLI インターフェースは、まだプロキシネットワークを完全にサポートしていません。CLI インターフェースとは、コマンドプロンプトまたはターミナルからcode --install-extension vscodevim.vimを実行したときに得られるものです。この問題の開発状況はGitHubで確認できます。

これら両方の制約により、http.proxyhttp.proxyStrictSSL、および http.proxyAuthorization 変数は VS Code の設定の一部として残っていますが、これらはこれら 2 つのシナリオでのみ尊重されます。

トラブルシューティング

VS Code でのネットワーク問題のトラブルシューティングに役立つリンクをいくつか示します。

© . This site is unofficial and not affiliated with Microsoft.