NetworkPlan
Carves the hardcoded per-OU LAN scheme used by LiberatorWithWinDCTranslator: each OU gets a 10.X.0.0/24 (X = OU index) split into
-
server tier
.200 .. .240(popped on DC/Liberator/Stack VM allocation), -
client/DHCP tier
.1 .. .199(popped on Windows client allocation), -
gateway/DHCP IP fixed at
.254.
Devices not bound to a specific OU (servers, routers, Liberator-stack VMs) consume from the default OU (first OU registered, by enumeration order — matches Company.OrganizationalUnits).
public sealed class NetworkPlan
1. Constructors
1.1. NetworkPlan(IReadOnlyDictionary<string, string>)
public NetworkPlan(IReadOnlyDictionary<string, string> ouSubnets)
| Name | Type | Description |
|---|---|---|
ouSubnets |
IReadOnlyDictionary<string, string> |
2. Properties
2.1. Default
First OU’s /24 — used as canonical "company subnet" for fields like DhcpIP.
public IpAllocator Default { get; }
3. Methods
3.1. AllocateClientIp(string)
public IP AllocateClientIp(string ouName = null)
| Name | Type | Description |
|---|---|---|
ouName |
string |
Returns: IP
3.2. AllocateServerIp(string)
public IP AllocateServerIp(string ouName = null)
| Name | Type | Description |
|---|---|---|
ouName |
string |
Returns: IP
3.3. AllocateServerIpAt(int, string)
Pops a server-tier IP at a specific last octet (used for Liberator-stack VMs pinned by VMID).
public IP AllocateServerIpAt(int lastOctet, string ouName = null)
| Name | Type | Description |
|---|---|---|
lastOctet |
int |
|
ouName |
string |
Returns: IP
3.4. ClientRange(string)
public IPRange ClientRange(string ouName = null)
| Name | Type | Description |
|---|---|---|
ouName |
string |
Returns: IPRange
3.5. Gateway(string)
public IP Gateway(string ouName = null)
| Name | Type | Description |
|---|---|---|
ouName |
string |
Returns: IP