Skip to main content

Network configuration
for Linux.

Async-first network configuration manager with a systemctl-style interface. Integrates with systemd-networkd, systemd-resolved, and systemd-hostnamed over D-Bus, and uses netlink for link, address, and route operations.

Why netctl

Linux network configuration is usually either raw ip/nmcli commands with no declarative story, or a heavyweight full network manager. netctl takes the systemctl shape people already know and applies it to networking: link, address, route, DNS, and hostname management, talking directly to systemd-networkd/resolved/hostnamed over D-Bus and to the kernel over netlink.

Declarative YAML/TOML apply, profiles, backup/restore, diff, and a doctor diagnostics command round out the day-2 story — JSON output, watch mode, a TUI, shell completions, and dry-run previews are all part of the same CLI, not bolted-on extras.

Open source, Rust

Apache-2.0 licensed, written in Rust. The Community Edition in this repo ships the full feature set — link/address/ route/DNS/hostname management, declarative apply, doctor diagnostics, TUI, and shell completions. Zyvor Enterprise operates the same feature set at fleet scale with SLA-backed support, alongside netevd and cloud-netconfig.

See the Enterprise comparison →
CI statusApache 2.0 license

Need fleet-scale, SLA-backed support?

netctl's Community Edition is Apache-2.0 and free to run in production. Zyvor Enterprise operates the same feature set at fleet scale, alongside netevd and cloud-netconfig, with professional services and SLA-backed support.

Contact sales@zyvor.dev