Skip to content

Add Windows guest networking - #432

Open
sjmiller609 wants to merge 6 commits into
hypeship/windows-guest-controlfrom
hypeship/windows-networking
Open

Add Windows guest networking#432
sjmiller609 wants to merge 6 commits into
hypeship/windows-guest-controlfrom
hypeship/windows-networking

Conversation

@sjmiller609

@sjmiller609 sjmiller609 commented Aug 20, 2026

Copy link
Copy Markdown
Collaborator

summary

  • attach Windows guests to Hypeman TAP networks
  • configure IPv4, default routes, and DNS through native Windows APIs
  • apply fresh allocations on create and start without a shell fallback
  • document the Windows network readiness model in the instance README
  • consolidate guest-control and networking coverage into one Windows lifecycle scenario

targeted tests

  • Windows create and hypervisor-config unit tests
  • Windows guest-agent cross-compilation
  • dedicated Windows lifecycle integration gate

The dedicated Windows lifecycle KVM gate and full Linux, Darwin, and install suites pass.


Note

Medium Risk
Changes guest networking on create/start and new Windows IP/route/DNS logic in the guest agent; failures tear down VMs, but misconfiguration could break Windows instance connectivity.

Overview
Windows instances can now use NetworkEnabled and the same TAP allocation model as Linux, with IPv4, default route, and DNS applied through the guest agent instead of being rejected at create time.

The ReconfigureNetwork RPC gains dns_servers, and the Windows guest agent implements full reconfiguration via native APIs (adapter lookup by MAC, unicast addresses, routes, and SetInterfaceDnsSettings). Linux keeps the existing shell-command fallback only when the RPC is unimplemented; Windows does not.

Create and start treat guest network setup as readiness: after the VM is up, the manager calls reconfigureGuestNetworkConfig for Windows; failure stops the instance and fails the operation. Start reapplies allocation when a stopped instance may have a new IP or MAC.

CI links Windows fixtures into /ci/windows, renames the integration gate to Windows lifecycle (TestWindowsLifecycleIntegration), and extends it with networking checks (allocated IP/DNS, RDP on 3389, ICMP). Docs describe the Windows networking model and RDP as reachability through the allocated IP, not a Hypeman API.

Reviewed by Cursor Bugbot for commit 0deb5e8. Bugbot is set up for automated code reviews on this repo. Configure here.

@sjmiller609
sjmiller609 force-pushed the hypeship/windows-networking branch from ab0ea8a to e3083b1 Compare August 20, 2026 03:07
@sjmiller609
sjmiller609 force-pushed the hypeship/windows-networking branch from e3083b1 to 78347b4 Compare August 20, 2026 14:14
@sjmiller609
sjmiller609 force-pushed the hypeship/windows-networking branch from 78347b4 to cb75f89 Compare August 20, 2026 15:57
Comment thread docs/windows-guest-agent.md Outdated
Comment thread docs/windows-images.md
Comment thread docs/windows-networking.md
@sjmiller609
sjmiller609 force-pushed the hypeship/windows-networking branch from cb75f89 to 336191d Compare August 20, 2026 17:52
@sjmiller609
sjmiller609 force-pushed the hypeship/windows-networking branch 2 times, most recently from 444f85d to 99d7d11 Compare August 20, 2026 20:25
@sjmiller609
sjmiller609 force-pushed the hypeship/windows-networking branch 2 times, most recently from 38b2708 to 6d78a36 Compare August 21, 2026 00:13
@sjmiller609
sjmiller609 marked this pull request as ready for review August 25, 2026 20:48
Comment thread lib/instances/restore.go
@sjmiller609
sjmiller609 force-pushed the hypeship/windows-networking branch from 6d78a36 to eb6f390 Compare August 25, 2026 20:57

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using default effort and found 2 potential issues.

There are 3 total unresolved issues (including 1 from previous review).

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 10ed106. Configure here.

Comment thread lib/system/guest_agent/network_windows.go
Comment thread .github/workflows/test.yml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant