Files
blackroad/roadnet/PORT-MAP.md
Alexa Amundson 78fbe80f2a Initial monorepo — everything BlackRoad in one place
bin/       230 CLI tools (ask-*, br-*, agent-*, roadid, carpool)
scripts/   99 automation scripts
fleet/     Node configs and deployment
workers/   Cloudflare Worker sources (roadpay, road-search, squad webhooks)
roadc/     RoadC programming language
roadnet/   Mesh network (5 APs, WireGuard)
operator/  Memory system scripts
config/    System configs
dotfiles/  Shell configs
docs/      Documentation

BlackRoad OS — Pave Tomorrow.

RoadChain-SHA2048: d1a24f55318d338b
RoadChain-Identity: alexa@sovereign
RoadChain-Full: d1a24f55318d338b24b60bad7be39286379c76ae5470817482100cb0ddbbcb97e147d07ac7243da0a9f0363e4e5c833d612b9c0df3a3cd20802465420278ef74875a5b77f55af6fe42a931b8b635b3d0d0b6bde9abf33dc42eea52bc03c951406d8cbe49f1a3d29b26a94dade05e9477f34a7d4d4c6ec4005c3c2ac54e73a68440c512c8e83fd9b1fe234750b898ef8f4032c23db173961fe225e67a0432b5293a9714f76c5c57ed5fdf35b9fb40fd73c03ebf88b7253c6a0575f5afb6a6b49b3bda310602fb1ef676859962dad2aebbb2875814b30eee0a8ba195e482d4cbc91d8819e7f38f6db53e8063401649c77bb994371473cabfb917fb53e8cbe73d60
2026-03-14 17:08:41 -05:00

