sns-network-solutions/businesses/sns-hospitality-group/coffee-trailers/T-00/network
Samuel James 2bbea20b22 network stack finalized + supplier research + business plan updates
- Network: GL-X3000 Spitz AX (5G+WiFi6), GMKtec G11 (Fedora WS+VyOS+Podman), TP-Link TL-SG208PE (PoE), Marquis cameras, ULTRALOQ, UPS
- Removed: MikroTik CRS112, MikroTik wAP ax, ZOSI NVR, AirTag (insurance covers theft)
- Added: T-00/network/README.md (full config outline, VLANs, firewall rules, fleet scaling, Jitsi)
- Updated: materials.csv with final networking BOM (,041)
- Added: supplier-research.html (CiboWares official, Bendix, GFS, Dean Supply)
- Added: purchase-pricing.csv (per-unit costs + 600% markup grid)
- Updated: business-plan.html (8/hr manager, ,240 PT, local sourcing 75%, high-traffic focus)
- Updated: corporate structure (removed Indian food truck)
- Kiowa meeting agenda updated (Flagstar/USDA closed, EASSI added)
2026-08-12 07:33:31 -05:00
..
README.md network stack finalized + supplier research + business plan updates 2026-08-12 07:33:31 -05:00

T00-DRIP Network Configuration

Architecture

                    INTERNET (T-Mobile 5G)
                         │
                    ┌────┴────────────────────┐
                    │  GL-X3000 Spitz AX       │
                    │  • 5G/4G cellular uplink  │
                    │  • WiFi 6 AP (2 SSIDs)   │
                    │  • OpenWrt                │
                    │  • WAN: cellular          │
                    │  • LAN: 2.5G → G11 NIC1  │
                    └────┬────────────────────┘
                         │ Ethernet (2.5G)
                         │
                    ┌────┴────────────────────┐
                    │  GMKtec G11 (Fedora)     │
                    │  NIC1 (WAN): from Spitz  │
                    │  NIC2 (LAN): to switch   │
                    │                          │
                    │  ┌─────────────────┐     │
                    │  │ VyOS VM          │     │
                    │  │ • NAT/Firewall   │     │
                    │  │ • DHCP server    │     │
                    │  │ • WireGuard      │     │
                    │  │ • VLAN routing   │     │
                    │  │ • QoS/traffic    │     │
                    │  └─────────────────┘     │
                    │                          │
                    │  Podman Containers:       │
                    │  • Frigate (NVR)          │
                    │  • Home Assistant         │
                    │  • nginx (captive portal) │
                    └────┬────────────────────┘
                         │ Ethernet (2.5G) - NIC2
                         │
                    ┌────┴────────────────────┐
                    │  TP-Link TL-SG208PE      │
                    │  8-port PoE (65W)        │
                    │                          │
                    │  Port 1: Uplink (G11)    │
                    │  Port 2: Camera 1 (PoE)  │
                    │  Port 3: Camera 2 (PoE)  │
                    │  Port 4: Camera 3 (PoE)  │
                    │  Port 5-8: spare         │
                    └──────────────────────────┘

IP Addressing (per trailer)

Subnet Purpose DHCP Range
10.T.0.0/24 Management/Infrastructure .1-.10 static
10.T.10.0/24 VLAN 10 — Security (cameras, lock, NVR) .100-.150
10.T.20.0/24 VLAN 20 — Operations (POS, staff devices) .100-.150
10.T.30.0/24 VLAN 30 — Guest WiFi (isolated, internet only) .100-.200

Where T = trailer number (0 for T00-DRIP, 1 for T01-ROAST, etc.)

Static IPs

Device IP VLAN MAC
G11 (gateway) 10.0.0.1 Mgmt
GL-X3000 (WAN gateway) DHCP from carrier
Camera 1 (interior) 10.0.10.1 10 TBD
Camera 2 (exterior) 10.0.10.2 10 TBD
Camera 3 (drive-through) 10.0.10.3 10 TBD
ULTRALOQ (lock) 10.0.10.10 10 TBD
Square POS 10.0.20.100 20 DHCP
Staff devices 10.0.20.101+ 20 DHCP

