Website: netOrk v0.28.0 and real screenshots #2

Merged
christianmanivong merged 5 commits from feature/v0.28-real-screenshots into main 2026-09-26 08:58:00 +00:00
3 changed files with 61 additions and 32 deletions
Showing only changes of commit 04c5c00280 - Show all commits
+40 -18
View File
@@ -142,18 +142,23 @@ const en = {
{
title: 'Supported Drivers',
items: [
'fritzbox — AVM Fritz!Box routers',
'procurve — HP ProCurve / Aruba switches',
'fritzbox — AVM Fritz!Box routers (read-only)',
'hpe_officeconnect — HPE OfficeConnect 1820 / 1920S switches',
'linux — Generic Linux servers',
'netgear — Netgear switches',
'netgear_plus — Netgear Plus switches (web UI)',
'netgear_smart — Netgear Smart Managed Pro switches',
'openmediavault — OpenMediaVault NAS',
'openwrt — OpenWRT access points',
'openwrt — OpenWrt routers and access points',
'opnsense — OPNsense firewalls',
'procurve — HPE ProCurve / Aruba switches',
'proxmox — Proxmox VE hypervisors',
'qnap_qts — QNAP NAS on QTS',
'sonos — Sonos speakers',
'tplink_jetstream — TP-Link Jetstream managed switches',
'zyxel — Zyxel switches',
'Plus all built-in NAPALM drivers: Cisco IOS / IOS-XE / NX-OS, Arista EOS, Juniper JunOS',
'tplink_jetstream — TP-Link JetStream managed switches',
'yealink — Yealink IP phones',
'zyxel — Zyxel VMG routers',
'A device can hold several roles at once, e.g. a QNAP is storage, hypervisor and Linux host',
'Built-in NAPALM drivers (Cisco IOS / IOS-XE / NX-OS, Arista EOS, Juniper JunOS) are installed, but not tested with netOrk',
],
},
{
@@ -320,10 +325,16 @@ const en = {
},
drivers: {
heading: 'Supported Devices',
sub: 'netOrk ships with custom NAPALM drivers for 11 device types and supports all built-in NAPALM drivers. Capability availability varies by driver.',
sub: 'netOrk ships with custom NAPALM drivers for 15 device types and can use the built-in NAPALM drivers. Capability availability varies by driver.',
customHeading: 'Custom Drivers',
napalmHeading: 'Built-in NAPALM Drivers',
napalmSub: 'All standard NAPALM drivers are supported. Capabilities depend on the upstream NAPALM implementation.',
napalmSub: 'The standard NAPALM drivers are installed and read facts, interfaces, LLDP and VLANs as far as the upstream implementation goes. They are not tested with netOrk and get none of its driver-specific features such as device roles, SNMP health metrics or configuration writes.',
notes: [
'Health: SNMP metrics (CPU, memory, interface counters); needs SNMP enabled on the device and a community configured in netOrk.',
'LLDP on Linux, OpenMediaVault, QNAP and OPNsense needs lldpd (os-lldpd) installed on the host.',
'Config push: netOrk writes configuration to the device, e.g. VLANs and ports on switches, UCI profiles on OpenWrt, DHCP, DNS and firewall rules on OPNsense, SDN VNets on Proxmox.',
'Reboot: a reboot from netOrk actually restarts OpenWrt and Proxmox devices. OPNsense and Linux hosts can reboot as part of applying updates.',
],
},
gettingStarted: {
label: 'coming soon',
@@ -556,18 +567,23 @@ const de: Translations = {
{
title: 'Unterstützte Treiber',
items: [
'fritzbox — AVM Fritz!Box Router',
'procurve — HP ProCurve / Aruba Switches',
'fritzbox — AVM Fritz!Box Router (nur lesend)',
'hpe_officeconnect — HPE OfficeConnect 1820 / 1920S Switches',
'linux — Generische Linux-Server',
'netgear — Netgear Switches',
'netgear_plus — Netgear Plus Switches (Web-UI)',
'netgear_smart — Netgear Smart Managed Pro Switches',
'openmediavault — OpenMediaVault NAS',
'openwrt — OpenWRT Access Points',
'openwrt — OpenWrt Router und Access Points',
'opnsense — OPNsense Firewalls',
'procurve — HPE ProCurve / Aruba Switches',
'proxmox — Proxmox VE Hypervisoren',
'qnap_qts — QNAP NAS mit QTS',
'sonos — Sonos Lautsprecher',
'tplink_jetstream — TP-Link Jetstream Managed Switches',
'zyxel — Zyxel Switches',
'Sowie alle integrierten NAPALM-Treiber: Cisco IOS / IOS-XE / NX-OS, Arista EOS, Juniper JunOS',
'tplink_jetstream — TP-Link JetStream Managed Switches',
'yealink — Yealink IP-Telefone',
'zyxel — Zyxel VMG Router',
'Ein Gerät kann mehrere Rollen zugleich haben, z. B. ist ein QNAP Storage, Hypervisor und Linux-Host',
'Die integrierten NAPALM-Treiber (Cisco IOS / IOS-XE / NX-OS, Arista EOS, Juniper JunOS) sind installiert, aber nicht mit netOrk getestet',
],
},
{
@@ -734,10 +750,16 @@ const de: Translations = {
},
drivers: {
heading: 'Unterstützte Geräte',
sub: 'netOrk liefert eigene NAPALM-Treiber für 11 Gerätetypen und unterstützt alle integrierten NAPALM-Treiber. Der Funktionsumfang variiert je nach Treiber.',
sub: 'netOrk liefert eigene NAPALM-Treiber für 15 Gerätetypen und kann die integrierten NAPALM-Treiber nutzen. Der Funktionsumfang variiert je nach Treiber.',
customHeading: 'Eigene Treiber',
napalmHeading: 'Integrierte NAPALM-Treiber',
napalmSub: 'Alle Standard-NAPALM-Treiber werden unterstützt. Der Funktionsumfang hängt von der jeweiligen NAPALM-Implementierung ab.',
napalmSub: 'Die Standard-NAPALM-Treiber sind installiert und lesen Fakten, Interfaces, LLDP und VLANs, soweit die jeweilige Implementierung das hergibt. Mit netOrk getestet sind sie nicht, und die treiberspezifischen Funktionen – Geräterollen, SNMP-Health-Metriken, Konfiguration schreiben – bekommen sie nicht.',
notes: [
'Health: SNMP-Metriken (CPU, Speicher, Interface-Zähler); setzt aktiviertes SNMP am Gerät und eine in netOrk hinterlegte Community voraus.',
'LLDP auf Linux, OpenMediaVault, QNAP und OPNsense setzt ein installiertes lldpd (os-lldpd) auf dem Host voraus.',
'Config push: netOrk schreibt Konfiguration aufs Gerät, etwa VLANs und Ports auf Switches, UCI-Profile auf OpenWrt, DHCP, DNS und Firewallregeln auf OPNsense, SDN-VNets auf Proxmox.',
'Reboot: Ein Neustart aus netOrk startet OpenWrt- und Proxmox-Geräte tatsächlich neu. OPNsense und Linux-Hosts können beim Einspielen von Updates neu starten.',
],
},
gettingStarted: {
label: 'demnächst verfügbar',
+17 -10
View File
@@ -19,17 +19,21 @@ interface Driver {
}
const DRIVERS: Driver[] = [
{ name: 'fritzbox', deviceType: 'AVM Fritz!Box routers', facts: '✓', interfaces: '✓', lldp: '—', vlans: '—', ssids: '✓', health: '✓', docker: '—', reboot: '✓', configPush: '—', status: 'stable' },
{ name: 'procurve', deviceType: 'HP ProCurve / Aruba switches', facts: '✓', interfaces: '✓', lldp: '✓', vlans: '✓', ssids: '—', health: '✓', docker: '—', reboot: '✓', configPush: '—', status: 'stable' },
{ name: 'linux', deviceType: 'Generic Linux servers', facts: '✓', interfaces: '✓', lldp: '✓', vlans: '—', ssids: '—', health: '✓', docker: '✓', reboot: '✓', configPush: '—', status: 'stable' },
{ name: 'netgear', deviceType: 'Netgear switches', facts: '✓', interfaces: '✓', lldp: '✓', vlans: '✓', ssids: '—', health: '✓', docker: '—', reboot: '—', configPush: '—', status: 'beta' },
{ name: 'openmediavault', deviceType: 'OpenMediaVault NAS', facts: '✓', interfaces: '✓', lldp: '✓', vlans: '—', ssids: '—', health: '✓', docker: '✓', reboot: '✓', configPush: '—', status: 'stable' },
{ name: 'openwrt', deviceType: 'OpenWRT access points', facts: '✓', interfaces: '✓', lldp: '✓', vlans: '✓', ssids: '✓', health: '✓', docker: '—', reboot: '✓', configPush: '✓', status: 'stable' },
{ name: 'opnsense', deviceType: 'OPNsense firewalls', facts: '✓', interfaces: '✓', lldp: '✓', vlans: '✓', ssids: '—', health: '✓', docker: '—', reboot: '✓', configPush: '—', status: 'stable' },
{ name: 'proxmox', deviceType: 'Proxmox VE hypervisors', facts: '✓', interfaces: '✓', lldp: '✓', vlans: '✓', ssids: '—', health: '✓', docker: '✓', reboot: '✓', configPush: '—', status: 'stable' },
{ name: 'fritzbox', deviceType: 'AVM Fritz!Box routers (read-only)', facts: '✓', interfaces: '✓', lldp: '—', vlans: '—', ssids: '✓', health: '—', docker: '—', reboot: '—', configPush: '—', status: 'stable' },
{ name: 'hpe_officeconnect', deviceType: 'HPE OfficeConnect 1820 / 1920S switches', facts: '✓', interfaces: '✓', lldp: '✓', vlans: '✓', ssids: '—', health: '—', docker: '—', reboot: '—', configPush: '—', status: 'beta' },
{ name: 'linux', deviceType: 'Generic Linux servers', facts: '✓', interfaces: '✓', lldp: '✓', vlans: '—', ssids: '—', health: '✓', docker: '✓', reboot: '—', configPush: '—', status: 'stable' },
{ name: 'netgear_plus', deviceType: 'Netgear Plus switches (web UI)', facts: '✓', interfaces: '✓', lldp: '—', vlans: '✓', ssids: '—', health: '—', docker: '—', reboot: '—', configPush: '—', status: 'beta' },
{ name: 'netgear_smart', deviceType: 'Netgear Smart Managed Pro switches', facts: '✓', interfaces: '✓', lldp: '✓', vlans: '✓', ssids: '—', health: '✓', docker: '—', reboot: '—', configPush: '✓', status: 'beta' },
{ name: 'openmediavault', deviceType: 'OpenMediaVault NAS', facts: '✓', interfaces: '✓', lldp: '✓', vlans: '—', ssids: '—', health: '✓', docker: '✓', reboot: '—', configPush: '—', status: 'stable' },
{ name: 'openwrt', deviceType: 'OpenWrt routers and access points', facts: '✓', interfaces: '✓', lldp: '✓', vlans: '✓', ssids: '✓', health: '✓', docker: '—', reboot: '✓', configPush: '✓', status: 'stable' },
{ name: 'opnsense', deviceType: 'OPNsense firewalls', facts: '✓', interfaces: '✓', lldp: '✓', vlans: '✓', ssids: '—', health: '✓', docker: '—', reboot: '—', configPush: '✓', status: 'stable' },
{ name: 'procurve', deviceType: 'HPE ProCurve / Aruba switches', facts: '✓', interfaces: '✓', lldp: '✓', vlans: '✓', ssids: '—', health: '✓', docker: '—', reboot: '—', configPush: '✓', status: 'stable' },
{ name: 'proxmox', deviceType: 'Proxmox VE hypervisors', facts: '✓', interfaces: '✓', lldp: '✓', vlans: '✓', ssids: '—', health: '✓', docker: '—', reboot: '✓', configPush: '✓', status: 'stable' },
{ name: 'qnap_qts', deviceType: 'QNAP NAS on QTS', facts: '✓', interfaces: '✓', lldp: '✓', vlans: '—', ssids: '—', health: '—', docker: '✓', reboot: '—', configPush: '—', status: 'beta' },
{ name: 'sonos', deviceType: 'Sonos speakers', facts: '✓', interfaces: '✓', lldp: '—', vlans: '—', ssids: '—', health: '—', docker: '—', reboot: '—', configPush: '—', status: 'beta' },
{ name: 'tplink_jetstream', deviceType: 'TP-Link Jetstream switches', facts: '✓', interfaces: '✓', lldp: '✓', vlans: '✓', ssids: '—', health: '✓', docker: '—', reboot: '✓', configPush: '—', status: 'stable' },
{ name: 'zyxel', deviceType: 'Zyxel switches', facts: '✓', interfaces: '✓', lldp: '✓', vlans: '✓', ssids: '—', health: '✓', docker: '—', reboot: '✓', configPush: '—', status: 'beta' },
{ name: 'tplink_jetstream', deviceType: 'TP-Link JetStream switches', facts: '✓', interfaces: '✓', lldp: '✓', vlans: '✓', ssids: '—', health: '✓', docker: '—', reboot: '—', configPush: '✓', status: 'stable' },
{ name: 'yealink', deviceType: 'Yealink IP phones', facts: '✓', interfaces: '—', lldp: '—', vlans: '—', ssids: '—', health: '—', docker: '—', reboot: '—', configPush: '—', status: 'beta' },
{ name: 'zyxel', deviceType: 'Zyxel VMG routers', facts: '✓', interfaces: '✓', lldp: '—', vlans: '—', ssids: '✓', health: '—', docker: '—', reboot: '—', configPush: '—', status: 'beta' },
]
const NAPALM_BUILTIN = ['Arista EOS', 'Cisco IOS', 'Cisco IOS-XE', 'Cisco NX-OS', 'Juniper JunOS']
@@ -103,6 +107,9 @@ export default function Drivers() {
</tbody>
</table>
</div>
<ul className="mt-4 space-y-1 text-xs text-slate-500">
{t.drivers.notes.map((n) => <li key={n}>{linkify(n)}</li>)}
</ul>
</div>
<div>
+3 -3
View File
@@ -10,9 +10,9 @@ import { useLang } from '../context/LangContext'
import { linkify } from '../lib/glossary'
const DRIVERS = [
'Arista EOS', 'Cisco IOS', 'Cisco IOS-XE', 'Cisco NX-OS', 'Fritz!Box',
'HP ProCurve / Aruba', 'Juniper JunOS', 'Linux', 'Netgear', 'OpenMediaVault',
'OpenWRT', 'OPNsense', 'Proxmox VE', 'Sonos', 'TP-Link Jetstream', 'Zyxel',
'Fritz!Box', 'HPE OfficeConnect', 'HPE ProCurve / Aruba', 'Linux', 'Netgear',
'OpenMediaVault', 'OpenWrt', 'OPNsense', 'Proxmox VE', 'QNAP QTS', 'Sonos',
'TP-Link JetStream', 'Yealink', 'Zyxel VMG',
]
function BrowserFrame({ label, children }: { label: string; children: React.ReactNode }) {