惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
Netflix TechBlog - Medium
罗磊的独立博客
H
Help Net Security
I
Intezer
G
Google Developers Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
T
Troy Hunt's Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
U
Unit 42
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
N
News and Events Feed by Topic
J
Java Code Geeks
S
Security Affairs
T
The Blog of Author Tim Ferriss
Recent Commits to openclaw:main
Recent Commits to openclaw:main
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
D
Docker
The GitHub Blog
The GitHub Blog
F
Full Disclosure
N
News and Events Feed by Topic
Webroot Blog
Webroot Blog
S
Security @ Cisco Blogs
腾讯CDC
人人都是产品经理
人人都是产品经理
M
MIT News - Artificial intelligence
Blog — PlanetScale
Blog — PlanetScale
T
Threatpost
D
DataBreaches.Net
Recent Announcements
Recent Announcements
博客园 - 三生石上(FineUI控件)
MongoDB | Blog
MongoDB | Blog
博客园 - 【当耐特】
L
LINUX DO - 最新话题
Google Online Security Blog
Google Online Security Blog
S
Schneier on Security
S
Securelist
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Help Net Security
Help Net Security
P
Proofpoint News Feed
Project Zero
Project Zero
S
SegmentFault 最新的问题
H
Hackread – Cybersecurity News, Data Breaches, AI and More
MyScale Blog
MyScale Blog
Google DeepMind News
Google DeepMind News
宝玉的分享
宝玉的分享
Y
Y Combinator Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
博客园 - 叶小钗

Comments for Hackaday

Repairing A Pair Of Voodoo 2 GPUs For Some SLI Action AI The Truly Environmentally Friendly Way News Sites Are Blocking Internet Archive Over AI Scraping Fears How The 2020s Chip Crisis Led To A Buggy Saleae Analyzer In 2026 Evidence For Water Vapor Plumes On Europa Vanishes In Re-Analysis Mechanical Stability For Your Coils 3D Printed Hose Sprayer Sets Phasers To Suds The Merits Of Comment-Driven Development As Counterweight To TDD Building A Desktop Catalytic Cracker Process 4 Billion Pixels Per Second From 16 DIY Cameras For The Best V-Tubing Rig Ever An Unlikely Host For An 8080 Emulator Using Brand New NiMH Cells After Sitting 12 Years Unused Investigating The S3 Virge’s Reputation As A 3D Decelerator Card As It Turns Out, There’s More Than One Cassette Mechanism Being Made After All Using Windows 11 On An LGA 775 PC With AGP Videocard An Ethernet WiFi Router on a Pi Pico 2W This Week In Security: Messing With AI, 7Zip And Notepad++ Vulnerabilities, HTTP2 Bomb, And More Using Electrolysis For More Than Just Generating Hydrogen Vintage Turntable Gets Brain Transplant And Home Assistant Integration Connecting Your Car To Home Assistant Microsoft Claims 20 Second Qubits If You Want To Hack Me, Come In Through The Speaker Ways To Embed Magnets In 3D Prints And Not Ruin Printers An RGB Keyboard For Your Hackaday Communicator Badge Ask Hackaday: How Do You Feel About Electronic Shelf Labels? Make Your Ceiling Disappear With ADS-B And Short-Throw Projector Fixing A Nintendo Game Boy Clone That Runs Too Fast Web-Based Control For A CB Radio Distilling Stale Gasoline To Make It Usable Again DIY Ceramic Circuit Boards Surely Count As Solarpunk Texas Instruments Changes The NE5532 And Others Into Incompatible Versions Deltarune’s Tenna Brought To Life Linux Fu: Fake Webcams, GUI Edition Hydraulic Drive For Your Lawn Tractor But Just What Is This ‘Artificial Intelligence’? A Diffraction Grating Makes This Clock Readable Turning An Old 3D Printer Into A Vinyl Cutter For Cheap A High-Vacuum Controller For An Eventual Electron Microscope Does Your Terminal Speak Morse? This One Does From Scrappy Pallet Wood To Fancy Tea Tray The 2026 EMF Badge Arrives, With An Add-On. As Expected, It’s Familiar Linux Fu: Taming Strace STM32 Handheld Has OpenGL And All The Classics Jenny’s Daily Drivers: Microsoft Windows 11 Using A Mirror To 3D Scan Both Sides Of An Object At Once Cookies, Baked The 3D Printer Way Restoring Apple’s Terrible But Awesome IBook Laptop After The Dust Settles: Building Pebble Apps Bilingual E-paper News Feed Helps Brush Up Language Skills On The Wisdom Of Replacing A NiMH Module In A Prius Battery Pack Know Your Food: Cheesemaking Like A Wire Bender, But For Pop Tubes Classically-named Argus Robot Is Terminator Meets Tumbleweed Making a Zippy FDM Printer out of Wood Off-Grid OCR Server Powered By IPhone Hackaday Links: May 31, 2026 Comment on A Special Type of Mower For Rocky Fields by Chris Maple 4-bit Relay Logic Counter Begs To Have Its Buttons Pushed Loading Sega Genesis Games Off A Vinyl Record Ebike Display Uses Reflective LCD Modern Graphics Via DisplayLink For Your ISA-Era PC The Final Steps To A Sub-Minute Benchy Poking Around With JTAG On A Guitar Amp Keychain GameCube Controller Made Functional Breaking Enigma With An FPGA, Just Like At Bletchley Park The Uncooperative Mirror Will Not Help You Testing Various Ways To Waterproof FDM Printed Parts Cheap Yellow Display With Boosted PSRAM Turned Snazzy Emulator Station It’s Another Pi Handheld. But It’s A Really Good One Take The Reins Of This Unique Controller Be Your Own Oil Company With Desktop Fischer-Tropsch Process ESP-Osito Eschews Retrocomputing For Modern Code On Modern, Equivalent Hardware A Modern Web Browser For Classic Mac OS Hackaday Podcast Episode 371: Space Computers, Spy Phones, And So Long CHU This Week In Security: Ubiquiti Fixes, And FreeBSD Joins The Club You Don’t Want To Join When Is An Apple Laptop Not A Macbook? When It’s An Apple II Linux Distributions And Who Is Responsible For The Software Autopsy Of A Failed Vintage Carbon Resistor Hunting Submarines Via Gravity Is A Tough Errand So Long, CHU, And Thanks For All The Time Signals A Bicycle Built On An Italian Renaissance Tech Base Linux Fu: The Bluetooth Regression Remember When Flash Drives Were Going To Make Your PC Faster? Putting Version 7.1 Of The Direct Granules FDM Extruder Through Its Paces Tech In Plain Sight: The Mechanics Of String Trimmers Between-Device Sharing Still Sucks Salvaged VFDs In Nixie-Like Clock Mod This IKEA Lamp Into Smart Lighting For Not A Lot Building And Testing A Turbine Driven Hydro Generator Tearing Down Walmart’s $12 Keychain Camera Biohack Your Way To Lactose Tolerance (Through Suffering) Liberating AirPods With Bluetooth Spoofing It’s Hard To Make A (Good) Oscillator Rudolph’s Sleigh On A North Pole PCB This Typewriter Types Toast Beating Bitlocker In 43 Seconds Using An Old Smartphone In Place Of A Raspberry Pi Working Model Reveals Amazing Engineering Of Webb’s Mirror Actuators Electric Vehicle 1900’s Style: New Leases On Old Tech Forth: The Hacker’s Language
Revisiting Making Your Own Internet Router In 2026
Maya Posch · 2026-06-01 · via Comments for Hackaday

