Implementing Routing Domains on an OpenBSD workstation for use with WireGuard By: Josh Grosse @BsdcanOrg
Implementing Routing Domains on an OpenBSD workstation for use with WireGuard By: Josh Grosse  @BsdcanOrg
Uploaded June 2024 | Updated September 2026, 2 hours ago
I operate a small network with both local and remote systems that share a single bastion WireGuard gateway to the Internet. Some WireGuard client applications, such as WireGuard for Android, allow application-level granularity selection for routing traffic via the VPN or not. OpenBSD does not have a client application. It uses a kernel driver, which doesn't make routing decisions. Instead, routing is controlled by the kernel"s routing table or tables.

When I first deployed WireGuard, I deployed a single routing table, and used routing priorities to route traffic via the VPN if happened to be active and operational, enabling the VPN or disabling it as needed. Eventually, I switch from a single routing table to two, using OpenBSD's routing domains facility.

This transition afforded me the ability to cease using an all-or-nothing VPN with a single on / off control, and to have application level granularity. OpenBSD admins determine routing domain selection at process initiation via the route(8) exec feature.

Josh has been an OpenBSD user for 20 years. He still enjoys the OS, and continues to maintain a handful of ports for the Project. He lives in Michigan with his daughter's two cats.
Implementing Routing Domains on an OpenBSD workstation for use with WireGuard By: Josh GrosseUserland TCP Transport for NVME By: John BaldwinBSDCan Opening   Dan LangilleOpenBSD network booted Workstations How to fearlessly introduce OpenBSD on your company WorkstationsDo you remember legacy IP?  What happened to FreeBSDs IPv6?Improving security of the FreeBSD boot process TPM and Secure Boot in FreeBSD by Michal StanekAlamosa: A Tiered Disk Block Cache for NetBSD By: Kira AshMigrating to FreeBSD from a Linux sysadmins perspective: Albert DenggNetwork Management with the OpenBSD Packet Filter ToolsetMassimiliano Stucchi, Peter N  M  Hansteen,BSDCan Saturday 2026-06-20: 1160Kirk McKusick: The Evolution of FreeBSD Governance   BSDCan 2018FreeBSD from a Linux developers perspective Its not all bad! D Scott Phillips
BSDCan |

Implementing Routing Domains on an OpenBSD workstation for use with WireGuard By: Josh Grosse

SHARE TO X SHARE TO REDDIT SHARE TO FACEBOOK WALLPAPER