-
Notifications
You must be signed in to change notification settings - Fork 3.3k
Description
Feature Request: per‑CCD subnet support
Summary
OpenVPN currently allows defining static IP addresses and iroute directives in CCD files, but it does not support assigning a dedicated subnet to a specific client. This limits deployments where a client represents a remote network or needs multiple internal addresses behind a single tunnel.
Problem
In many real‑world setups, a client is not a single host but a gateway for multiple services or devices. Today, OpenVPN requires manual routing workarounds or external orchestration to handle such cases. CCD cannot define a subnet for a client; it can only reference an existing subnet behind the client via iroute.
Requested Enhancement
Add support for defining a unique subnet per client inside its CCD file. Expected behavior:
Allow specifying a subnet (e.g., subnet 10.8.10.0 255.255.255.0) in CCD
Server automatically allocates and manages that subnet
Server advertises routes to other clients and upstream routers
Detect and prevent overlapping subnets
Maintain backward compatibility with existing CCD functionality
Use Cases
Remote branch offices with multiple internal hosts
IoT gateways with several devices behind a single tunnel
Multi‑service clients requiring isolated address space
Scenarios where each client must have its own routed segment
Why this matters
This feature would simplify network design, reduce manual routing configuration, and make OpenVPN more suitable for modern multi‑device and multi‑service deployments.
Environment
OpenVPN 2.x server
Linux-based deployments
CCD enabled via client-config-dir
Additional Notes
There are several forum discussions where users attempt similar setups, but the current architecture does not support per‑client subnet allocation. This feature would fill a long‑standing gap.