Everyone's installing local LLMs. I bought a rack.
LinkedIn has calcified into two kinds of posts, and I've developed an allergy to both.

First, the model people. Every day, another breathless thread about the AI breakthrough that changed everything since breakfast, written (as far as I can tell) by someone who met the word "quantization" the previous evening. There are real exceptions: Marco Pericci actually knows the field and puts out serious work. Most of the rest ran ollama pull once and started calling it a research agenda.
The second genre is worse, because it's wearing a blazer:
"For fifteen years we've delivered mission-critical solutions across complex, heterogeneous environments. And the data keeps telling us the same thing: the problem was never the technology; it was the people, the process, and our relationship with uncertainty. (Full article below.)"
Four reactions, three of them colleagues, the fourth a bot. An lnkd.in link to the full piece. Nothing said, at length, in business casual. This post was already tired twenty years ago.
There is one LinkedIn format I genuinely look forward to, though: the dev log. Someone building a real thing in public, week by week, bugs and dead ends and all. No hype, no blazer, just the work. (Full disclosure: I write them, and this is one.)
So, in that spirit: I didn't train a model. I didn't discover that software is Actually About People. I did something genuinely useful and deeply unfashionable.
I bought a rack.
Total damage: €200 for the rack itself, and €60 for the two boxes that now run my entire home network. A 48-port Netgear smart switch (€25) and a MikroTik router (€35), both off the second-hand enterprise market.
Yes: the empty metal frame cost more than the switch and the router combined. That's not a mistake, it's the whole point. The metal is what you pay for. The competence is free.
Because here's what nobody posting about local models admits: your shiny GPU inference is only as good as the plumbing underneath it. And the plumbing is where the real engineering lives.
The unfashionable layer
My homelab does actual work. A GPU box runs Immich's machine-learning stack on CUDA (face recognition, semantic photo search), plus Plex and Jellyfin transcoding. There's a NAS holding everything. And right now, as I write this, I'm standing up a 3-node k3s cluster on a stack of ThinkCentre mini PCs, the tiny corporate desktops that flood the used market once companies refresh them.
Every one of those workloads rides on the network. Pull photos from the NAS to the GPU box, schedule a pod across three nodes, stream 4K to a TV: it's all packets on a wire. The network isn't a detail under the homelab. It is the substrate. Upgrade everything else and leave the network alone, and you've built a sports car on bicycle tyres.
So I fixed the tyres first.
€260, and most of it was the frame
The bill, in full:
The rack: a real frame, so the lab stops being a pile of boxes on a shelf. €200. The single most expensive thing here, and the only one with nothing electronic in it.
Netgear GS348T: 48 gigabit ports and 4 SFP, fully smart-managed (VLANs, LAG, QoS). €25.

MikroTik RB2011: the router. RouterOS does things €300 consumer boxes simply can't. €35.
Let that ratio land: the two devices that make every routing and switching decision in my house cost less than a third of the empty cabinet they bolt into. That's the enterprise used market in one line: the gear depreciates to zero on a fixed schedule no matter how good it still is, and the value just moves to whoever knows what to do with it.

