vmnet-helper

July 31, 2026 · View on GitHub

A high-performance network proxy connecting virtual machines to the macOS vmnet network without running the VM process as root or requiring the com.apple.vm.networking entitlement.

On macOS 15 and earlier, the helper requires root only to start the vmnet interface, then immediately drops privileges and runs as the unprivileged user. On macOS 26 and later, root is not required at all.

Tip

On macOS 26 and later, consider using vmnet-broker for native vmnet networking — up to 9 times faster than vmnet-helper. vmnet-helper is the first VM tool to support vmnet-broker. See the architecture guide for details.

Installation

macOS 26 and later

Install using Homebrew:

brew tap nirs/vmnet-helper
brew trust nirs/vmnet-helper
brew install vmnet-helper

macOS 15 and earlier

To install the latest version run:

curl -fsSL https://github.com/nirs/vmnet-helper/releases/latest/download/install.sh | bash

You can download the install script for inspection and run it locally.

The install script downloads the latest release and installs it at /opt/vmnet-helper, and configures a sudoers rule to allow running vmnet-helper without a password. See sudoers.d for more info.

Note

Homebrew installation is not available for macOS 15 and earlier because vmnet-helper requires root privileges. Installing via Homebrew would allow malware to replace the executable and gain root access.

Compatible VM drivers

vmnet-helper is integrated and tested with the following VM drivers.

DriverDescription
QEMU13,469Open-source machine emulator and virtualizer
vfkit395macOS VM manager wrapping Apple's Virtualization.framework
krunkit331macOS wrapper for libkrun

Projects using vmnet-helper

The following projects use vmnet-helper to connect VMs to the vmnet network.

ProjectDescription
minikube31,984Local Kubernetes for development and CI
renode2,676Embedded systems simulator
anylinuxfs1,433Mounts Linux-supported filesystems on macOS via a microVM
vibe936Linux VM sandbox for LLM agents on macOS
nerdbox160containerd sandbox runtime for libkrun VMs on macOS
ec15Go-based VM orchestration

Compatible projects

The following projects use libkrun's unixgram API and can work with vmnet-helper.

ProjectDescription
microvm.nix2,781NixOS MicroVMs
libkrun2,509Library for running workloads in isolated VMs
boxlite2,196Embeddable sandboxes for AI agents using libkrun
libkrun-go56Go bindings for libkrun
Box8MicroVM runtime using libkrun
bux8Embedded micro-VM sandbox for AI agents using libkrun
krun-api0Go wrapper for libkrun

Tutorials

Documentation

License

vmnet-helper is under the Apache 2.0 license