DTVSOL Super Router

How it works

The Super Router is software on your own x86 server. One program, dtvsold, does the work; everything it knows is in one database on the router.

dtvsold — the router

One compiled Rust daemon: the API, the DHCP and routing configuration, the firewall and NAT rules, the shaping, the alarm checks and the timers. No PHP, no Python in production.

The database

Clients, services, VLANs, networks, plans, the router’s own interfaces and every OLT live in one SQLite file. Every change is a version you can go back to.

The OLT drivers

A compiled driver per OLT vendor talks SNMP to the OLT (the CLI only as a fallback). Huawei first; others follow.

The monitor

A web page on the router (HTTPS, port 8881): the live OLT console, the OLT chassis, alarms by area, settings, and the 24/7 wall.

dtvsol — the command line

Everything the API does, from the shell, with help and Tab completion: `dtvsol doctor`, `dtvsol service add`, `dtvsol netcfg apply`…

The licence

Each router holds a licence bound to its machine; it renews itself every day from DTVSOL while support is active.

A new subscriber, end to end

1

Billing

calls POST /services with the ONT’s serial, the PON port and the plan

2

Router

picks the PON port’s VLAN, a fixed address and the IPv6 prefix; writes DHCP, shaping, anti-spoofing and CGNAT

3

OLT

the driver adds the ONT and its service port with the plan’s traffic table; the OLT saves itself later

4

Client

the ONT comes up, gets its address by Option 82 and browses; the monitor shows its light from the next collector run

Built so a mistake cannot take the network down

  • Network changes are undone by themselves unless confirmed within 120 s
  • Changes that would cut your own access or the default route are refused
  • Every configuration change is a version; restore any of them
  • Daily backups, with an encrypted copy off the router
  • Admins and viewers; every change logged with who made it
  • The management ports answer only an allow-list; fail2ban stops guessing

What it runs on

An x86-64 server with Ubuntu 24.04 LTS, network cards for the uplink and the OLTs (10G to 100G; one mid-range server carries up to 100,000 subscribers), SSD storage. See the hardware page.

Hardware →