一、故障现象
Windows 11 中设置中点击 Microsoft 账号登录后,窗口一直显示“请稍等”,无法进入账号输入页面。Edge 右上角登录 Microsoft 账号也存在相同现象;直接访问微软登录页面时,页面长时间白屏。
图1 Microsoft 账号登录窗口持续转圈,页面主体始终无法完成加载。
图2 直接访问 login.live.com 仍然白屏,浏览器长时间停留在“正在建立安全连接”。
现场此前已经尝试过修改 DNS、恢复系统更新,但故障没有变化。这个现象很容易让人第一时间怀疑 Windows 账号组件、Edge 或系统镜像。
二、先定域:是不是 Microsoft 账号组件本身坏了?
先检查 Windows 与 Microsoft 账号登录直接相关的服务和系统包:
Microsoft Account Sign-in Assistant (wlidsvc):正常运行;Web Account Manager (TokenBroker):正常运行;Credential Manager (VaultSvc):正常运行;Microsoft.AccountsControl:存在且状态正常;Microsoft.AAD.BrokerPlugin:存在且状态正常。
这一步没有发现“服务被禁用”“组件被精简掉”或明显注册异常,因此没有直接去重注册 WAM、清理 TokenBroker 或重装系统。
排障原则:服务存在且正常运行,只能说明“账号组件缺失”的概率下降,不能说明登录链路一定正常。下一步需要把“系统组件”和“网络访问”拆开验证。
三、基础 HTTPS 是不是整体坏了?
检查当前用户代理、Edge 代理策略以及 Windows/.NET HTTPS 路径:
- 当前用户未启用显式代理;
- Edge 未发现异常代理策略;
Invoke-WebRequest https://login.live.com/返回HTTP 200;curl访问login.live.com可以完成 DNS、TCP 443、TLS 握手并收到 HTTP 响应。
图3 代理未见异常,且 login.live.com 的基础 HTTPS 请求能够返回 HTTP 200。图中仅保留非敏感输出。
这组结果非常关键:基础 DNS、TCP 443、TLS 与 HTTPS 并没有整体失效。也就是说,问题不是“这台机器完全访问不了微软”,而更像是登录流程后续依赖的某个资源访问失败。
四、排除 Edge Profile、扩展和协议差异
为了避免把浏览器自身问题和网络问题混在一起,又做了几个低风险 A/B:
- 使用全新的临时 Edge Profile;
- 禁用浏览器扩展;
- 禁用 QUIC;
- 再禁用 HTTP/2,仅走 HTTP/1.1。
结果全部一样:Microsoft 登录页依旧无法正常渲染。
因此可明显降级的方向:原 Edge Profile 损坏、扩展程序干扰、单纯 QUIC 兼容问题、单纯 HTTP/2 异常。
五、关键突破:Edge NetLog 找到真正失败的依赖域名
到这里继续猜已经没有价值,于是直接抓 Edge NetLog。
NetLog 显示:https://login.live.com/主页面本身可以正常返回,但页面随后会从logincdn.msauth.net加载关键 JS/JSON 资源。真正的失败发生在这里:
login.live.com └─ 主 HTML:正常返回 └─ logincdn.msauth.net └─ 13.107.246.74:443 └─ TCP connect timeout └─ 关键 JS / JSON 无法加载 └─ 登录页白屏 / 持续转圈为了避免只依赖浏览器日志,又使用系统命令复核同一个目标:
Resolve-DnsName logincdn.msauth.net -Type A Test-NetConnection logincdn.msauth.net -Port 443 curl.exe -I -v --connect-timeout 10 --max-time 15 https://logincdn.msauth.net/...结果完全一致:logincdn.msauth.net解析到13.107.246.74后,TCP 443 无法建立连接。
图4 关键证据:Test-NetConnection 与 curl 对同一 Microsoft CDN 目标均复现 TCP 443 超时。
这里已经基本定性:不是 Microsoft 账号组件坏了,而是登录页面依赖的 Microsoft CDN 资源根本拿不到。主站能打开,不代表整个登录链路都通。
六、继续排除本机阻断:Windows 防火墙与网络过滤组件
既然已经确定某个公网目标 TCP 443 超时,下一步就是判断“本机在拦”还是“网络出口在拦”。
| 检查项 | 结果 | 意义 |
|---|---|---|
| Windows Defender Firewall | 默认出站允许,未发现启用的 Outbound Block Rule | 不支持 Windows 自带防火墙主动阻断 |
| Get-NetAdapterBinding | 未发现启用的第三方非 Microsoft Binding | 网卡绑定层未见常见 VPN / 安全过滤组件 |
| netcfg -s n | 仅见硬件网卡与 Microsoft 自带网络协议/服务 | 进一步降低第三方 NDIS Filter 的概率 |
| route / tracert | 未见针对目标地址的异常静态路由;ICMP 路径信息有限 | 作为辅证,不单独定责 |
做到这里,故障大概率是客户原网络的出口策略、ACL、安全网关或上游路由导致的。
七、最终 A/B:切换手机热点后立即恢复
最后做一个最有价值的验证:不改系统、不改浏览器、不改账号组件,只把网络切换到手机热点。
图5 最终 A/B 验证:同一台电脑仅切换到手机热点后,Microsoft 登录页面恢复正常。
切换后 Microsoft 登录页面恢复正常。这个结果完成了非常强的 A/B 闭环:同一台电脑、同一套 Windows、同一个 Edge,没有修复系统组件,只改变网络出口路径,故障就消失。
最终判断:客户原网络到 Microsoft 登录 CDN 的网络路径存在选择性不可达。高概率位于出口防火墙、ACL、上网行为管理、安全网关或上游路由,而不是终端系统本身。
八、为什么“改 DNS”没有解决?
这个 Case 很容易产生一个误区:既然是网站打不开,那就先换 DNS。但这里 DNS 实际工作正常:
logincdn.msauth.net ↓ DNS 解析成功 13.107.246.74 ↓ TCP 443 建连 TIMEOUT故障发生在DNS 之后。所以继续更换 DNS 并不能直接解决“到目标 IP 的 TCP 路径不可达”。
九、这类问题的快速排查 SOP
- 浏览器直接访问登录主站:确认是整体打不开还是登录组件独有问题;
- 验证基础 HTTPS:
curl/Invoke-WebRequest; - 如果主站正常但页面仍白屏:尽早抓 Edge NetLog,看具体哪个依赖域名失败;
- 针对失败域名交叉验证:
Resolve-DnsName+Test-NetConnection -Port 443+curl; - 排除本机过滤:Windows Firewall、网卡 Binding、第三方 VPN/安全软件;
- 做网络 A/B:手机热点或其他独立网络。只改网络即可恢复时,优先转客户网络侧处理。