在防火墙或代理服务器后面安装和使用 Visual Studio 和 Azure 服务
如果你或贵组织使用防火墙或代理服务器等安全措施,则会有可能需要将其添加到“允许列表”的域 URL,以及可能需要打开的端口和协议,以便在安装和使用 Visual Studio 以及 Azure 服务时获得最佳体验。
安装 Visual Studio :这些表包括要添加到允许列表的域 URL,以便你可访问所需的所有组件和工作负载。
使用 Visual Studio 和 Azure 服务 :此表包括要添加到允许列表的域 URL 以及要打开的端口和协议,以便你可访问所需的所有功能和服务。
安装 Visual Studio
要添加到允许列表的 URL
因为 Visual Studio 安装程序从各个域及其下载服务器下载文件,以下是你可能需要在 UI 或部署脚本中以可信方式添加到允许列表的域 URL。
Microsoft 域
Domain | 目标 |
---|---|
go.microsoft.com | 安装程序 URL 解析 |
aka.ms | 安装程序 URL 解析 |
download.visualstudio.microsoft.com | 安装包下载位置 |
download.microsoft.com | 安装包下载位置 |
download.visualstudio.com | 安装包下载位置 |
dl.xamarin.com | 安装包下载位置 |
xamarin-downloads.azureedge.net | Android SDK 包下载列表位置 |
marketplace.visualstudio.com | Visual Studio 扩展下载位置 |
*.gallerycdn.vsassets.io | Visual Studio 扩展下载位置 |
visualstudio.microsoft.com | 文档位置 |
learn.microsoft.com | 文档位置 |
msdn.microsoft.com | 文档位置 |
www.microsoft.com | 文档位置 |
*.windows.net | 登录位置 |
*.microsoftonline.com | 登录位置 |
*.live.com | 登录位置 |
github-releases.githubusercontent.com | Linux 开发 |
objects.githubusercontent.com | Windows 生成工具 |
github.com | 适用于 Windows 的 Git 和 Windows 生成工具 |
az837173.vo.msecnd.net | 使用 Azure 存储进行开发 |
非 Microsoft 域
Domain | 安装这些工作负载 |
---|---|
archive.apache.org | 使用 JavaScript 的移动开发 (Cordova) |
cocos2d-x.org | 使用 C++ 的游戏开发 (Cocos) |
download.epicgames.com | 使用 C++ 的游戏开发 (Unreal Engine) |
launcher-public-service-prod06.ol.epicgames.com | 使用 C++ 的游戏开发 (Unreal Engine) |
download.oracle.com | 使用 JavaScript 的移动开发 (Java SDK) 使用 .NET 的移动开发 (Java SDK) |
public-cdn.cloud.unity3d.com | 使用 Unity 的游戏开发 (Unity) |
download.unity3d.com | 使用 Unity 的游戏开发 (Unity) |
netstorage.unity3d.com | 使用 Unity 的游戏开发 (Unity) |
dl.google.com | 使用 JavaScript 的移动开发(Android SDK 和 NDK、仿真器) 使用 .NET 的移动开发(Android SDK 和 NDK、仿真器) |
ib-downloads-official.s3.amazonaws.com | 使用 C++ 的游戏开发 (IncrediBuild) |
www.incredibuild.com | 使用 C++ 的游戏开发 (IncrediBuild) |
incredibuildvs2017i.azureedge.net | 使用 C++ 的游戏开发 (IncrediBuild) |
www.python.org | Python 开发 (Python) 数据科学和分析应用程序 (Python) |
developerservices2.apple.com | Xamarin.iOS provisioning |
developer.apple.com | Xamarin.iOS provisioning |
appstoreconnect.apple.com | Xamarin.iOS provisioning |
idmsa.apple.com | Xamarin.iOS provisioning |
akamaized.net | 内容交付网络 (Akamai Technologies) |
developer.arm.com | ARM 开发 |
使用 Visual Studio 和 Azure 服务
注意
使用 Visual Studio 17.8,我们更新了 Web 请求中默认代理凭据的配置过程。 若要在此更新后启用默认代理凭据,请创建一个名为 VS_USE_DEFAULTPROXY
的新环境变量,将其值 true
设置为,然后重启 Visual Studio。
要添加到允许列表的 URL 和要打开的端口和协议
为了确保在防火墙或代理服务器后使用 Visual Studio 或 Azure 服务时有权访问所需的一切,下面列出了应添加到允许列表的 URL,以及不妨打开的端口和协议。
服务或方案 | DNS 终结点 | 协议/端口 | 说明 |
---|---|---|---|
URL 解析 |
go.microsoft.com aka.ms |
用于缩短 URL,然后解析为更长的 URL | |
起始页 | vsstartpage.blob.core.windows.net | 443 | 用于显示起始页上显示的开发人员新闻(仅 Visual Studio 2017) |
起始页 | vsstartpagenewsfeed.azureedge.net | 443 | 用于显示起始页上显示的开发人员新闻(Visual Studio 2019 及更高版本) |
目标 通知 服务 |
targetednotifications-tm.trafficmanager.net www.research.net |
443 443 |
用于将全局通知列表筛选为一个仅适用于特定类型计算机/使用方案的列表 |
扩展 更新检查 |
marketplace.visualstudio.com *.windows.net *.microsoftonline.com *.live.com |
443 | 用于在已安装扩展有可用更新时提供通知 用作登录位置 |
AI 项目 集成 |
az861674.vo.msecnd.net | 443 |
用于配置新项目,以将使用情况数据发送到你注册的 Application Insights 帐户 |
代码透镜 | codelensprodscus1su0.app。 codelens.visualstudio.com |
443 | 用于在编辑器中提供有关上次更新文件的时间、更改的时间线、更改与之关联的工作项、作者等信息 |
试验性 功能启用 |
visualstudio-devdiv-c2s.msedge.net | 80 | 用于激活实验性新功能或功能更改 |
标识“徽章” (用户名和虚拟形象) 和 漫游设置 |
app.vssps.visualstudio.com app.vsspsext.visualstudio.com app.vssps.visualstudio.com ns-sb2-prod-ch1-002.cloudapp.net az700632.vo.msecnd.net api.vstsusers.visualstudio.com/profiles/* |
443 | 用于在 IDE 中显示用户的名称和虚拟形象 用于确保设置更改从一台计算机漫游到另一台计算机 |
远程设置 | az700632.vo.msecnd.net | 443 | 用于关闭已知会在 Visual Studio 中引发问题的扩展 |
Windows 工具 | developer.microsoft.com dev.windows.com appdev.microsoft.com |
https/443 | 用于 Windows 应用商店方案 |
JSON 架构 发现 JSON 架构 定义 JSON 架构 支持对 使用 Azure 资源 |
json.schemastore.org schemastoreorg.azurewebsites.net json-schema.org schema.management.azure.com |
http/80 https/443 http/80 https/443 |
用于发现和下载 JSON 架构,用户在编辑 JSON 文档时可能会用到此架构 用于获取 JSON 的元验证架构 用于获取 Azure 资源管理器部署模板的当前架构 |
NPM 包 发现 |
Skimdb.npmjs.com Registry.npmjs.org Api.npms.io |
https/443 http/80 & https/443 https/443 |
搜索 NPM 包的必要条件,并用于 Web 项目中客户端脚本包的安装 |
Bower 包 图标 Bower 包 search |
Bower.io bowercache.azurewebsites.net go.microsoft.com Registry.bower.io |
http/80 https/443 http/80 https/443 |
提供默认的 Bower 包图标 提供搜索 Bower 包的能力 |
NuGet NuGet 程序包 发现 |
api.nuget.org www.nuget.org nuget.org azuresearch-usnc.nuget.org azuresearch-ussc.nuget.org licenses.nuget.org nuget.cdn.azure.cn azuresearch-ea.nuget.org azuresearch-sea.nuget.org crl3.digicert.com crl4.digicert.com ocsp.digicert.com cacerts.digicert.com |
https/443 http/80 & https/443 |
用于验证签名的 NuGet 包。 搜索 NuGet 包和版本的必要条件 |
GitHub 存储库信息 | api.github.com | https/443 | 获取有关 Bower 包其他信息的必要条件 |
Web Linters | Eslint.org www.Bing.com www.coffeelint.org |
http/80 | |
Cookiecutter 资源管理器模板 发现 Cookiecutter 资源管理器项目 创建 |
api.github.com raw.githubusercontent.com go.microsoft.com pypi.org pypi.python.org |
https/443 |
用于从我们建议的源和 github 存储库发现联机模板 用于从 cookiecutter 模板创建一个项目,要求从 Python 包索引 (PyPI) 一次性按需安装 cookiecutter Python 包 |
Python 包 发现 Python 包 管理 新的 Python 项目 模板 |
pypi.org pypi.python.org bootstrap.pypa.io go.microsoft.com |
https/443 | 提供搜索 pip 包的能力 用于自动安装 pip(如缺失) 用于将以下 Python 项目模板解析为 cookiecutter 模板 URL: - 分类器项目 - 聚类分析项目 - 回归项目 - 使用 PyKinect 的 PyGame - Pyvot 项目 |
Office Web Add-in — 外接程序 file:/// 确认 服务 |
verificationservice.osi.office.net | https/443 | 用于验证 Office Web 外接程序的清单 |
SharePoint 和 Office 外接程序 |
sharepoint.com microsoft.com/microsoft-365 microsoftonline.com outlook.com |
https/443 | 用于将 SharePoint 和 Office 加载项发布到 SharePoint Online 和 Microsoft 365 并对其进行测试 |
工作流管理器 测试服务 主机 |
http/12292 | 自动创建的防火墙规则,用于测试带工作流的 SharePoint 外接程序 | |
自动收集 可靠性统计信息 和其他 客户体验 改善计划 (CEIP) 面向 Azure SDK 和 面向 SQL 工具 |
vortex.data.microsoft.com dc.services.visualstudio.com |
https/443 | 用于将可靠性统计信息(故障/无响应数据)从用户发送到 Microsoft。 在启用了 Windows 错误报告的情况下,仍将上传实际故障/无响应转储;只会禁止统计信息; 用于向 Visual Studio 显示 Azure Tools SDK 扩展的使用模式,并向 Visual Studio 显示 SQL 工具的使用模式 |
Visual Studio 客户体验 改善计划 (CEIP) PerfWatson.exe |
vortex.data.microsoft.com dc.services.visualstudio.com visualstudio-devdiv-c2s.msedge.net az667904.vo.msecnd.net scus-breeziest-in.cloudapp.net mobile.events.data.microsoft.com events.data.microsoft.com |
https/443 | 用于收集使用模式和错误日志 用于跟踪 UI 冻结问题 |
创建和 管理 Azure 资源 |
management.azure.com management.core.windows.net |
https/443 | 用于创建 Azure 网站或其他资源,以支持 Web 应用、Azure Functions 或 WebJobs 的发布 |
更新的 Web 发布工具 检查和扩展 建议 |
marketplace.visualstudio.com | https/443 | 用于检查已更新发布工具的可用性。 如果禁用,则可能不会显示用于 Web 发布的潜在建议扩展 |
更新的 Azure 资源 创建终结点信息 |
\* .blob.core.windows.net | https/443 | 用于更新在为某些 Azure 服务创建 Azure 资源时使用的终结点。 如果禁用,则改为使用在终结点位置中最后一次下载或生成的资源 |
远程调试和 远程分析 Azure 网站 |
*.cloudapp.net *.azurewebsites.net |
4022 | 用于将远程调试器附加到 Azure 网站。 如果禁用,将远程调试器附加到 Azure 网站将不起作用 |
Active Directory 图形 |
graph.windows.net | https/443 | 用于预配新的 Microsoft Entra 应用程序。 也由 Microsoft 365 MSGraph(已连接的服务提供程序)使用 |
Azure Functions CLI 更新 勾选标记 |
functionscdn.azureedge.net | https/443 | 用于检查 Azure Functions CLI 的更新版本。 如果禁用,将改为使用 CLI 的缓存副本(或 Azure Functions 组件提供的副本) |
Cordova | npmjs.org gradle.org |
http/80 & https/443 |
HTTP 用于在生成期间下载 Gradle;HTTP 用于包含项目中的 Cordova 插件 |
Cloud Explorer | 1. <clusterendpoint> Service Fabric 2. <管理终结点> 常规 Cloud Exp 3. <图形终结点> 常规 Cloud Exp 4. <存储帐户终结点> 存储节点 5. <Azure 门户 URL> 常规 Cloud Exp 6. <密钥保管库终结点> Azure 资源管理器 VM 节点 7. <PublicIPAddressOfCluster> Service Fabric 远程调试和 ETW 跟踪 |
1. https/19080 2. https/443 3. https/443 4. https/443 5. https/443 6. https/443 7. tcp/dynamic |
1.示例:test12.eastus.cloudapp.com 2.检索订阅并检索/管理 Azure 资源 3.检索 Azure Stack 订阅 4.管理存储资源(示例:mystorageaccount.blob.core.windows.net) 5.“在门户中打开”上下文菜单选项(在 Azure 门户中打开资源) 6.创建并使用 Key Vault 进行 VM 调试(示例:myvault.vault.azure.net) 7.基于群集中的节点数和可用端口动态分配端口块。 一个端口块将尝试获取至少 10 个端口的 3 倍数量的节点。 对于流式处理跟踪,将尝试从 810 获取端口块。 如果任何端口块都已被使用,则尝试获取下一个端口块,依次类推。 (如果负载均衡器为空,则很可能使用来自 810 的端口) 对于调试是同样道理,将保留四个端口块集: - connectorPort: 30398, - forwarderPort: 31398, - forwarderPortx86:31399, - fileUploadPort:32398 |
云服务 | 1.RDP 2. core.windows.net 3. management.azure.com management.core.windows.net 4. *.blob.core.windows.net *.queue.core.windows.net *.table.core.windows.net 5. portal.azure.com 6. <用户的云服务>.cloudapp.net <用户的 VM>.<区域>.azure.com |
1. rdp/3389 2. https/443 3. https/443 4. https/443 5. https/443 6. tcp a) 30398 b) 30400 c) 31398 d) 31400 e) 32398 f) 32400 |
1.云服务 VM 的远程桌面 2.专用诊断配置的存储帐户组件 3.Azure 门户 4.服务器资源管理器 - Azure 存储 * 是客户命名的存储帐户 5.用于打开门户/下载订阅证书/发布设置文件的链接 6. a) 用于云服务和 VM 远程调试的连接器本地端口 6. b) 用于云服务和 VM 远程调试的连接器公用端口 6. c) 用于云服务和 VM 远程调试的转发器本地端口 6. d) 用于云服务和 VM 远程调试的转发器公用端口 6. e) 用于云服务和 VM 远程调试的文件上传程序本地端口 6. f) 用于云服务和 VM 远程调试的文件上传程序公用端口 |
Service Fabric | 1. learn.microsoft.com aka.ms go.microsoft.com 2. vssftools.blob.core.windows.net Vault.azure.com Portal.azure.com 3. * vault.azure.net 4. app.vsaex.visualstudio.com * .vsspsext.visualstudio.com clouds.vsrm.visualstudio.com clouds.visualstudio.com app.vssps.visualstudio.com * .visualstudio.com |
https/443 | 1.文档 2.创建群集功能 3.* 是 Azure Key Vault 名称(示例:test11220180112110108.vault.azure.net 4. * 为动态(示例:vsspsextprodch1su1.vsspsext.visualstudio.com) |
快照 调试器 |
1. go.microsoft.com 2. management.azure.com 3. *.azurewebsites.net 4. *.scm.azurewebsites.net 5. api.nuget.org/v3/index.json 6.远程服务/服务器 IP 地址/FQDN |
1. https/443 2. https/443 3. http/80 4. https/443 5. https/443 6.Concord/ 4022(Visual Studio 从属版本) |
1.查询 .json 文件的应用服务 SKU 大小 2.各种 Azure RM 调用 3.站点预热调用渠道 4.客户的目标应用服务 Kudu 终结点 5.查询 nuget.org 中发布的站点扩展版本 6.远程调试 |
Azure 流分析 HDInsight |
Management.azure.com | https/443 | 用于查看、提交、运行和管理 ASA 作业 用于浏览 HDI 群集,以及提交、诊断和调试 HDI 作业 |
Azure Data Lake | *.azuredatalakestore.net *.azuredatalakeanalytics.net |
https/443 | 用于编译、提交、查看、诊断和调试作业;用于浏览 ADLS 文件;用于上传和下载文件 |
打包服务 | [account].visualstudio.com [account].*.visualstudio.com *.blob.core.windows.net registry.npmjs.org nodejs.org dist.nuget.org nuget.org |
https/443 | 只有某些生成任务方案(例如 NuGet 工具安装程序、节点工具安装程序)或在计划通过 Feeds 使用公共上游时,才需要 *.npmjs.org、*.nuget.org 和 *.nodejs.org。 要使用打包服务的核心功能,还需具备其他三个域。 |
Azure DevOps Services | *.vsassets.io static2.sharepointonline.com dev.azure.com |
用于连接 Azure DevOps Services | |
Azure 服务总线 | *.servicebus.windows.net | ampq/5671 和 5672、 sbmp/9350-9354、 http/80、 https/443 |
用于创建队列、主题和订阅。 还用来与服务总线队列和主题收发消息。 |
Azure Cosmos DB | *.documents.azure.com | https/443 | 用于调用核心文档数据库 API。 |
开发人员社区 | sendvsfeedback2.azurewebsites.net/api | https/443 | 用于调用开发者社区反馈工具 API(我的问题、搜索、投票、评论、提交、上传、恢复) |
Intellicode | *.intellicode.vsengsaas.visualstudio.com | https/443 | 用于调用 Intellicode API |
Live Share | *.liveshare.vsengsaas.visualstudio.com | https/443 | 用于调用 Live Share API |
GitHub Codespaces | *.online.visualstudio.com | https/443 | 用于调用 GitHub Codespaces API |
JavaScript 自动类型获取 | registry.npmjs.org | https/443 | 用于安装 TypeScript 类型定义,为常用 JavaScript 库提供 IntelliSense |
Visual Studio 订阅许可服务 | 1. app.vssps.visualstudio.com/apis/ Licensing/ClientRights 2. api.subscriptions.visualstudio.microsoft.com/ Me/Entitlements/IDEBenefits |
https/443 | 联机激活的许可 |
调试器 | 1. vsdebugger.blob.core.windows.net vsdebugger.azureedge.net 2. download.visualstudio.com/*/ onecore.msvsmon.*.zip 3. referencesource.microsoft.com/symbols 4. symbols.nuget.org/download/symbols 5. visualstudio.com 6. msdl.microsoft.com/download/symbols |
https/443 | 1. 用于下载在 Unix/macOS 上通过 SSH 进行 .NET Core 调试所需的调试器位 2. 用于下载远程 Windows Docker 容器调试的调试器位 3.用于 .NET Framework 源单步执行 4. (如果用户选择加入)用于下载已发布到 nuget.org 符号服务器的符号。 5.(如果用户选择加入)用于下载 MS 符号和二进制文件,还可能需要调试转储中的托管代码 |
GitHub Codespaces | *.online.visualstudio.com | https/443 | 用于调用 GitHub Codespaces API |
Xamarin Android 应用发布 | *.googleapis.com play.google.com accounts.google.com |
https/443 | 用于与 Google Play Store 服务交互,以便直接从 Visual Studio 发布/上传 Xamarin Android 应用程序。 |
Visual Studio 搜索服务 | data-ai.microsoft.com/search | https/443 | 用于在 Ctrl+Q 搜索框中提供启用 AI 的 Visual Studio 搜索服务 |
Azure 容器注册表 | *.azurecr.io | https/443 | 访问 Azure 上托管的容器注册表,用于配置 CICD 管道 |
Visual Studio for Mac 更新程序 | software.xamarin.com | https/443 | 用于获取可用更新的列表 |
Visual Studio for Mac 错误报告 | nw-umwatson.events.data.microsoft.com | https/443 | 用于收集故障、无响应和延迟的可靠性报告 |
与网络相关错误的疑难解答
有时,当你在防火墙或代理服务器后安装或使用 Visual Studio 时,可能会遇到与网络或代理相关的错误。 有关此类错误消息的解决方案的详细信息,请参阅安装或使用 Visual Studio 时与网络相关错误的疑难解答页面。
获取支持
对于与安装相关的问题,我们提供安装聊天(仅限英语)支持选项。
下面是另外几个支持选项:
- 通过报告问题工具(会出现在 Visual Studio 安装程序和 Visual Studio IDE 中)向我们报告产品问题。
- 在 Visual Studio 开发人员社区中,可提出功能建议、跟踪产品问题,并能找到答案。
- 使用你的 GitHub 帐户,通过 Gitter 社区的 Visual Studio 对话与我们和其他 Visual Studio 开发人员进行交流。