nic {} block
WCL block
Attaches a VM to a segment, with optional static IP/MAC, NAT shorthand or port isolation.
A nic {} block inside a vm {} attaches that guest to one segment.
wcl
nic { segment = "corp" ip = "10.50.0.10" mac = "52:54:00:aa:bb:cc" } // static lease + fixed MAC
nic { nat = true } // shorthand: per-lab built-in NAT segment (no segment {} needed)
nic { segment = "dmz" isolated = true } // port isolation: can't reach segment neighbours
A static ip must fall inside the segment's subnet, and static IPs/MACs must be unique across the lab (validation errors otherwise). A VM declaring any share {} must have a NIC on a segment.