After my recent misadventures setting up an OpenWrt installation on a scruffy e-waste-level x86 PC, quite a few people chimed in with feedback, criticism and friendly hostility regarding things like a presumed ‘x86 bias’. There were also some system-related things that simply didn’t seem to want to work, such as booting from an SD card with a USB adapter, which cut short a lot of the actual OpenWrt testing that I had intended. This made it mostly an enlightening look at what issues you can run into when ‘quickly’ throwing an OpenWrt router together with some junk parts these days.

In this second article I’ll try to address as many of these points as possible, as well as attempt to show off an actual working OpenWrt installation in action. In addition, since just using random junk x86 PC parts was the way to go back in the late 90s/early 2000s doesn’t mean that this is still the way in 2026, so I’ll be taking a look at alternatives that exist today. This includes everything from mini PCs, to ancient business PCs being sold for peanuts, as well as more dedicated (ARM-based) hardware solutions.

The Hardware Landscape

Typical NE2000-compatible 10 Mbit Ethernet card you'd find aplenty in 90s junk bins. (Credit: Sönke Kraft, Wikimedia)
Typical NE2000-compatible 10 Mbit Ethernet card you’d find aplenty in 90s junk bins. (Credit: Sönke Kraft, Wikimedia)

One of the aspects that I somewhat overlooked whilst scrounging through my junk bin was just how much faster internet connections have become compared to the early 2000s. My cable internet connection of the time was hooked up to a DOCSIS 1.x-based modem, with 40 Mbit/s as the theoretical maximum downstream capacity.

For this a 100 Mbps PCI or ISA NIC was plenty. Back then I was using NE2000-compatible 10 Mbit ISA cards and enjoying the ISA ‘Plug-and-Pray’ life to my utter dismay while configuring IRQs and other relevant settings. At least this taught me about legacy connectors like those for coax-based thick- and thinnet as well as AUI, I guess.

But fast-forward to today, and my current fiber internet connection could do at least 1 Gbps if I wasn’t a cheapskate with only a 300 Mbps downstream plan.

Thus 1 Gbit NICs are pretty much the absolute minimum you’d want to have on your DIY router, unless you’re somehow stuck in a digital wasteland where the very concept of such internet bandwidth numbers just makes you shake a powerless fist at the uncaring skies and lack of even high-ish bandwidth 5G LTE options or similar.

Of course, coupled with this you also want hardware that is capable of dealing with the requirements of such NICs and associated bandwidth. It’s one thing to provide basic routing, but consider the hardware requirements should you end up maxing out both up- and download limits for extended periods of time due to torrenting all those Linux ISOs.

