Notice: you're looking at a read-only mirror of our Dokuwiki.

login

Network Topology

This document outlines the network topology, VLAN segmentation, firewall zone policies, and external IP/NAT allocations configured on the primary router (int-fw-01).

Physical Interfaces & VLAN Segmentation

The internal network connects over an 802.3ad LACP bond interface (bond0) across eth2 and eth3, trunking 802.1Q tagged VLANs to core switching infrastructure.

VLAN & Subnet Allocations

VLAN Name / Role Subnet & Gateway Notes
6 DMZ (ExtService) 10.20.6.1/24 2602:fa6d:abc:6::1/64 External-facing servers and VPN gateways
10 Management 10.20.10.1/24 2602:fa6d:abc:10::1/64 Hypervisors (Proxmox), IPMI, PDUs, network gear
20 ArubaMgmt 10.20.20.1/24 Aruba wireless controllers and AP discovery
100 IntService 10.20.100.1/24 2602:fa6d:abc:100::1/64 Internal LAN servers, TrueNAS, Home Assistant, monitoring
110 MemberClients 10.20.110.1/24 2602:fa6d:abc:110::1/64 Primary trusted user devices (wired and wireless)
120 Guests 10.20.120.1/24 2602:fa6d:abc:120::1/64 Untrusted guest access
130 IoT 10.20.130.1/24 2602:fa6d:abc:130::1/64 Smart home appliances, streaming devices, sensors
140 DMX 10.20.140.1/24 2602:fa6d:abc:140::1/64 ArtNet and lighting control equipment
300 Isolated 10.20.254.1/24 Restricted lab / quarantine devices
400 5G Backup WAN DHCP (backup-5g VRF) Cellular failover uplink (unused)
412 Astound Primary WAN 104.202.86.120/29 Primary ISP handoff

Additional Routed Subnets

Firewall Zones

Zone Name Member Interfaces Purpose
Local local-zone (VyOS itself) Traffic addressed to or originated by the VyOS host itself
WAN bond0.412, tun0, VRF backup-5g Untrusted external networks and ISP uplinks
DMZ bond0.6, peth6 Public-facing services and VPN termination hosts
Members bond0.100, bond0.110 Trusted user workstations and internal infrastructure
Management bond0.10, bond0.20 Infrastructure administration and out-of-band management
Guests bond0.120 Guest clients with Internet-only access
Isolated bond0.130, bond0.140, bond0.300 Untrusted IoT, DMX, and quarantined devices (intra-zone filtered)

Inter-Zone Access & Security Policies

Stateful return traffic is globally accepted. The general communication model between zones is outlined below (individual pinholes and edge cases exist for specific hosts and services):

flowchart TD
    WAN["WAN"]

    subgraph Zones ["Firewall Zones"]
        Management["Management"]
        Members["Members"]
        Guests["Guests"]
        DMZ["DMZ"]
        Isolated["Isolated"]
    end

    %% Outbound to Internet
    Management -->|"Outbound"| WAN
    Members -->|"Outbound"| WAN
    Guests -->|"Outbound"| WAN
    DMZ -->|"Outbound"| WAN
    Isolated -.->|"Partial (IoT/DMX)"| WAN

    %% Inter-Zone Access
    Members --> DMZ
    Guests -->|"Public services"| DMZ

High-Level Inter-Zone Matrix

SRC...DST WAN DMZ Members Management Guests Isolated Local
WAN — Filtered Drop Drop Drop Drop Filtered
DMZ Accept Default Reject Reject* Reject* Drop Drop Filtered
Members Accept Accept Accept (Intra) Filtered Accept Filtered Filtered
Management Accept Accept Drop Default Drop Drop Drop Filtered
Guests Accept Accept Drop Drop Default Drop Drop Filtered
Isolated Filtered Accept Reject* Reject* Drop Filtered (Intra) Filtered
Local Accept Accept Accept Accept Accept Accept —

*: Edge cases exist.

Policy Summary by Flow

External IP Allocations & NAT

Public IP Assignments

The primary WAN interface (bond0.412) is configured with a static /29 subnet from the ISP (Astound Broadband):

Public IPv6 Allocation

Inbound Port Forwarding (DNAT)

Destination NAT routes traffic arriving on secondary public IPs to internal DMZ hosts:

Rule # External Address Port(s) & Protocol Internal Destination Target Host / Service
67 104.202.86.123 UDP 3478 10.20.6.9:3478 Netbird STUN Server
68 104.202.86.123 TCP 2222 10.20.6.101:2222 Forgejo Git SSH
69 104.202.86.123 TCP/UDP 80, 443 10.20.6.101:80,443 Forgejo Web (HTTP/HTTPS)
72 104.202.86.124 TCP/UDP 80, 443, 20000–30000 10.20.6.132 Pelican-Eggs Game Servers

Note: Mirror hairpin DNAT rules (167, 168, 169, 173) are configured on all Inside-Interfaces to allow internal devices to access these public services transparently via their external IPs.

Outbound Source NAT (SNAT)

Rule # Source Matching Outbound Interface Action / Translation Purpose
68 10.20.6.101 (Forgejo) bond0.412 Static SNAT to 104.202.86.123 1:1 dedicated egress IP matching Forgejo's public address
100 10.20.0.0/16 bond0.412 Masquerade (104.202.86.122) General Internet outbound NAT overload
160 10.20.0.0/16 $\rightarrow$ 10.20.6.0/24 Inside-Interfaces Masquerade Hairpin SNAT ensuring symmetric routing for internal port forward traffic
180 10.80.216.0/24 bond0.412 Masquerade (104.202.86.122) Outbound Internet egress for Media Rack Incus containers (unused)