Core Fabric & Networking
Understand the VergeOS core fabric — the private inter-node mesh that carries vSAN replication, VM migration, and control-plane traffic — along with the external network separation model.
What is the Core Fabric?
The core fabric is a private, high-speed network mesh that interconnects all nodes in a VergeOS system. It is the backbone of every VergeOS deployment — all internal cluster communication flows over this fabric. The core fabric is never exposed to external traffic.
Traffic types carried by the core fabric include:
vSAN replication — Primary and redundant data block writes between storage-participating nodes
Cluster coordination — Node health checks, leadership election, and system state synchronization
VM live migration — Memory and CPU state transfer when moving running VMs between nodes
Control plane — API calls, configuration updates, and management communication between VergeOS services
The core fabric is designed for low latency and high throughput. Because vSAN performance depends directly on the speed and reliability of inter-node communication, the core fabric is the most performance-critical network in a VergeOS system.
Dual-Switch Redundancy
For fault tolerance, the core fabric runs across two independent physical networks — referred to as Core Fabric 1 and Core Fabric 2 (or Core 1 / Core 2). Each fabric network is its own isolated Layer 2 broadcast domain.
Every node connects to both fabric networks. If one switch or cable path fails, the other fabric network maintains full inter-node connectivity with no interruption to vSAN replication, live migration, or cluster coordination.
Key Design Rules
Isolation
Core Fabric 1 and Core Fabric 2 must be on their own dedicated Layer 2 networks, completely isolated from each other and from external traffic
Jumbo frames
MTU 9216 or higher on all core fabric switch ports (9216 accommodates the 9000-byte payload plus VLAN tags, headers, and tenant overhead)
Zero switch hops
All nodes must be on the same switching fabric with no inter-switch hops in the core fabric path — additional hops introduce latency that degrades vSAN performance
Port mode
Access ports (untagged, single VLAN per core fabric network)
Spanning tree
Disabled on core fabric ports (BPDU guard disable, portfast disable) — STP should not be used for core fabric links. Preferably this traffic wouldn't leave the switch.
Speed
10 Gbps or higher recommended
Playground note: The Terraform playground uses MTU 9142 for its virtual core fabric networks. Production deployments should use MTU 9216 or higher per the official VergeOS documentation.
Core Network Overlay
On top of the two physical fabric networks, VergeOS creates a virtual core network — a logical overlay with the address range 100.96.0.0/24. This core network provides each node with a stable internal IP address used by VergeOS services.
The relationship is:
Core Fabric 1 and Core Fabric 2 are the physical-layer transports (Layer 2 networks)
Core network (
100.96.0.0/24) is the logical overlay that rides on top of both fabric switches
The core network abstracts the underlying dual-path redundancy so that VergeOS services communicate using a single address per node, regardless of which physical fabric is active.
IP Address Assignments
Core network
100.96.0.2
100.96.0.3
100.96.0.(N+1)
Core Fabric 1
172.16.1.1
172.16.1.2
172.16.1.N
Core Fabric 2
172.16.2.1
172.16.2.2
172.16.2.N
External
Static (configured)
Static (configured)
DHCP or static
For the Core Network,
100.96.0.1is reserved as the cluster gateway; per-node addresses start at.2for Node 1 and increment from there.
The
172.16.1.0/24and172.16.2.0/24core fabric subnets are the defaults assigned when the core networks are configured before the external network during installation. If the external network is assigned first, VergeOS allocates different subnets to the core fabrics.
Node Network Connections
A typical VergeOS node has four network interfaces — two for core fabric and two for external:
NIC 1
Core Fabric 1
Primary path for all inter-node traffic
NIC 2
Core Fabric 2
Redundant path for all inter-node traffic
NIC 3 + 4
External network
Management UI/API access, user traffic, internet connectivity
The actual NIC device names vary by hardware (e.g., eno1, enp3s0f0, eth0). During installation, you select which physical NIC maps to each role.
The external NICs are typically bonded (LACP or active-backup) for redundancy. VergeOS supports both switch-based bonding (LACP) and its own software-based bonding — no switch configuration required. The two core fabric NICs must not be bonded — physical LAG or port bonding interferes with the fabric's built-in redundancy, which detects a wider range of problems (dropped packets, MTU mismatches, NIC lockups, bad firmware) at the application layer than LAG can. Each core fabric NIC connects to its own independent switch.
External Network vs. Core Fabric Separation
VergeOS enforces a strict separation between external-facing traffic and internal cluster traffic. These are two fundamentally different network domains:
External Networks
Connect VergeOS to existing LAN/WAN infrastructure
Carry user-facing traffic: management UI access, VM workload connectivity, internet access
Use standard MTU (1500) unless workloads require jumbo frames
Configured as VLAN trunks (802.1Q tagged) to support multiple VLANs for tenant and workload separation
Typically bonded (LACP or active-backup) for redundancy
Can have multiple external networks per system (e.g., management VLAN, production VLAN, DMZ VLAN)
Core Fabric Networks
Completely private — never exposed to external traffic or users
Carry all inter-node system traffic (vSAN, migration, coordination)
Require jumbo frames (MTU 9216+) for storage efficiency
Configured as access ports (untagged, single VLAN per fabric)
Always two independent fabrics for redundancy
Must have zero switch hops between nodes for low latency
The DMZ Network
VergeOS automatically creates a DMZ network during installation. The DMZ serves as the central connection point for all virtual networks in the system. Every VergeOS cloud (whether the host system or a tenant) has exactly one DMZ network.
The DMZ provides Layer 3 routing between networks. Each network type (external, internal, core) has its own virtual router with one interface on its own network and one interface on the DMZ. When an internal network needs to reach an external network, traffic flows through the DMZ where network rules and firewall policies are applied at the routing boundary.
The DMZ uses the 100.64.0.0/16 address range. Each virtual network's router — external networks, internal networks, the core network, and any nested tenant clouds — has a DMZ interface assigned an address from this subnet:
From the host's perspective, a tenant appears as another network connected to the DMZ. Inside, the tenant has its own complete networking stack — its own DMZ, external router, internal networks, and VMs — a fully nested Virtual Data Center.
Production Network Design Models
In production, VergeOS supports several network design models depending on the number of NICs per node and the external network requirements. All models maintain the dual core fabric for redundancy.
4-NIC Model (Recommended)
The standard production configuration uses 4 NICs per node:
NIC 1
Core Fabric 1
Access port, dedicated VLAN, MTU 9216
NIC 2
Core Fabric 2
Access port, dedicated VLAN, MTU 9216
NIC 3
External 1 (bond primary)
Trunk port, LACP, MTU 1500
NIC 4
External 2 (bond secondary)
Trunk port, LACP, MTU 1500
This provides full redundancy on both the core fabric (two independent paths) and external network (bonded pair).
2-NIC Model
A 2-NIC model combines core fabric and external traffic on the same physical ports using VLAN tagging:
NIC 1
Core Fabric 1 + External VLANs
Native VLAN for core, tagged VLANs for external
NIC 2
Core Fabric 2 + External VLANs
Native VLAN for core, tagged VLANs for external
This model works well for 100 GbE network ports where two high-bandwidth interfaces provide more than enough throughput for both core fabric and external traffic. It also suits edge sites and proof-of-concept deployments. VergeOS software bonding can be used in this model to provide external network redundancy across both NICs, while dual core fabric redundancy is maintained.
How the Terraform Playground Models This
In the Terraform playground, the core fabric is modeled as two vergeio_network resources on the host VergeOS system:
core_fabric_1— Layer 2 network, MTU 9142, no DHCPcore_fabric_2— Layer 2 network, MTU 9142, no DHCP
Each node VM gets three NICs:
NIC 1 → External network (management and user access)
NIC 2 → Core Fabric 1
NIC 3 → Core Fabric 2
The playground uses MTU 9142 (instead of the production-recommended 9216) because the virtual network infrastructure of the host system introduces additional overhead. The core network overlay (100.96.0.0/24) rides on top of both fabric networks, just as it does in production.
Key Takeaways
Core fabric
Private inter-node mesh — carries vSAN, migration, coordination, and control-plane traffic
Dual redundancy
Two independent fabric networks (Core 1 + Core 2) on separate Layer 2 domains
MTU requirements
9216+ in production (9142 in the playground) — jumbo frames are mandatory
Core network overlay
Logical 100.96.0.0/24 network riding on both fabric switches, providing stable internal IPs
3 NICs per node
Minimum: 1 external + 2 core fabric. Production typically uses 4+ NICs with bonded external
Zero switch hops
Core fabric ports must be on the same switching fabric — no inter-switch hops allowed
Traffic isolation
Core fabric is never exposed to external traffic; external networks are completely separate
DMZ network
Auto-created Layer 3 routing hub connecting all virtual networks in the system
Next Steps
Now that you understand how VergeOS nodes are interconnected, the next topic covers how those nodes are organized into clusters: Clusters & Node Types →
Last updated
Was this helpful?