VLANs

VLAN ID Name Purpose Firewall Rules
10 Security Cameras, lock, NVR No internet access. Talk to G11 (NVR) only.
20 Operations POS, staff WiFi, management Internet access. Can reach Home Assistant.
30 Guest Customer WiFi (captive portal) Internet only. Isolated from all other VLANs. Rate-limited.

WiFi SSIDs (GL-X3000)

SSID VLAN Security Purpose
DailyPour-Staff 20 WPA3-Personal POS, staff devices, management
The Daily Pour 30 Open (captive portal) Customer WiFi — branded splash page → internet

WireGuard Tunnel

Setting Value
Server Home (ws, 100.96.11.9 via NetBird) or cloud endpoint
Client VyOS on G11
Tunnel IP 10.200.T.1/32 (per trailer)
Keepalive 25s
Purpose Remote management, NVR remote view, fleet config push

Firewall Rules (VyOS)

# WAN → LAN: deny all (default)
# LAN → WAN: allow (NAT masquerade)
# VLAN 10 (Security) → WAN: DENY (cameras never reach internet)
# VLAN 10 → G11 (NVR): ALLOW (cameras stream to local Frigate)
# VLAN 20 (Ops) → WAN: ALLOW
# VLAN 20 → VLAN 10: DENY (POS can't see cameras)
# VLAN 30 (Guest) → WAN: ALLOW (rate limited 5Mbps)
# VLAN 30 → VLAN 10: DENY
# VLAN 30 → VLAN 20: DENY
# WireGuard → ALL: ALLOW (remote management)

Services on G11 (Fedora Workstation + Podman)

G11 runs Fedora Workstation (GNOME desktop) — provides GUI for video calls and dashboard display. Server workloads run in VyOS VM + Podman containers. Managed remotely via Cockpit (web UI).

Container/VM Image Port Purpose
vyos (VM) VyOS qcow2 Router/firewall/WireGuard/DHCP/VLAN/QoS
frigate ghcr.io/blakeblackshear/frigate 5000, 8554 NVR — records cameras, AI detection
homeassistant ghcr.io/home-assistant/home-assistant 8123 Lock control, automations, dashboard
nginx-portal nginx:alpine 80 Captive portal splash page

Desktop apps (browser):

  • Jitsi Meet (video calls — meet.jit.si/dailypour-drip)
  • Dashboard view (Frigate live feeds, HA status, sales)
  • Cockpit (localhost:9090) for local management

Automation (Home Assistant)

Automation Trigger Action
Auto-lock 2:30 PM (closing) Lock ULTRALOQ
Auto-unlock 4:45 AM (pre-open) Unlock ULTRALOQ
Motion alert Frigate detects person after hours Push notification to Sam
Power alert UPS switches to battery Push notification to Sam

Fleet Scaling

Each trailer is a clone of this config with:

  • Trailer number (T) incremented in all IPs
  • Unique WireGuard keys
  • Same VyOS config template (Ansible playbook)
  • Same Podman containers (compose file)
  • Same GL-X3000 OpenWrt config (backup/restore)

Deploy a new trailer's network: flash configs → plug in → WireGuard auto-connects → fleet dashboard sees it.

Video Conferencing (Jitsi)

Setting Value
Platform Jitsi Meet (meet.jit.si — public, free)
Room naming dailypour-T00 (per trailer)
Hardware G11 (Fedora WS) + 27" monitor + USB webcam
Use cases Management check-ins, inter-trailer comms, staff meetings
Future Self-host at video.snsnetlabs.com when 5+ trailers

No accounts needed. Staff opens browser → meet.jit.si/dailypour-drip → instant video call.

Files in this directory

T-00/network/
├── README.md              (this file)
├── vyos/
│   └── config.boot        (VyOS configuration — TODO)
├── openwrt/
│   └── backup.tar.gz      (GL-X3000 config backup — TODO)
├── ansible/
│   └── deploy-trailer.yml (fleet deployment playbook — TODO)
└── captive-portal/
    └── index.html          (branded splash page — TODO)