NetBox¶
Stand: 2026-05-30
Produktivstatus¶
NetBox ist bereits produktiv und wird als führendes IPAM/DCIM-System behandelt.
| Feld | Wert |
|---|---|
| CTID | 309 |
| Hostname | netbox |
| IP | 10.222.40.34/24 |
| URL | https://netbox.lanstyle.de |
| HTTP intern | Apache auf 80 und 443 |
| App intern | Gunicorn auf 127.0.0.1:8001 |
| Datenbank | PostgreSQL lokal auf 127.0.0.1:5432 |
| Cache | Redis lokal auf 127.0.0.1:6379 |
https://netbox.lanstyle.de antwortet mit Redirect auf /login/ und ist damit als produktiver Dienst erreichbar.
Rolle¶
NetBox ist die bevorzugte Quelle für:
- IP-Adressen und Prefixe
- Geräte, VMs, LXCs und Standorte
- VLANs und Netzbereiche
- spätere Automationen mit OpenCode, n8n und Gitea
Integrationen¶
Empfohlen:
- OpenCode-Skill
netbox-ipam: vor neuen IPs immer NetBox prüfen. - n8n: NetBox-Webhooks oder API-Abfragen für Änderungsworkflows.
- Gitea: Infrastruktur-Repositories mit NetBox-Exports abgleichen.
- Wiki: NetBox nicht ersetzen, sondern als Quelle referenzieren.
Export fuer Agent Runtime und RAG¶
Der Inventory-Export fuer Qdrant wird durch agent-runtime/scripts/netbox-export-summary.sh erzeugt. Der Export ist read-only und nutzt den Vaultwarden-Eintrag Lanstyle / NetBox API Token Agent Readonly.
Seit 2026-05-25 wird NetBox-Kontext nicht mehr auf prefix, site und numerische VLAN-ID reduziert. Prefixe und VLANs enthalten mindestens:
| Bereich | Felder |
|---|---|
| Prefix | id, prefix, scope_type, scope_id, scope, site, tenant |
| VLAN | vlan.id, vlan.vid, vlan.name, vlan.display, vlan.description, vlan.group |
| Klassifikation | role, status, description, comments |
| Governance | tags, custom_fields |
Grund: VLAN-IDs sind standortlokal. VLAN 70 kann an mehreren Sites legitim existieren. Agenten und RAG-Abfragen muessen daher Site/Tenant/Scope auswerten, bevor sie Prefixe oder VLANs als identisch behandeln.
Bekannter Referenzfall:
| Site/Scope | Tenant | VLAN | Prefix | Status |
|---|---|---|---|---|
Jena |
Sportgymnasium Jena |
70 Haustechnik |
10.7.0.0/24 |
legitimer SGJ-Bestand |
Lanstyle Lindenstrasse |
Lanstyle IT Solutions GmbH |
70 LS_AI_Services |
10.222.70.0/24 |
vorbereitetes AI-Services-VLAN |
VLAN-70-Vorbereitung Lindenstraße am 2026-05-25:
- Site/Scope:
Lanstyle Lindenstrasse - Tenant:
Lanstyle IT Solutions GmbH - VLAN:
70 LS_AI_Services - Prefix:
10.222.70.0/24 - Gateway:
10.222.70.1/24 - Reservierte Ziel-IPs:
10.222.70.10,.11,.12,.13,.20,.21 - Tags:
migration-vlan70,lanstyle-ai-suite,lindenstrasse - SGJ/Jena VLAN
70 Haustechnikmit Prefix10.7.0.0/24wurde nicht verändert.
Eingerichtet am 2026-05-25:
API_TOKEN_PEPPERSwurde in/opt/netbox/netbox/netbox/configuration.pygesetzt, damit NetBox v2-Token grundsaetzlich unterstuetzen kann.- NetBox wurde danach neu gestartet und
manage.py checkmeldet keine Probleme. - Fuer die Agent-Runtime wurde ein funktionierender Legacy-Write-Token in Vaultwarden abgelegt:
- Vaultwarden-Eintrag:
Lanstyle / NetBox API Token Agent Legacy Write - Auth-Schema:
Authorization: Token <value> - Test:
https://netbox.lanstyle.de/api/status/mitHTTP 200 - Der fuer
m.eberhardterzeugte v2-Token wurde nicht produktiv verwendet, weil ueber die Shell nur der oeffentliche Key, aber kein vollstaendiger Bearer-Token fuer den API-Test zur Verfuegung stand. Der ungueltige Vaultwarden-Zwischenstand wurde wieder entfernt.
Backups vor der Aenderung:
- Datenbankdump:
/root/config-backups/20260525-agent-runtime-netbox-token/netbox.sql - Config-Backup:
/opt/netbox/netbox/netbox/configuration.py.bak-20260525-agent-runtime-pepper - Dict-Fix-Backup:
/opt/netbox/netbox/netbox/configuration.py.bak-20260525-agent-runtime-pepper-dict-fix - Value-Fix-Backup:
/opt/netbox/netbox/netbox/configuration.py.bak-20260525-agent-runtime-pepper-value-fix
Gehärtet am 2026-05-25:
- Service-User:
lanstyle-agent-readonly - Gruppe:
Lanstyle Agent Readonly - Object Permission:
Lanstyle Agent Readonly View - Token:
Lanstyle Agent Runtime Readonly V1 write_enabled=False- Vaultwarden-Eintrag:
Lanstyle / NetBox API Token Agent Readonly - Agent Runtime nutzt den read-only Token in
/opt/agent-runtime/mcphub/lanstyle-infra.env. - MCPHub und Lanstyle Tools API wurden danach neu gestartet.
Validierung:
GET /api/status/:HTTP 200GET /api/ipam/prefixes/?limit=1:HTTP 200- Agent Runtime Healthcheck: OK
Der frühere Legacy-Write-Token bleibt nur noch als Alt-/Fallback-Secret in Vaultwarden dokumentiert und sollte nach einer Beobachtungsphase rotiert oder entfernt werden.
Controlled Execution Test-Write¶
Stand: 2026-05-26
Der erste geplante Controlled-Execution-Testwrite netbox:test_write sollte ausschliesslich den Tag AI-Controlled-Execution-Test mit Slug ai-execution-test anlegen oder aktualisieren. Der Versuch wurde fail-closed durch NetBox mit 403 Forbidden blockiert, weil der aktuell genutzte Agent-Token keine Write-Rechte auf extras.tags besitzt. Das Testobjekt wurde nicht erstellt.
Minimal benoetigte Rechte fuer den geplanten Test:
| Berechtigung | Zweck |
|---|---|
extras.view_tag |
vorhandenen Test-Tag pruefen und Verification lesen |
extras.add_tag |
Test-Tag anlegen, falls er nicht existiert |
extras.change_tag |
Test-Tag aktualisieren, falls er existiert |
extras.delete_tag ist fuer den geplanten Testwrite nicht erforderlich und sollte nicht im Standard-Test-Token enthalten sein. Cleanup oder Loeschen braucht eine separate Approval-ID und, falls wirklich noetig, einen separaten Cleanup-Token oder einen zeitlich begrenzten Sonderfall.
Empfohlenes Token-/User-Konzept:
| Feld | Empfehlung |
|---|---|
| Benutzer | lanstyle-agent-netbox-test-write |
| Gruppe | Lanstyle Agent NetBox Test Write |
| Object Permission | nur extras.tag mit view, add, change |
| Token | write-enabled, kein Admin, Ablaufdatum setzen |
| Vaultwarden | Lanstyle / NetBox API Token Agent Test Write |
| Runtime | separater Env-Wert, getrennt vom read-only Token |
Falls die NetBox-Version Token selbst nicht feingranular scopen kann, erfolgt die Begrenzung ueber Benutzer-/Gruppenrechte und NetBox Object Permissions. Ein globaler Admin-Token oder breite Rechte auf Prefixe, VLANs, Devices oder IP-Adressen sind fuer diesen Test nicht zulaessig.
Umgesetzt am 2026-05-26:
- Benutzer:
lanstyle-agent-netbox-test-write - Gruppe:
Lanstyle Agent NetBox Test Write - Object Permission View:
Lanstyle Agent NetBox Test Write Tag View - Object Permission Write:
Lanstyle Agent NetBox Test Write Tags Only - erlaubtes Modell:
extras.tag - erlaubte Write-Actions:
add,change - eingeschraenkter Zielslug fuer Write:
ai-execution-test - kein
delete - keine Rechte auf Prefixe, VLANs, Devices oder IP-Adressen
- kein Admin-/Superuser
- Token: v1-Legacy-Token mit Ablaufdatum
2026-06-25, Runtime-EnvNETBOX_TEST_WRITE_TOKEN
Validierung:
GET /api/status/mit Testtoken:200GET /api/extras/tags/?slug=ai-execution-testmit Testtoken:200- Testtag existiert vor dem Controlled Execution Write weiterhin nicht
POST /api/ipam/prefixes/mit Testtoken:403
Vaultwarden-Status:
- Ziel-Eintrag:
Lanstyle / NetBox API Token Agent Test Write - Vaultwarden CLI war beim Setup gesperrt und konnte lokal nicht ueber Keychain entsperrt werden.
- Der Tokenwert wurde nicht in Chat, Git oder Markdown ausgegeben.
- Bis zur erfolgreichen Vaultwarden-Ablage existiert der Token nur als root-only Runtime-Secret und temporaere root-only Uebergabedatei im NetBox-LXC.
Neue Approval-ID fuer den spaeteren Controlled Execution Testwrite:
appr-netbox-test-write-20260526-114210- Status: erfolgreich ausgefuehrt
- Alte fehlgeschlagene Approval-ID wird nicht wiederverwendet.
Erfolgreicher Controlled-Execution-Testwrite am 2026-05-26:
- Run-ID:
run-netbox-test-write-20260526-114210 - Aktion:
netbox:test_write - Ergebnis: Tag
AI-Controlled-Execution-Test/ai-execution-testerstellt - Objekt-ID:
8 - Backup:
/opt/agent-runtime/controlled-execution/backups/netbox/20260526-094122-run-netbox-test-write-20260526-114210-test_write.json - Replay-Schutz: erneute Nutzung der Approval-ID wird mit
400abgelehnt - Negativtest: Prefix-Write mit Testtoken bleibt mit
403blockiert
Kein Cleanup wurde ausgefuehrt. Entfernen des Test-Tags ist nur mit separater Approval-ID und expliziter scoped Cleanup-Action erlaubt.