Native Linux toolkit for Realtek RealManage (DMTF DASH) out-of-band management.
The first open-source Linux management suite for Realtek DASH NICs. Ports the functionality of the Windows-only Realtek Management Console, DASHConfigRT, and RtDashService to Linux.
Realtek RealManage is an out-of-band management engine embedded in certain Realtek Ethernet controllers. It implements DMTF DASH (Desktop and mobile Architecture for System Hardware), providing remote management capabilities that work regardless of host OS state — even when the machine is powered off.
Capabilities: Remote power control, KVM (VNC), Serial-over-LAN, USB/ISO redirect, boot order control, hardware inventory, BIOS management, firmware update, event alerts, account management — all via the NIC's independent management processor.
Think of it as: Intel AMT / iLO / IPMI, but built into the Ethernet NIC instead of the chipset. No vPro required. Works with AMD and Intel systems.
| Tool | Replaces (Windows) | Description |
|---|---|---|
| realmanage | Realtek Management Console | CLI for remote DASH management (power, KVM, inventory, boot, accounts) |
| dash-activate | DASHConfigRT | Provisioning/activation from Linux |
| rtdashd | RtDashService | Systemd daemon — OS agent that pushes hostname/OS info to firmware |
| rtdash-ctl | — | Low-level ioctl tool for direct firmware communication |
| librtdash | — | C library for the Realtek DASH driver ioctl interface |
DASH-capable Realtek NICs only (not regular consumer chips):
| Chip | Speed | DASH Type | IPC | Status |
|---|---|---|---|---|
| RTL8111DP | 1 GbE | Type 1 | Basic OOB | Untested |
| RTL8111EP | 1 GbE | Type 2 | CMAC | Should work |
| RTL8111FP | 1 GbE | Type 3 | CMAC | Should work |
| RTL8125BP | 2.5 GbE | Type 4 | IPC2 | Primary target |
| RTL8126 | 5 GbE | Type 2/3 | CMAC | Should work |
| RTL8127AP | 10 GbE | Type 4 | IPC2 | Should work |
NOT supported (no management engine): RTL8111B/C/D/E/F/G/H/K/L, RTL8125B (consumer).
| Vendor | Models | Notes |
|---|---|---|
| HP | EliteDesk 805, ProDesk 405, EliteBook 845 | AMD PRO platforms, RTL8111FPH |
| Lenovo | ThinkCentre M75, ThinkStation P620 | AMD PRO platforms |
| Gigabyte | B550M, X570 with DASH NIC | RTL8111EP confirmed |
| Dell | OptiPlex 7000 AMD, Precision 3660 AMD | RTL8111EP/FP |
| DIY | Any board with DASH-capable Realtek NIC | Check BIOS for RealManage option |
- DASH-capable Realtek NIC (see table above)
- DASH enabled in BIOS (Advanced → Network → RealManage Firmware Control)
- Realtek out-of-tree driver with DASH support (
r8125,r8126, orr8127) wsmanclipackage for remote management
# From source
make
sudo make install
# Enable the OS agent daemon
sudo systemctl enable --now rtdashd
# AUR (Arch Linux)
yay -S realtek-realmanage
# Also install AMD DASH CLI for additional capabilities
yay -S amd-dash-cli-bin# Auto-detect NIC, generate strong password
sudo dash-activate
# Or specify everything
sudo dash-activate -i enp3s0 -u admin -p 'MyP@ss123' -4 192.168.1.50/255.255.255.0/192.168.1.1# System info
realmanage -t 192.168.1.50 info
# JSON output (scriptable/pipeable)
realmanage -j -t 192.168.1.50 info | jq .
realmanage -j -t 192.168.1.50 power status
# Fleet management (run against multiple hosts)
realmanage -j -T hosts.txt power status
# Power control (all 16 DASH states)
realmanage -t 192.168.1.50 power status
realmanage -t 192.168.1.50 power on
realmanage -t 192.168.1.50 power off-graceful
realmanage -t 192.168.1.50 power cycle
realmanage -t 192.168.1.50 power hibernate
realmanage -t 192.168.1.50 power nmi
# Hardware inventory
realmanage -t 192.168.1.50 cpu
realmanage -t 192.168.1.50 memory
realmanage -t 192.168.1.50 bios
realmanage -t 192.168.1.50 sensors
realmanage -t 192.168.1.50 fans
realmanage -t 192.168.1.50 battery
realmanage -t 192.168.1.50 powersupply
realmanage -t 192.168.1.50 asset
# Full inventory dump (always JSON)
realmanage -t 192.168.1.50 inventory > host-inventory.json
# Continuous monitor
realmanage -t 192.168.1.50 watch 10
# KVM remote desktop
realmanage -t 192.168.1.50 kvm
# USB/ISO redirection
realmanage -t 192.168.1.50 usb mount http://fileserver/ubuntu.iso
realmanage -t 192.168.1.50 usb unmount
# Boot control
realmanage -t 192.168.1.50 boot
realmanage -t 192.168.1.50 boot set PXE
# Event monitoring
realmanage -t 192.168.1.50 events
realmanage -t 192.168.1.50 events --listen
# Discover DASH systems on network
realmanage discover 192.168.1.0/24
# Raw WS-Man for advanced use
realmanage -t 192.168.1.50 raw http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_Processor# Check if NIC supports DASH
sudo rtdash-ctl -i enp3s0 check
# DASH firmware version
sudo rtdash-ctl -i enp3s0 dash-version
# NIC MAC address
sudo rtdash-ctl -i enp3s0 mac-get
# IPv4/IPv6 OOB configuration
sudo rtdash-ctl -i enp3s0 get-ipv4
sudo rtdash-ctl -i enp3s0 set-ipv4 192.168.1.50 255.255.255.0 192.168.1.1
sudo rtdash-ctl -i enp3s0 get-ipv6
sudo rtdash-ctl -i enp3s0 set-ipv6 fe80::1 64 fe80::1
# SNMP trap configuration
sudo rtdash-ctl -i enp3s0 snmp-set 192.168.1.1 162 public
sudo rtdash-ctl -i enp3s0 snmp-get
# Wake-on-LAN patterns
sudo rtdash-ctl -i enp3s0 wake-pattern-set 0 ffffffffffff
sudo rtdash-ctl -i enp3s0 wake-pattern-get 0
sudo rtdash-ctl -i enp3s0 wake-pattern-del 0
# ARP/NS offload
sudo rtdash-ctl -i enp3s0 arp-offload-set 192.168.1.50 fe80::1 aa:bb:cc:dd:ee:ff 1
# Send driver ready signal
sudo rtdash-ctl -i enp3s0 driver-ready
# Sync hostname to firmware
sudo rtdash-ctl -i enp3s0 sync-hostnamertdashd exposes Prometheus metrics on port 9101:
# curl http://localhost:9101/metrics
rtdash_driver_ready_total 1
rtdash_oob_messages_total 0
rtdash_last_push_timestamp 1748900000
rtdash_hostname_syncs_total 3
Configure via /etc/rtdashd.conf:
INTERFACE=enp3s0
METRICS_PORT=9101
PUSH_INTERVAL=30Or CLI: rtdashd -m 9101 -I 30 -i enp3s0
# Generate self-signed cert and push to NIC (Class B / port 664)
sudo dash-activate -S -t 192.168.1.50
# Then manage securely
realmanage -s -k -t 192.168.1.50 info┌─────────────────────────────────────────────────────────────┐
│ Remote Management Host │
│ realmanage / AMD DASH CLI / browser (http://<oob-ip>:623) │
└──────────────────────────┬──────────────────────────────────┘
│ WS-Man / SOAP / HTTP(S)
│ Port 623 (HTTP) / 664 (HTTPS)
┌──────────────────────────┴──────────────────────────────────┐
│ Realtek NIC (DASH) │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ DASH Management Engine (runs on NIC's embedded CPU) │ │
│ │ - WS-Man server on port 623/664 │ │
│ │ - Embedded web server │ │
│ │ - Power control, KVM, SOL, IDER │ │
│ │ - Independent of host OS │ │
│ └────────────────────────┬────────────────────────────────┘ │
│ │ IPC2 mailbox (MMIO 0x32000-0x33000)
│ │ or CMAC (MMIO 0xBAF20000) │
└──────────────────────────┬──────────────────────────────────┘
│ ioctl SIOCDEVPRIVATE_RTLDASH (0x89F2)
┌──────────────────────────┴──────────────────────────────────┐
│ Host OS (Linux) │
│ rtdashd (OS agent) → pushes hostname, OS info, heartbeat │
│ dash-activate → initial provisioning via ioctl │
│ rtdash-ctl → low-level firmware communication │
└─────────────────────────────────────────────────────────────┘
Application: DMTF DASH CIM Profiles
Binding: WS-Management CIM Binding (DSP0227)
Transport: WS-Management / SOAP 1.2 / XML
Security: HTTP Digest (Class A) or TLS + Digest (Class B)
Network: HTTP port 623 / HTTPS port 664
| RealManage | Intel AMT | |
|---|---|---|
| Location | In the NIC | In the PCH/chipset (ME) |
| CPU requirement | Any (AMD or Intel) | Intel vPro only |
| Standard | Open DMTF DASH | Proprietary |
| Provisioning | BIOS + DASHConfigRT | Certificate-based, zero-touch |
| KVM | VNC over SSH | RFB (proprietary) |
| Cost | No additional licensing | vPro premium |
The mainline r8169 kernel driver has basic DASH awareness but does not expose the management ioctl interface. You need Realtek's out-of-tree drivers:
- r8125 (2.5 GbE): github.com/openwrt/rtl8125
- r8126 (5 GbE): github.com/openwrt/rtl8126
- r8127 (10 GbE): Available from Realtek
The driver must be compiled with ENABLE_DASH_SUPPORT=y in the Makefile.
- 88plug/intel-amt-linux — Inspiration for this project. Linux AMT management.
- 88plug/amt-activate-linux — AMT activation from Linux.
- AMD DASH CLI — AMD's official DASH CLI (closed-source, Linux .deb/.rpm available).
- Openwsman/wsmancli — WS-Management CLI (the transport layer).
FSL-1.1-ALv2 — Functional Source License with Apache 2.0 future license.