What it feeds
Worth being concrete about why the upgrade earned its place:
- A GPU server doing Immich ML on CUDA, plus media transcoding.
- A NAS tier for bulk storage.
- The k3s cluster (three ThinkCentres, in progress), so I can run real orchestrated workloads at home instead of one overloaded Docker host.
None of that is exotic. All of it is bandwidth-hungry and latency-sensitive, and all of it was being throttled by a consumer gateway that thought it was doing me a favour.
The full inventory
For the gear-curious, here's the whole census: the on-prem kit that makes up the lab. Watch the right-hand column: the only new money in this entire refresh is the €260 at the top. Everything else I already had lying around.
Networking
| Device | What it is | Role | Paid |
|---|---|---|---|
| 19-inch rack | The frame | Holds all of it | €200 |
| FRITZ!Box 7530 | VDSL2 35b modem | Terminates the line (PPPoE), pure modem now | already had it |
| MikroTik RB2011 | RouterOS router | The gateway: routing, firewall, dual-WAN, WiFi controller | €35 |
| MikroTik RB1100AHx4 | RouterOS router | Incoming, will take over as the main gateway | incoming |
| DrayTek Vigor 130 | VDSL bridge modem | Cold spare | already had it |
| Tenda 4G router | LTE router | WAN2 automatic failover | already had it |
| NETGEAR GS348T | 48-port + 4×SFP smart switch | Core switch: everything wired lands here | €25 |
| TP-Link TL-SG605E | 5-port switch | Secondary switch, far room | already had it |
| MikroTik cAP ax | WiFi 6 access point | House WiFi, centrally managed | already had it |
| FRITZ!Powerline 1260 | Powerline pair | Wired backhaul to the other room | already had it |
Compute & storage
| Device | What it is | Role | Paid |
|---|---|---|---|
| Orion | Laptop-turned-server (i7-12650H · RTX 3050 Ti · 32 GB) | GPU workloads: Immich ML, Plex/Jellyfin, Docker | already had it |
| Gandalf | Always-on utility host | DNS, DHCP, reverse proxy, Tailscale subnet router | already had it |
| 3× ThinkCentre | Mini PCs | k3s cluster (in progress) | used |
| QNAP | NAS | Main storage: media, photos, backups | already had it |
| VegaNAS | NAS | Secondary storage & shares | already had it |
The actual engineering
The fun part wasn't the shopping, it was the rebuild:
- Split the edge. The ISP box is now a dumb VDSL2 modem and nothing else; the MikroTik does the actual routing. One job each, done properly.
- Dual-WAN failover. Primary line up front, a 4G modem as automatic backup. If the line drops mid-call, the router fails over on its own.
- The one that felt best: bufferbloat. Under load, my latency used to balloon to 126 ms: every big upload turned video calls to mush. A properly tuned CAKE queue pinned it at 32 ms under full load. Same line, same speed, a quarter of the lag. That's the difference between a call dropping and not.
- Centralised WiFi with CAPsMAN, so the access points are managed from one place instead of hand-configured one by one.
Medium-depth on purpose here; if there's appetite, I'll do a follow-up with the actual CAKE and dual-WAN config.
The payoff you can feel
Here's my favourite thing the "boring" layer actually does. A temperature sensor in the room publishes to MQTT; Home Assistant watches the feed. Cross 36 °C and two things fire at once: a TP-Link Tapo LED strip snaps red, and the room's air conditioner switches itself on.
It's a daft little automation, and it's also the whole thesis in miniature: a sensor, a broker, a rule, and a room that cools itself, all riding on the same network I just rebuilt. No cloud detour, no app waking up a server in another country, no "integration temporarily unavailable". Just packets on my own wire doing something I can physically feel.
Right now it's 38 °C in Florence, every single day. So the lights flip red and the AC kicks in roughly every ninety minutes. I have never been so smug about an if temperature > 36 rule in my life.
Discipline through constraints, again
I wrote a while back about discipline through constraints in the context of a game engine. Turns out a tight hardware budget does the same thing to a network that a tight scope does to code: it kills the temptation to throw money at problems and forces you to actually understand them. You can't buy your way out of bufferbloat. You have to know what a queue is.
The foundation is the flex
Local LLMs are great. I'll probably run one on the k3s cluster once the network under it can actually feed it. But the internet's collective attention is pointed at the top of the stack while the bottom (the boring, unglamorous, load-bearing bottom) goes ignored.
I spent €260 making the bottom solid: €200 of it on a metal frame, €60 on the two boxes that actually think. It's the best money I've put into the lab this year, and it's the part nobody's going to put on a benchmark chart.
The foundation is the flex.
A confession
For the record: I use AI. A lot. It's threaded through half of what I ship, and I'm not remotely precious about it; this was never an anti-AI post. It's an anti-only-AI one.
But every so often I miss this. The cabling. Queueing theory. Architecture you can put your hands on and hear click into a rack. Marco Pericci once pointed out that, underneath it all, I'm a hardware guy.
readers, he's right.