When it comes to the rest of the hardware, you can still grab whatever junk PC, cheap Celeron-based mini PC, or e-waste/refurbished thin client you come across, as long as it can support at least two 1 Gbit network links. When we then finally drop our x86 bias and look on the ARM side of the fence things get a lot less easy, though.

RISCing ARM

Although some ARM-based SBCs do have 1 Gbit Ethernet NICs, like the AllWinner A20 based LeMaker Banana Pro that I have serving various networking tasks – including NAS duty via its SATA connector and the bandwidth-heavy task of a ZNC IRC bouncer – adding a second Gbit-level networking interface is impossible with just USB 2.0 ports. This is a pattern that repeats with other single-board computers (SBCs), including the gaggle of Raspberry Pis and clones of which I have plenty kicking around.

Until you hit the Raspberry Pi 4 with its USB 3.0 ports and PCIe-connected Ethernet controller, the best you could get out of these boards was ~300 Mbps over the USB 2.0 ports. The good news here is that OpenWrt’s support for all RPi SBCs is pretty substantial. As long as you can squirrel away that grafted-on second Ethernet port from a USB dongle or similar somewhere, it just might be a decent enough router for a Gbit-level internet connection.

The OpenWrt One PCB. (Credit: OpenWrt)
The OpenWrt One PCB. (Credit: OpenWrt)

Beyond these options you also have various dedicated router boards, with the OpenWrt One and Banana Pi BPI-R4 being two viable options here. Expect to shell out at least $100 just for the bare board, sometimes even before adding an enclosure and other essentials. Here you’re basically buying a typical off-the-shelf router and doing the final assembly yourself.

The final result would be fairly similar to the OpenWrt-based Xiaomi router that I’m currently using. This fancily named Mi AIoT Router AX3600 is like many Xiaomi routers and other networking devices officially supported by OpenWrt. These thus make for another viable target to reflash with a clean OpenWrt image and no OEM customizations if that’s the one thing that irks you about these commercial offerings.

Clearly there are a lot of options here, hardware-wise, even if on the ARM side of things you’re probably just better off buying that existing OpenWrt-supported router as the most economical option, unless you happen to have a Raspberry Pi 4 SBC or equivalent gathering dust.

Booting Troubles

One issue that I ran into was the inability to boot from a properly prepared SD card, even after trying it in a variety of USB-SD card adapters. Here the assumption made by me was that to the BIOS this made zero difference compared to a USB stick with built-in Flash, but clearly this was wrong, especially when a USB stick did show up in the list of bootable devices. Of course, this doesn’t make any sense since either is just a USB Mass Storage Device and some sanity-related search engine consultation later I managed to confirm that I was correct.

Since I needed a different mainboard anyway for at least Gbit link speeds I opted to drag another system from the surely-that’s-e-waste pile, featuring a rather nice Intel D2500CC mainboard with onboard dual Gbit Ethernet and miniPCIe expansion option that I could slot quad 1 Gbit Ethernet Intel I350 modules into which I have also hoarded salvaged.

After taking the same SD card that failed to work before and slotting it into this 2012-era system, it booted into OpenWrt, terrible graphics courtesy of the VGA-to-HDMI adapter and stray reflections included:

After this momentous step I proceeded to triumphantly check for a network connection on the connected laptop, but saw that it didn’t even see an active network connection. That’s when I noticed the inactive link and activity LEDs on both of the D2500CC mainboard’s Ethernet jacks, which was rather worrisome.

I did have a poke at ifconfig to confirm that it had detected both onboard NICs and created connections for them, with indeed both an eth0 and eth1 interface created in addition to the loopback. Slightly baffled I did try to prod DHCP just in case, but at this point the console began to corrupt itself:

Although I’m pretty sure that I didn’t miss any steps, something is still clearly amiss. Whether it’s a hardware issue with the mainboard, some BIOS configuration glitch, an issue with the OpenWrt image, USB being USB or a quaint planetary alignment, I obviously wouldn’t be able to log into the graphical administration interface any time soon at this rate.

This mostly leaves me with more debugging to do, as well as the increasingly dismayed feeling that some things really were easier in the past.

Next Steps

Although I haven’t given up yet on reviving an old PC as a router, it’s clear that dealing with ISA PnP configuration nonsense from yesteryear doesn’t hold a candle to the fascinating troubleshooting you get to do these days. That said, assuming that this or the other D2500CC board that I have is functional, they should be pretty nice for router purposes as they both have 8 GB of DDR3 installed and the aforementioned plethora of expansion options.

This should allow for OPNSense to be quite happy as well, which is a more regular PC-focused router distribution anyway, should OpenWrt not work out somehow. The first priority here is of course to ensure that the hardware that you’re using is fully functional before you get too far into the weeds. In the case of the previous Intel mainboard, for example, I later found that Memtest86+ would immediately crash on start — probably a bad sign.

As usual I’m looking forward to all the feedback and comments as I’m gradually digging through my pile of junk parts. Hopefully the next article will feature some actual benchmarking and working systems, as fun as writing about things-that-don’t-work is.