298 lines
20 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# BlackRoad Fleet — Complete Port Map
# Generated 2026-03-09 (Layer 5 Deep Port Scan)
# Every TCP/UDP port on every node identified
```
═══════════════════════════════════════════════════════════════════════════
ALICE (192.168.4.49) — Pi 400 — 25 TCP, 15 UDP
═══════════════════════════════════════════════════════════════════════════
TCP:
:22 sshd SSH daemon
:53 pihole-FTL Pi-hole DNS (TCP)
:443 pihole-FTL Pi-hole HTTPS admin
:3000 python3 dashboard-proxy.py (blackroad)
:4010 python3 agents-proxy.py (blackroad)
:5432 postgres PostgreSQL 13 (localhost only)
:6333 qdrant Qdrant vector DB (HTTP)
:6334 qdrant Qdrant vector DB (gRPC)
:6379 redis-server Redis (localhost only)
:7890 python3 stats-proxy.py (/opt/blackroad/)
:8001 python3/uvicorn operator_service (blackroad operator)
:8010 python3 agents-daemon.py (/opt/blackroad/)
:8011 python3 task_queue_v2.py (pi)
:8012 python3 blackroad-ops.py (blackroad)
:8013 python3 status_service.py (pi)
:8014 python3 pi-fleet-dashboard.py (alice)
:8080 nginx (4 workers) Reverse proxy / Cloudflare tunnel ingress
:8083 node/pm2 road-control (PM2 serve)
:8180 python3 BlackRoad Pi Agent (/opt/blackroad/agent.py)
:8184 python3 status-server.py (blackroad)
:8787 node prism-agent (agent.js)
:9000 nginx Nginx secondary (metrics proxy)
:11434 ssh tunnel Ollama (forwarded from remote)
:20241 cloudflared CF tunnel metrics (localhost)
UDP:
:53 pihole-FTL Pi-hole DNS
:68 dhcpcd DHCP client
:123 pihole-FTL NTP (Pi-hole embedded)
:5353 avahi-daemon mDNS/Bonjour
:* cloudflared (4 ports) QUIC tunnels (ephemeral)
:* avahi (2 ports) mDNS ephemeral
═══════════════════════════════════════════════════════════════════════════
CECILIA (192.168.4.96) — Pi 5 + Hailo-8 — 28 TCP, 15 UDP
═══════════════════════════════════════════════════════════════════════════
TCP:
:22 sshd SSH daemon
:53 dnsmasq (3 listeners) DNS: 192.168.4.96, 10.10.2.1, 127.0.0.1
:80 nginx (4 workers) HTTP (BlackRoad OS landing + sites)
:3000 python3 blackroad-server.py (landing page)
:3001 python3 http.server (simple file server)
:3100 node CECE API (server.js) — AI personality engine
:5001 python3 TTS API (tts-api/app.py)
:5002 python3 Monitor API (monitoring/monitor-api.py)
:5432 postgres PostgreSQL 17 (localhost only)
:5900 wayvnc VNC remote desktop (GPU-accelerated)
:7890 python3 stats-proxy.py (/opt/blackroad/)
:8080 nginx HTTP alt (Cloudflare tunnel ingress)
:8086 influxd InfluxDB time-series (all interfaces)
:8088 influxd InfluxDB backup (localhost only)
:8787 python3 blackroad-model-server.py (AI gateway)
:8788 python3/uvicorn BlackRoad API (app.main:app)
:9000 minio MinIO S3-compatible storage
:9001 minio MinIO console UI
:9100 python3 system-monitor.py (node exporter)
:11434 ollama Ollama LLM server (localhost only)
:11435 python3 ollama-proxy.py (external access)
:20241 cloudflared CF tunnel metrics (localhost)
:34001 pironman5 Pironman5 case OLED service
UDP:
:53 dnsmasq (3 listeners) DNS: 192.168.4.96, 10.10.2.1, 127.0.0.1
:67 dnsmasq DHCP server (RoadNet AP clients)
:5353 avahi-daemon mDNS/Bonjour
:* cloudflared (4 ports) QUIC tunnels (ephemeral)
═══════════════════════════════════════════════════════════════════════════
OCTAVIA (192.168.4.100) — Pi 5 + Hailo-8 — 22 TCP, 22 UDP
═══════════════════════════════════════════════════════════════════════════
TCP:
:22 sshd SSH daemon
:53 dnsmasq DNS (localhost only)
:631 cupsd CUPS printing (localhost only)
:2222 docker-proxy → gitea Gitea SSH (→ container :2222)
:2377 dockerd Docker Swarm manager
:3000 python3 http.server (simple landing)
:3100 docker-proxy → gitea Gitea HTTP (→ container :3100)
:4222 dockerd → NATS NATS messaging (Swarm ingress)
:5000 octoprint OctoPrint 3D print server
:7890 python3 stats-proxy.py (/opt/blackroad/)
:7946 dockerd Docker Swarm gossip
:8080 python3 BlackRoad Pi Agent (/opt/blackroad/agent.py)
:8082 docker-proxy → edge Edge Agent (→ container :8080)
:8086 influxd InfluxDB time-series
:8088 influxd InfluxDB backup (localhost)
:8222 dockerd → NATS NATS HTTP monitor (Swarm ingress)
:8787 python3 blackroad-model-server.py (AI gateway)
:9100 python3 system-monitor.py (node exporter)
:11434 ollama Ollama LLM server (localhost only)
:20241 cloudflared CF tunnel metrics (localhost)
:34001 pironman5 Pironman5 case OLED service
UDP:
:53 dnsmasq DNS (localhost)
:67 dnsmasq DHCP server (RoadNet AP)
:1900 octoprint SSDP/UPnP discovery
:4789 docker VXLAN overlay (Swarm)
:5353 avahi + octoprint (7!) mDNS on every interface (leak!)
:7946 dockerd Swarm gossip
:* cloudflared (2 ports) QUIC tunnels
═══════════════════════════════════════════════════════════════════════════
LUCIDIA (192.168.4.38) — Pi 5 — 52 TCP (34 active after cleanup), 19 UDP
═══════════════════════════════════════════════════════════════════════════
TCP:
:22 sshd SSH daemon
:53 dnsmasq DNS (localhost only)
:80 nginx (4 workers) HTTP (530+ blackroad-* apps via wildcard)
:631 cupsd CUPS printing (localhost only)
:3000 python3 api-server.py (alexa user service)
:3002 docker-proxy → carpool CarPool Next.js app (→ container :3000)
:3005 docker-proxy → systems blackroad.systems site (→ container :3000)
:3006 docker-proxy → ai blackroadai.com site (→ container :3000)
:3109 docker-proxy → metaverse blackroad-metaverse (→ container :3000)
:4001 docker-proxy → roadapi RoadAPI (→ container :3001)
:4002 docker-proxy → roadauth RoadAuth (→ container :3002)
:4010 node ollama-bridge (SSE proxy → Ollama)
:5000 gunicorn simpleweb Flask app ⛔ DISABLED
:5001 python3 TTS API (tts-api/app.py) ⛔ DISABLED
:5002 python3 Monitor API (monitoring/monitor-api.py) ⛔ DISABLED
:5100 python3 load-balancer/app.py ⛔ DISABLED
:5200 python3 fleet-monitor/app.py ⛔ DISABLED
:5300 python3 notifications/app.py ⛔ DISABLED
:5400 python3 metrics/app.py ⛔ DISABLED
:5500 python3 analytics/app.py ⛔ DISABLED
:5600 python3 grafana/app.py ⛔ DISABLED
:5700 python3 alert-manager/app.py ⛔ DISABLED
:5800 python3 log-aggregator/app.py ⛔ DISABLED
:5900 python3 backup-system/app.py ⛔ DISABLED
:6000 python3 perf-cache/app.py ⛔ DISABLED
:6100 python3 resource-optimizer/app.py ⛔ DISABLED
:6200 python3 compression-middleware/app.py ⛔ DISABLED
:6300 python3 connection-pool/app.py ⛔ DISABLED
:8000 uvicorn Lucidia API (FastAPI main:app)
:8011 socat Relay → Alice:8011 (task queue)
:8080 docker-proxy → agent pi-my-agent (→ container :8080)
:8081 nginx Nginx alt (blackroad-os static)
:8082 docker-proxy → edge Edge Agent (→ container :8080)
:8086 influxd InfluxDB time-series
:8088 influxd InfluxDB backup (localhost)
:8090 node road-registry-api (server.js, PM2)
:8180 python3 BlackRoad Pi Agent (/opt/blackroad/agent.py)
:8182 python3 status-server.py (alexa user service)
:8787 python3 blackroad-model-server.py (AI gateway)
:8888 java Java HelloWorld server ⛔ DISABLED
:8889 python3 /opt/blackroad-api/api.py
:9090 docker-proxy → edge Edge Agent metrics (→ container :9090)
:9100 node_exporter Prometheus node exporter
:9192 docker-proxy → pdns PowerDNS Admin (→ container :80)
:11434 ollama Ollama LLM server (localhost only)
:20241 cloudflared #1 CF tunnel metrics (localhost)
:20242 cloudflared #2 CF tunnel metrics (2nd instance!)
:38850 tailscaled Tailscale (100.66.235.47)
:38975 ollama runner Ollama model runner (ephemeral)
:46193 tailscaled Tailscale IPv6
UDP:
:53 dnsmasq DNS (localhost)
:67 dnsmasq DHCP server (RoadNet AP)
:5353 avahi-daemon mDNS/Bonjour
:38238 tailscaled Tailscale WireGuard
:41641 tailscaled Tailscale direct (v4+v6)
:* cloudflared (8 ports!) QUIC tunnels (2 instances × 4 each)
═══════════════════════════════════════════════════════════════════════════
FLEET PORT SUMMARY
═══════════════════════════════════════════════════════════════════════════
Total TCP listeners: 25 + 28 + 22 + 52 = 127 fleet-wide
Total UDP listeners: 15 + 15 + 22 + 19 = 71 fleet-wide
Grand total: 198 listening sockets
SHARED SERVICES (same port, all/most nodes):
┌──────────────────────────────────────────────────┐
│ PORT SERVICE NODES │
├──────────────────────────────────────────────────┤
│ :22 SSH ALL 4 │
│ :53 DNS (pihole/dnsmasq) ALL 4 │
│ :7890 stats-proxy.py ALL 4 │
│ :8080 nginx/agent ALL 4 (varied) │
│ :8787 model-server.py Cec+Oct+Luc │
│ :8086 InfluxDB Cec+Oct+Luc │
│ :11434 Ollama Cec+Oct+Luc │
│ :20241 Cloudflared ALL 4 │
│ :34001 Pironman5 Cec+Oct │
│ :9100 node exporter Cec+Oct+Luc │
│ :8180 blackroad agent Ali+Luc │
│ :5001 TTS API Cec+Luc │
│ :5002 Monitor API Cec+Luc │
└──────────────────────────────────────────────────┘
UNIQUE SERVICES:
┌──────────────────────────────────────────────────┐
│ Alice: Pi-hole(:53/:443), Qdrant(:6333/:6334), │
│ PostgreSQL(:5432), Redis(:6379), │
│ operator(:8001), prism-agent(:8787) │
│ │
│ Cecilia: CECE API(:3100), MinIO(:9000/:9001), │
│ VNC(:5900), ollama-proxy(:11435), │
│ PostgreSQL(:5432) │
│ │
│ Octavia: Gitea(:3100/:2222), OctoPrint(:5000), │
│ NATS(:4222/:8222), Docker Swarm(:2377), │
│ CUPS(:631) │
│ │
│ Lucidia: 14 blackroad microservices(:5000-:6300) │
│ Lucidia API(:8000), CarPool(:3002), │
│ PowerDNS Admin(:9192), ollama-bridge, │
│ Java HelloWorld(:8888), socat relay, │
│ 2x cloudflared, Tailscale(:38850), │
│ road-registry-api(:8090), 13 Docker ctrs │
└──────────────────────────────────────────────────┘
HTTP HEALTH STATUS (Layer 6 probe):
┌──────────────────────────────────────────────────────────────┐
│ ALICE :443=000 :3000=000 :4010=503 :6333=200 :7890=000 │
│ :8001=200✓ :8010=200✓ :8011=200✓ :8012=200✓ │
│ :8013=200✓ :8014=200✓ :8080=200✓ :8083=200✓ │
│ :8180=200✓ :8787=401(auth) :9000=403(nginx) │
│ │
│ CECILIA :80=403 :3000=200✓ :3001=200✓ :3100=200✓(CECE) │
│ :5001=200✓(TTS) :5002=200✓ :7890=200✓ │
│ :8080=200✓ :8787=200✓ :8788=404 :9001=200✓(MinIO) │
│ :11434=200✓(Ollama) :34001=200✓(Pironman) │
│ │
│ OCTAVIA :3000=200✓ :3100=200✓(Gitea) :5000=302(OctoPrint)│
│ :7890=200✓ :8080=200✓ :8787=200✓ │
│ :9100=200✓ :11434=200✓ :34001=200✓ │
│ │
│ LUCIDIA :3000=200✓ :3002=200✓(CarPool) :3005=200✓(42KB) │
│ :3006=200✓(42KB) :3109=200✓(53KB metaverse) │
│ :4001=200✓ :4002=200✓ :5000=200✓ :5001=200✓(TTS) │
│ :5100-6300=200✓(all 14 microservices) │
│ :8000=200✓(Lucidia API) :8081=200✓ :8180=200✓ │
│ :8787=200✓ :8888=200✓(Java) :9100=200✓ │
│ :11434=200✓(Ollama) │
└──────────────────────────────────────────────────────────────┘
DATABASE INVENTORY (Layer 6):
┌──────────────────────────────────────────────────────────────┐
│ Alice PostgreSQL: "blackroad" DB (0 tables — empty) │
│ Redis: db0 = 1 key | Qdrant: 0 collections │
│ │
│ Cecilia PostgreSQL: templates only (empty) │
│ InfluxDB: _internal + pironman5 │
│ MinIO: /mnt/minio/data │
│ │
│ Octavia InfluxDB: _internal + pironman5 │
│ Gitea: 207 repos, 8 orgs │
│ │
│ Lucidia PostgreSQL: "operator" DB (owned by pi) │
│ InfluxDB: _internal + pironman5 │
│ PowerDNS: postgres:15-alpine container │
└──────────────────────────────────────────────────────────────┘
DISK HOGS (Layer 6):
┌──────────────────────────────────────────────────────────────┐
│ Cecilia Ollama blobs: 24GB | Wolfram Engine: 4.9GB │
│ Bitcoin sync: 6.2GB | Alexandria sync total: 6.6G│
│ │
│ Octavia blackroad home: 23GB (runners 19GB!) │
│ Ollama: 16GB | Docker: 5.7GB │
│ NVMe Claude: 2.9GB (config 2.1G + time 800M) │
│ │
│ Lucidia blackroad home: 33GB (runners 19GB, models 4.4G)│
│ Ollama: 20GB │
│ │
│ Alice alice home: 2.2GB | pi npm cache: 857MB │
│ alice/gdrive: 882MB │
└──────────────────────────────────────────────────────────────┘
⚠️ FINDINGS:
- Lucidia has 14 Python microservices (:5000-:6300) — many look like
skeleton apps (load-balancer, grafana, alert-manager, etc.)
All running as separate processes = ~14×20MB = 280MB RAM wasted
- Lucidia has 2 cloudflared instances (2 tunnels or duplicate?)
- Octavia OctoPrint broadcasts mDNS on ALL 7 interfaces (including Docker bridges)
- Alice has Ollama forwarded via SSH tunnel (:11434) — not local
- Lucidia :8888 is literally "java HelloWorld" — test service left running
- Lucidia :5000 simpleweb is a basic Flask "Hello World" via gunicorn
- Several services duplicated: TTS API on Cec+Luc, monitor on Cec+Luc
- socat relay on Lucidia:8011 forwards to Alice:8011 (task queue bridge)
```