Entdecken Sie agentenbasierte Entwicklung –

Netzwerkverbindungen in Visual Studio Code

Visual Studio Code basiert auf Electron und profitiert von sämtlichen Netzwerk-Stack-Funktionen von Chromium. Dies bedeutet auch, dass VS Code-Benutzer einen Großteil der Netzwerkunterstützung erhalten, die in Google Chrome verfügbar ist.

Gängige Hostnamen

Eine Handvoll Funktionen in VS Code erfordern eine Netzwerkkommunikation, um zu funktionieren, wie z. B. der automatische Update-Mechanismus, das Abfragen und Installieren von Erweiterungen sowie Telemetrie. Damit diese Funktionen in einer Proxy-Umgebung ordnungsgemäß funktionieren, muss das Produkt korrekt konfiguriert sein.

Wenn Sie sich hinter einer Firewall befinden, die bestimmte von VS Code verwendete Domänen zulassen muss, finden Sie hier die Liste der Hostnamen, für die Sie die Kommunikation erlauben sollten:

  • update.code.visualstudio.com - Visual Studio Code Download- und Update-Server
  • code.visualstudio.com - Visual Studio Code Dokumentation
  • go.microsoft.com - Microsoft Link-Weiterleitungsdienst
  • marketplace.visualstudio.com - Visual Studio Marketplace
  • *.gallery.vsassets.io - Visual Studio Marketplace
  • *.gallerycdn.vsassets.io - Visual Studio Marketplace
  • rink.hockeyapp.net - Dienst zur Absturzberichterstattung
  • raw.githubusercontent.com - Zugriff auf Rohdateien von GitHub-Repositories
  • vsmarketplacebadges.dev - Visual Studio Marketplace Badge-Dienst
  • *.vscode-cdn.net - Visual Studio Code CDN
  • vscode.download.prss.microsoft.com - Visual Studio Code Download CDN
  • download.visualstudio.microsoft.com - Visual Studio Download-Server, stellt Abhängigkeiten für einige VS Code-Erweiterungen bereit (C++, C#)
  • vscode-sync.trafficmanager.net - Visual Studio Code Settings Sync-Dienst
  • vscode-sync-insiders.trafficmanager.net - Visual Studio Code Settings Sync-Dienst (Insiders)
  • vscode.dev - Wird als Fallback verwendet, wenn Sie sich bei einer Erweiterung oder bei der Einstellungssynchronisierung (Settings Sync) mit GitHub oder Microsoft anmelden (nur vscode.dev/redirect)
  • *.vscode-unpkg.net - Wird beim Laden von Web-Erweiterungen verwendet
  • default.exp-tas.com - Visual Studio Code Experiment-Dienst, wird zur Bereitstellung experimenteller Benutzererfahrungen verwendet

Proxy-Server-Unterstützung

VS Code bietet genau dieselbe Proxy-Server-Unterstützung wie Google Chromium. Hier ist ein Auszug aus der Chromium-Dokumentation:

"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"

Das bedeutet, dass Ihre Proxy-Einstellungen automatisch übernommen werden sollten.

Andernfalls können Sie die folgenden Befehlszeilenargumente verwenden, um Ihre Proxy-Einstellungen zu steuern:

# 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>][;...]

Um mehr über diese Befehlszeilenargumente zu erfahren, lesen Sie die Chromium-Netzwerkeinstellungen.

Authentifizierte Proxys

Authentifizierte Proxys sollten dank der Ergänzung durch PR #22369 nahtlos in VS Code funktionieren.

Die unterstützten Authentifizierungsmethoden sind:

  • Basic
  • Digest
  • NTLM
  • Negotiate

Wenn Sie VS Code hinter einem authentifizierten HTTP-Proxy verwenden, sollte das folgende Authentifizierungs-Popup erscheinen:

proxy

Beachten Sie, dass die Unterstützung für SOCKS5-Proxy-Authentifizierung noch nicht implementiert ist; Sie können den Issue im Chromium-Issue-Tracker verfolgen.

Siehe Chromium HTTP-Authentifizierung, um mehr über die HTTP-Proxy-Authentifizierung in VS Code zu erfahren.

SSL-Zertifikate

Oft schreiben HTTPS-Proxys die SSL-Zertifikate der eingehenden Anfragen um. Chromium wurde so konzipiert, dass Antworten abgelehnt werden, die von Zertifikaten signiert sind, denen es nicht vertraut. Falls Sie auf Probleme mit dem SSL-Vertrauen stoßen, gibt es einige Optionen für Sie:

  • Da Chromium die Zertifikats-Vertrauensinfrastruktur des Betriebssystems verwendet, ist die bevorzugte Option, das Zertifikat Ihres Proxys zur Vertrauenskette Ihres Betriebssystems hinzuzufügen. Weitere Informationen finden Sie in der Dokumentation zur Chromium Root Certificate Policy.
  • Wenn Ihr Proxy auf localhost läuft, können Sie immer das Befehlszeilen-Flag --allow-insecure-localhost ausprobieren.
  • Wenn alles andere fehlschlägt, können Sie VS Code anweisen, alle Zertifikatsfehler mithilfe des Befehlszeilen-Flags --ignore-certificate-errors zu ignorieren. Warnung: Dies ist gefährlich und nicht empfohlen, da es die Tür für Sicherheitsrisiken öffnet.

Hinweis für Linux-Benutzer: Um das Zertifikat Ihres Proxys unter Linux hinzuzufügen, müssen Sie es sowohl dem System-Trust-Store als auch dem NSS-Trust-Store hinzufügen. Die genauen Schritte variieren je nach Distribution:

  • Für Ubuntu/Debian: Kopieren Sie das Zertifikat nach /usr/local/share/ca-certificates/ und führen Sie sudo update-ca-certificates aus.
  • Für RHEL/CentOS/Fedora: Verwenden Sie sudo trust anchor --store <Zertifikatsdatei> oder legen Sie es unter /etc/pki/ca-trust/source/anchors/ ab und führen Sie sudo update-ca-trust aus.
  • Verwenden Sie zusätzlich certutil -A -n "ProxyCA" -t "CT,," -i <Zertifikatsdatei> -d sql:$HOME/.pki/nssdb, um es dem NSS-Trust-Store hinzuzufügen.

Legacy-Proxy-Server-Unterstützung

Erweiterungen profitieren noch nicht von der gleichen Proxy-Unterstützung wie VS Code selbst. Sie können die Entwicklung dieses Issues auf GitHub verfolgen.

Ähnlich wie bei Erweiterungen unterstützen einige andere VS Code-Funktionen die Proxy-Vernetzung noch nicht vollständig, namentlich die CLI-Schnittstelle. Die CLI-Schnittstelle erhalten Sie, wenn Sie code --install-extension vscodevim.vim in einer Eingabeaufforderung oder einem Terminal ausführen. Sie können die Entwicklung dieses Issues auf GitHub verfolgen.

Aufgrund dieser beiden Einschränkungen sind die Variablen http.proxy In VS Code öffnen In VS Code Insiders öffnen , http.proxyStrictSSL In VS Code öffnen In VS Code Insiders öffnen und http.proxyAuthorization In VS Code öffnen In VS Code Insiders öffnen zwar weiterhin Teil der VS Code-Einstellungen, werden aber nur in diesen beiden Szenarien berücksichtigt.

Fehlerbehebung

Hier sind einige hilfreiche Links, die Ihnen bei der Fehlerbehebung von Netzwerkproblemen in VS Code helfen könnten:

© . This website operates independently and is not affiliated with or endorsed by Microsoft. All brand names, logos, and trademarks are the property of their respective owners.