Skip to content

[Problem/Bug]: WebRTC ICE fails on Windows when no network interfaces are available (offline) #5360

@velocitysystems

Description

@velocitysystems

What happened?

WebRTC peer connections fail to establish on Windows when the machine is offline (no network interfaces available), even for local loopback connections (127.0.0.1). This appears due to WebRTC's BasicNetworkManager::CreateNetworks() implementation on Windows only processing network adapters with IfOperStatusUp status.

When Windows is offline, all network adapters (including loopback) report IfOperStatusDown causing:

  • GetNetworks() returns empty list
  • BasicPortAllocatorSession::DoAllocate() logs "Machine has no networks; no ports will be allocated"
  • No ICE candidates are gathered
  • ICE connection state remains "new" indefinitely
  • Local peer connections are impossible

Importance

Important. My app's user experience is significantly compromised.

Runtime Channel

Stable release (WebView2 Runtime)

Runtime Version

140.0.3485.54

Operating System

Windows 11

OS Version

Version 24H2 26100.4946

Repro steps

  1. Create a simple WebRTC peer connection between two WebView2 instances (or tabs)
  2. Disconnect all network connections (WiFi off, Ethernet unplugged, airplane mode on)
  3. Attempt to establish RTCPeerConnection with local signaling
  4. Observe: ICE gathering never completes, no candidates generated

Repros in Edge Browser

Yes, issue can be reproduced in the corresponding Edge version

Regression

No, this never worked

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions