utmapp / utmapp/UTM

Support for VZFileHandleNetworkDeviceAttachment & VZVmnetNetworkDeviceAttachment

Open
#7,418 1 comment 8 reactions 0 assignees View on GitHub
enhancement
Dominant language
Swift
Stars
35.5k
Forks
1.8k
Avg merge
5d 5h
Merged PRs (30d)
7

Description

It would be awesome to support:
- [VZVmnetNetworkDeviceAttachment](https://developer.apple.com/documentation/virtualization/vzvmnetnetworkdeviceattachment) (`macOS 26.0+`)
- [VZFileHandleNetworkDeviceAttachment](https://developer.apple.com/documentation/virtualization/vzfilehandlenetworkdeviceattachment) (`macOS 11.0+`)

Supporting these would enable advanced network architectures, such as running a Linux routing VM with:
- A `VZFileHandleNetworkDeviceAttachment`, allowing packets to be read and written from the host, and routed through a VPN. This is especially useful when LAN connections are blocked (Docker Desktop uses a similar approach with [VPNKit](https://github.com/moby/vpnkit)[^1]).
- A `VZVmnetNetworkDeviceAttachment`, which can also be mounted on other VMs to allow them to access the internet via the Linux routing VM.

This would enable cleaner solutions compared to existing workarounds:
- https://amodm.com/blog/2024/07/03/running-a-linux-router-on-macos

Note: #7380 did some work for `VZVmnetNetworkDeviceAttachment`.

[^1]: https://docs.docker.com/desktop/features/networking/#vpn-passthrough

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.