My Networking and NanoKVM Pouch For My Laptop Bag

| Comments

In days that have long gone by, I used to carry all sorts of useful gear in my laptop bag. At the time I was working a job where I would spend most of my time at my desk, some of my time in meetings, but also a not insignificant amount of time fiddling with things in our ice-cold datacenter. I would actually make use of the tools and gadgets fairly regularly.

Then 9/11 happened, the TSA sprung into existence, and I had to be careful to remove things like my Swiss Army CyberTool from my laptop bag before flying.

My network and NanoKVM pouch

Side B of my network and NanoKVM pouch. This is the more interesting side!

Fast forward twenty more years, and I don’t often need all the cool tools and gear that I used carry, but I can’t stop myself from wanting to carry them. Not only do I want to tote around everything I might possibly need, but now I use two or three different laptop bags.

When I ride my wheel to the park, I might take my small shoulder bag that only has room for the essentials, and I don’t want extra gear weighing me down. When I take my laptop in the car, I am way more likely to take my bigger backpack that has room for everything I could possibly need, and the car doesn’t care if I pack an extra five pounds.

Should I buy two of everything and keep both bags well equipped? Should I weigh the giant bag down with every possible piece of gear? I’ve decided this is a bad idea. Some of the equipment that I carry isn’t exactly cheap, but I also don’t want to fill the bag any more than I have to, because I often grab my laptop bag when I want to also carry something that ISN’T my laptop. Having a big empty pocket in my bookbag to stick a PlayStation 4, a bag of CNC-cut parts, or a pair of pants is handy!

Pouches seem like the best option

You can use a 3D printer or a CNC router to make awesome hard cases with intricate slots that perfectly fit all your tools, toys, and connectors. The trouble is that when you make things exactly the right size, then they may only fit that one specific version of an item. If you lose your mini screwdriver, or you upgrade your gigabit Ethernet USB dongle to 2.5 gigabit Ethernet, your new device might not fit in your toolkit anymore.

You can squeeze just about anything you need into a pouch. I believe I chose a pouch that is a little too small for my extra networking gear. I probably should have bought the slightly bigger pouch.

Side A of the network and NanoKVM pouch

This is Side A. This is where the cables and couplers live.

If you underpack your pouch, the air doesn’t take up much space. That means you can probably squeeze it into a smaller space inside you backpack. A CNC-machined case made out of hardwood always takes up the same amount of space no matter how much stuff you put inside.

My pouch weighs in right around 18 ounces. That doesn’t seem like a ton of stuff, and it wouldn’t weigh down my small laptop bag all that much. This would have seemed like absolutely no weight at all a decade ago, but this pouch weighs half as much as my entire 14” 2-in-1 laptop. Why lug it around when I don’t need it?

My plan was to pack two separate pouches!

I planned to pack a NanoKVM pouch to replace my massive Pi-KVM kit, and I planned to pack something that I was calling my networking pouch.

If the latter pouch just had a long flat-pack Ethernet cable and a 2.5-gigabit Ethernet USB dongle, I would have just put one of each in both my laptop bags. I was also including a travel router, extra cables, power for the GL.iNet Mango router, and my smallest USB battery bank. That stuff alone grew into a bulky enough assortment that I didn’t want to duplicate it for both laptop bags.

My network pouch next to a Raspberry Pi 5

The new pouch is quite a bit bigger than the pouch from [the NanoKVM blog][phnvm], but it holds so much more gear now!

It made sense to me to separate out the NanoKVM, but then I realized that the NanoKVM is ridiculously tiny compared to what I needed to carry to use a Pi-KVM. I also recognized that there would be a lot of cable overlap between these two kits, and I was also excited about the idea of being able to add WiFi to the NanoKVM using the Mango router in a pinch.

One bigger pouch seemed smart, and this kit would be way more useful to anyone who needs to borrow it!

Where do you get an organizer pouch?

I don’t know about you, but I have all sorts of zippered containers tucked away in my closet. So many toys, gadgets, and headphones come with nice storage and travel containers that I never use.

I was using the large zippered pouch that came with my awesome Amazon box teardown tool to hold my bulky Pi-KVM kit. Two decades ago I started using the little pouch that came with a Norelco shaver to keep network converters, USB adapters, and other small things from spilling out into my laptop bag.

Test fitting my network pouch

The Mango and NanoKVM sure didn’t want to stay put in that giant pocket! Yuck!

There are handy containers everywhere. When I started organizing my network-only toolkit, I was using a pouch that came with a diabetes blood sugar testing kit. It was actually a fantastic size! The trouble was that it didn’t have enough pockets or straps to hold all my stuff, so I was just kind of stuffing it all in there. When you just stuff things into the pouch, everything wants to fall out when you unzip it!

I wound up buying a $9 BAGSMART organizer from Amazon. I chose it because of size of the pockets inside, and it was two inches taller but maybe an inch thinner than the pouch I was already using. This worked great as my network-only pouch, but there wasn’t nearly enough room at add a NanoKVM and a thick HDMI cable.

Then I found a pouch that was roughly double the size: same length, same width, but it has two zippers. I chose the “small” model, because the dimensions were almost identical to my BAGSMART pouch. That and the photos made me believe the pockets would be roughly the same size. They aren’t even close. While the BAGSMART pockets were big enough to fit the GL.iNet Mango, the new pouch’s pockets weren’t even close.

3D Printed Gear Rack

My 3D-printed gear rack. The little ears on the sides slide into the large pocket to keep the whole thing in place.

Maybe stepping up to the “medium” organizer pouch would solve this problem, but I was already committed. I borrowed a design idea from Earthling EDC, and I 3D printed a gear rack that I could strap the Mango, the NanoKVM, and my smallest USB power adapter to. This is great for me, but it might be better for you to just buy the bigger pouch!

What is in my pouch?

Should we just start with a bullet-point list?

I know I will never use the crossover or rollover cables again. I have had them in my laptop bag for nearly 20 years, and they used to come in handy all the time. I can just plug them into one of the RJ-45 couplers, and I can use any available network cable as a long crossover or rollover cable.

Just about every network device has supported automatic MDI-X for a long time, so I couldn’t even guess when I last needed to use a crossover cable. I don’t think I have seen a rollover serial port in just as long, and I may never see one again. Neither of these cables take up much space.

I imagine the use case for the pair of Ethernet cables would be obvious. Carrying two cables is handy. That way I can plug my laptop into the router, and I can plug the router into the wall. I could also use one of the handy RJ-45 couplers if I need 15’ of reach.

Flat-pack network cables are awesome at home or on the road. They take up less space in your bag, but they’re also easier to tuck in along the edge of a room if you have to run a cable across your home office.

There are some extremely thin HDMI cables on Amazon, but I haven’t tried them. I believe the HDMI cable that I packed in my kit shipped with the Steam Link. It isn’t quite as thin as the newer cables on Amazon, and I have to admit that I am tempted to tidy up my bag a bit with a new cable, but Valve’s HDMI cable is thin enough that it isn’t taking up a ridiculous amount of space.

Why carry a travel router? And why the GL.iNet Mango?

This entire pouch would be so much smaller and simpler if I didn’t pack the travel router, but this little OpenWRT router is one of the coolest little network tools that I own!

The Mango is one of the cheapest and smallest OpenWRT routers out there. The diminutive size is awesome for this pouch, but sometimes cost is just as important. I used to wind up leaving a lot of things behind. You might replace somebody’s bad network cable with one you have in your bag. You may give away your USB flash drive full of operating system installers just so someone can sneakernet some data. There’s a good chance I will leave a cheap bit-driver set behind for someone who doesn’t have any tools.

I figure that there is a good chance I might leave my travel router behind. I might leave it for friends to use, or I may leave it behind for more nefarious purposes!

I bought my Mango on a whim for $20 a few years ago. It is pretty underpowered. It only has 2.4 GHz WiFi, the LAN and WAN Ethernet ports are only 100 megabit, and it only has enough horsepower to run Tailscale’s encryption at about 8 megabits per second.

Mango and Slate AX

Just the gl.iNets Mango and Slate AX for size comparison

That last part is the exciting bit. I can plug this into a network jack at an undisclosed location. I could power the Mango with my USB power bank, connect it to the Starbuck’s WiFi, and connect to it remotely via Tailscale to use as a jump host or an exit node.

I can set up an impromptu WiFi network so I don’t have to stay close to the wall. I can loan it to a friend if they need me remote their own network. In fact, I have the admin credentials, WiFi password, and subnet information printed on the bottom of the router. That makes it easy to hand the Mango over to someone else who might need to use it.

The convenient interface that GL.iNet puts in from of OpenWRT is a delight. It takes one or two clicks to do things that would take dozens of clicks in OpenWRT’s LuCI GUI, but they still give you access to LuCI on the advanced tab.

Shoehorning Tailscale onto the Mango was a bit of a challenge. It just doesn’t have enough flash storage on board to even store the binaries! I wound up storing Tailscale on a petite USB flash drive. That wound up being handy. I can just pull the drive out if I don’t want the router to be able to connect to my Tailnet, and I used the remaining 15.8 gigabytes of on the flash drive to store ISO images that are all bootable using Ventoy.

The NanoKVM does not have a WiFi chip. This is probably the best reason I had to combine the NanoKVM stuff into the same pouch as the GL.iNet Mango. I can always plug the NanoKVM into the Mango, then configure the Mango to bridge to either nearby WiFi or my phone. That would allow someone remote access to the KVM without needing to find an RJ-45 jack.

Should you buy a GL.iNet Mango?

Probably not, but maybe! You can often find the Mango on sale for $23, but you can usually find the much more modern SFT-1200 Opal router on sale for $31.

I like my Mango. The Mango is still cool, and it is still usually $10 cheaper than the Opal!

My Mango is less than a quarter the size and weight of the Opal, but it is old and slow. The Opal could easily handle router, firewall, and probably QoS duties for my home’s 1000/1000 fiber internet connection. I also bet that pair of external antennas attached to the Opal’s much more modern WiFi chipset offer better range.

My gl.iNet Slate AX and my network pouch

My Slate AX next to my network pouch as a stand-in for the Opal that I don’t own!

The Opal is an upgrade by every measure except size and weight, and those upgrades over the Mango are worth way more than the extra $10 you have to pay for one.

I don’t have an Opal SFT-1200 here, but I do have a similarly sized Slate AX GL-AXT1800. The Slate would take up an entire half of my pouch, and it wouldn’t even be able close correctly. I feel like this would be a very different and much larger kit if I were to upgrade it to the Opal.

Do you even need a network kit like mine at all?!

Most people don’t. Almost everyone is always going to just connect to WiFi, and if they can’t connect to WiFi, then they are going to just give up. That describes me in 99% of situations.

You are here reading this blog post, and you are still reading. You might do the sort of work that requires you to crawl around under desks, hang out in wiring closets, or spend time in heavily air-conditioned server rooms. I suppose the last one doesn’t happen much anymore, and that makes me a little sad.

If you do this sort of stuff all the time, then your laptop bag is already packed with the tools you need. Maybe you are like me, and you used to do need these sorts of items regularly, but now you only need them occasionally. Your pouch may not look exactly like mine, but I bet it is a good idea to separate things into their own container just so you don’t have to carry them around all the time.

Separating these things out into their own pouch is also handy because I can easily lend them to a friend or coworker.

Conclusion

Pouches are awesome. I think that’s the most important thing I have to say here. As long as the things inside aren’t delicate, they are a great way to stuff more stuff in your bookbag.

I am still tempted to create a custom hardwood tool case for my laptop bag with perfectly machined slots for all my important tools. It would be a delightful project for my CNC machine, and it would be so much fun to show something like that off, but it would only be able to hold a particular set of tools.

I think that you should build out your own networking toolkit pouch, but I don’t want you to copy mine! I would like to see you pick and choose the tools you will actually use, and I would love to hear what you equip your toolkit with!

Did I pick out a good set of tools for myself? Or did I miss something important? Is there an awesome device, cable, or tool that I should have included in my NanoKVM and networking pouch? Tell me about it in the comments, or join our Discord community at tell us about the tools we are missing out on!

Degrading My 10-Gigabit Ethernet Link To 5-Gigabit On Purpose!

| Comments

It has been about eight weeks since I upgraded to core of my home network. I added a Mokerlink 2.5-gigabit switch to both my network cupboard and my home office on the opposite side of the house. The 5-port switch in my office has a pair of 10-gigabit SFP+ ports, while the 8-port switch in the cupboard has only one. This gives me a nice, fast connection between all the devices in my office and my network cupboard, and a cheap 10-gigabit Ethernet card in my desktop PC has given me a full 10gbe link to the other side of the house.

The specifications for 10-gigabit Ethernet require Cat 6A wiring to reach the full distance, but you can use Cat 5e or Cat 6 depending on the quality of your wiring. I made sure to order a set of three Xicom 10-gigabit SFP+ modules with the hope that they would if I wasn’t be able to negotiate 10 gigabits across the existing Cat 5e wiring.

Testing the limits of my 10 gigabit Ethernet connection

I have to admit that I wasn’t terribly surprised when everything lit up at a solid 10 gigabits per second. I definitely have less than 100’ of cable between my two switches, and that isn’t terribly far!

I was packing up a pouch for my NanoKVM kit with things like flat-pack Ethernet cables and RJ-45 couplers. I have way too many couplers, because I needed two or three but had to buy a 10-pack! I also have plenty of extra 10’ flat-pack cables. I wound up having a fun idea while staring at them.

How many 10’ cables and couplers can I add to this 10-gigabit Ethernet run before it degrades to 5gbe? An even more important question might be whether it will even attempt to connect at 5-gigabits per second!

How about a tl;dr?!

I don’t want to keep you here longer than necessary. There is currently something like 70’ for Cat 5 and Cat 5e cable between my two switches, and they have been happily talking at 10 gigabits per second for months.

That trend continued after adding two 10’ flat-pack Ethernet cables and two RJ-45 couplers to the that chain of wiring. Adding a third 10’ cable and coupler dropped the connection down to 5gbe.

That doesn’t mean that 90’ or 100’ feet is the actual limit for my gear. Some of the reasons why are explained farther ahead. I wasn’t trying to prove how long of a Cat 5e run I could have gotten away with. I really just wanted to see that these Xicom SFP+ modules would actually gracefully degrade to 5gbe.

I was more than a little worried that someone would follow me example, buy these SFP+ modules, then learn that they fool-heartedly attempt to maintain a 10gbe connection even if it was full of errors and retransmissions. I was pleased to learn that they did what they were supposed to do!

The correct way to do this test

I am not prepared to do this the right way because I am pretty sure I left the remainder of my last 1000’ spool of Cat 5e cable at Brian Moses’s house. Even if I still had the spool of cable here, there might not even be enough cable left to successfully break the 10-gigabit connection.

I’d just crimp ends on both sides of the spool and see if adding that length dropped the connection to 5gbe. Then I would cut 10’ or 15’ off the cable, crimp on a new end, and repeat until we see it go back up to 10gbe.

That is about the cleanest way to see exactly how far my setup might be able to go before degrading. I did not do this.

What did I do?!

I grabbed four spare RJ-45 couplers. I collected four spare flat-pack patch cables. I daisy chained them all together, and I put the extra 40’ of cable and couplers in between the switch and the yellow patch cable that connects the 10-gigabit port to the wall.

My iperf3 performance immediately dropped to 4.86 gigabits per second, so I think I did a pretty good job, and I am excited to see that I chose a useful pair of SFP+ modules for this task.

AI Excited guy holding Ethernet cables in his home office

This is just about the worst way you can connect two Ethernet ports. Every RJ-45 connection degrades the signal. The pairs of wires inside the RJ-45 couplers ride along a PCB, those pairs almost definitely aren’t going to be twisted, and who knows if my cheap couplers from Amazon are even any good?!

The fresh 10’ cables are in perfect coils, and the older ones are manually wound up by yours truly. That is absolutely horrible for noise. If we had the gumption to straighten these cables out, then we might be able to go farther before degrading to 5gbe.

What were the results of the test?!

Adding any two of my 10’ cables and couplers to my 70’ of existing wiring had no trouble running at 10gbe. Adding a third cable would drop things to 5gbe, and it would stay at 5gbe with a fourth segment. I doubt I have enough cables and couplers to get the connection to drop any lower, but my suspicion is that it would have drop all the way to 1gbe if it couldn’t connect at 5gbe.

I hope I have already emphasized enough that this is a terrible test of the maximum distance I should be able to get over Cat 5e cable. I am most excited that I finally got to see the Xicom modules connect to each other at 5 gigabits per second.

I bought these modules with the hope that if my wiring would be able to negotiate 5gbe if it couldn’t manage 10gbe, and I was also hoping that would make these inexpensive SFP+ copper modules a good recommendation for other home gamers.

Being able to demonstrate that they worked at full speed over 70’ of old cable was nice, but I feel better being able to tell you that they do indeed degrade to 5gbe just fine!

Conclusion

I think it is best for me to repeat much of what I said in the MokerLink blog post. I don’t think you should be upgrading lots of your home get to 10-gigabit Ethernet unless you are running into a particular bottleneck or have money burning a hole in your pocket.

I absolutely think you should be working on upgrading to 2.5gbe. 2.5-gigabit switches, PCIe cards, and USB dongles are almost as cheap as 1gbe hardware now. Even if you aren’t yet replacing old 1gbe stuff, it is probably time to make sure you’re buying hardware with 2.5-gigabit ports. Eventually your chicken-and-egg problem will work itself out naturally.

While I don’t think you should be upgrading everything to 10 gigabits, I do believe you should be shopping for 2.5-gigabit switches with one or two 10-gigabit ports. Being able to connect my home-office to the opposite side of the house with a fast link is awesome, it didn’t cost all that much, and the reasonably priced Xicom 10-gigabit SFP+ modules should still get you at least a 5-gigabit connection even if your aging wiring can’t manage full speed. That is still a nice upgrade!

Curious about trying out your own setup or have questions? We’d love to see you to join our Discord community. It’s a friendly space where we chat about home networking, servers, 3D printing, and help each other out. Whether you’re just starting or already a pro, there’s a spot for you!

The Sispeed NanoKVM Lite Is An Amazing Value

| Comments

I was over at my friend Brian Moses’s house for pizza last night, and as soon as I walked in the door, he handed me one of the NanoKVM units that he bought during Sispeed’s crowd-funding campaign. I ate my delicious pizza, hurried home, and immediately dug out a microSD card to flash with Sispeed’s boot image.

I have been a huge fan of the Pi-KVM for years. Aside from the huge price difference between a NanoKVM and a Pi-KVM setup, I do have one big complaint about my Pi-KVM, but we will talk about that later.

My NanoKVM Lite in a 3D Printed case

This case fits well but is a little tight. I would stretch it on the long axis by about 0.5 mm if I had to print it again. I assume there are slight differences between the earlier units and the production run.

I am most excited about the NanoKVM’s price. We were using USB HDMI capture cards to put together our early Pi-KVM kits. The entire NanoKVM Lite doesn’t cost all that much more than the cheapest HDMI capture cards, and you don’t have to buy an expensive Raspberry Pi to plug the capture card into.

You just spend around $30 on a NanoKVM Lite, and you have a zippy little IP KVM.

What is an IP KVM?

KVM stands for keyboard, video, and mouse. An IP KVM gives you remote access to a computer as if you were sitting at a local USB keyboard. You can pick which kernel you want to boot from Grub. You can enter the BIOS and change settings. You can even connect a virtual USB disk image to load a fresh operating system.

Brian and I talked about the Pi-KVM and what an IP KVM is at length in this very old episode of “The Butter, What?! Show!” It is an older episode, so it isn’t as well polished!

The fancier devices, like the full-size $60 NanoKVM, can be connected to your server’s power and reset buttons.

The goal is often to never use your KVM. It is just there for when something goes wrong.

My initial experience with the NanoKVM

I plugged in my fresh microSD card, connected the NanoKVM’s HDMI and USB ports to one of my Intel N100 mini PCs, plugged the NanoKVM into [my 2.5-gigabit switch][], and I was ready to go. I was watching the DHCP server on my router for a new IP address to show up. I punched that into my browser, logged in with the default credentials, and the KVM interface was right there.

I did have to upgrade the software before the KVM parts actually started working. That seemed weird because I downloaded the latest disk image. The update only took a minute or two, and after that, I was clicking around on my Steam gaming mini PC via my network.

I don’t have a way to measure the latency accurately, but it feels more than acceptable.

NanoKVM Lite GUI

My first successful connection to my Steam mini PC via the NanoKVM interface

I was excited to see that Tailscale is an option in the menu on the NanoKVM. I just had to click through a few messages before the interface gave me a Tailscale URL to authenticate my NanoKVM to my Tailnet. It probably took less than a minute to go from clicking that Tailscale button to connecting to my NanoKVM via Tailscale.

The hardware in the NanoKVM is quite underpowered. It does a good job doing its KVM duties, but the latency sure builds up when you add Tailscale’s encryption. I wouldn’t have any trouble using this IP KVM at a remote location via Tailscale in an emergency, but I would prefer to only use it just long enough to get proper network access back!

My problem with the Pi-KVM

This might be a problem unique to my own older Pi-KVM. I don’t have the $200 Pi-KVM hat. I have a $12 USB HDMI capture card that has to be plugged into the correct port, and I have a little USB-C power and data splitter board.

That means I need a power brick with a USB-C cable to connect to my splitter. I need a second USB-C cable to power the Raspberry Pi, then I need a third USB-C to USB-A cable to connect the splitter to the server.

Idiocracy GIF

Meme gif from yarn.co

This isn’t terrible, but the labels on the splitter board aren’t great. It is easy to use when you plug things in on a regular basis, but what about when Brian asks you to plug a Pi-KVM into his off-site NAS 18 months after the last time you used your Pi-KVM? You will have no idea what goes where, and you’ll be running back and forth between the server and your laptop, repeatedly checking whether you got things right or not.

The NanoKVM solves this problem so well. It gets power from the server’s USB port, so you don’t even need to carry a power supply, and it is ridiculously obvious where you need to connect the HDMI and Ethernet ports.

I didn’t have to reference any documentation to plug my NanoKVM in last night, and I won’t have to reference any documentation when someone has a problem in six months.

Why not just buy an enterprise server or motherboard with built-in IPMI?!

Brian and I talked about this a lot when the Pi-KVM was brand new, and we definitely discussed it on The Butter, What?! Show! on more than one occasion, but what is IPMI?

Among other neat features, modern IPMI implementations include IP KVM and remote power on and restart functionality. You can basically have what the NanoKVM provides built right into your motherboard.

The trouble is that motherboards with IPMI are expensive. We were excited about the Pi-KVM when it came out because you could buy a Pi-KVM and a consumer-grade motherboard for around the same price as the least costly motherboards with integrated IPMI. The exciting part about the Pi-KVM was that you don’t lose your remote access hardware when you buy your next server, so you don’t have to pay the IPMI tax again. You can just move your Pi-KVM to the next machine you buy.

The NanoKVM is an even better value. Instead of buying a $450 motherboard with integrated IPMI, you can buy a $100 or $200 motherboard and add your own remote KVM access for $30 to $60. Not only does that wind up saving you money, but you will get to use that NanoKVM on your next motherboard as well!

The NanoKVM is priced well for your Mini-PC homelab!

I have migrated from a single large homelab server to a short but growing stack of mini PCs. I currently have three mini PCs running at home, and any single one of those mini PCs is about as powerful as the aging server that they replaced, yet all those mini PCs combined use less than half the electricity of the old server. It is pretty awesome!

There was no way I would ever consider putting a Pi-KVM onto each of those mini PCs. A working Pi-KVM unit costs MORE than any one of those mini PCs. Even a single Pi-KVM with a 4-port KVM switch box attached would cost more than any single mini PC in my homelab.

The NanoKVM Lite is around $30. I wouldn’t be opposed to plugging one of these in to each of my three $150 mini PCs, though I am not excited about adding all those extra cables to my home setup. It would be way cleaner to just walk to the network cupboard with a NanoKVM when there is an emergency.

I want more NanoKVMs!

I am not convinced that I want to add three thick cables to my homelab for every mini PC. That will add to the clutter so fast, but these are so inexpensive that I am considering other weird uses where I would never want to leave a dedicated $300 Pi-KVM.

When I was setting up the NanoKVM and messing around with my spare Trigkey mini PC, I immediately realized how handy it would be to have a permanent NanoKVM wired up in my office. I just want a dedicated space in the corner with power, Ethernet, and the NanoKVM where I can drop a new or problematic PC, server, or laptop so I can work on it from the comfort of my desk.

NanoKVM on my Tailnet

The physical device doesn’t even need to be at my desk. It can be sitting on the other side of the room. How cool would it be if I could install Proxmox on a new machine from the keyboard at my desk without having to finagle a Pi-KVM or run cables across the room?!

One for my office. One to leave partially wired in the network cupboard. One for my laptop bag. One for my emergency network pouch. There are all sorts of places where these would be handy, and they cost so little that I COULD put one in all of these places!

I have some concerns!

First of all, I have no idea which parts of the NanoKVM are open-source. It does seem as though much of the project is open now. The firmware image I downloaded came from a repository on Github that says it is licensed under the GPL version 3. I assume that is correct, but my NanoKVM wouldn’t display any video until I hit the button to download an update. Maybe that means some core part of the KVM stack is still closed-source? This isn’t a huge concern to me at this point, but I plan to keep a closer eye on this as I figure things out.

There are people losing their Tailscale connection when Tailscale gets updated, and there are other who are having their Tailscale client killed by the OOM killer. The NanoKVM only has 128 megabytes of RAM, so this isn’t surprising, but it is extremely concerning.

Omnigen Pat With A Giant NanoKVM

I thought it would be fun to have Omnigen put me in a datacenter with a NanoKVM. Look at the size of that thing!

I’d like to be able to deploy these NanoKVM devices remotely where they can only be accessed via Tailscale. I will be in big trouble if Tailscale decides to crash shortly before an emergency! You might want to leave a NanoKVM running in an accessible location for a few months before you commit to hosting one off-site.

I also noticed that the NanoKVM accepts root logins via SSH using a password on the Ethernet interface. The default password is root, and it isn’t tied in any way to the web interface’s admin password. The web interface and documentation doesn’t make it obvious that this password even exists. I disabled password logins via SSH, but that breaks the web interface’s terminal access.

This is an easily solvable problem, but it is also a huge gaping hole. How many NanoKVM devices are plugged in right now with an open SSH port and an obvious root password?

Conclusion

I am excited! My Pi-KVM kit, a.k.a. my portable crash cart, is now a fraction of the size. I was able to squeeze the NanoKVM Lite, an HDMI cable, a network cable, a USB cable, and a few odds and ends into a pouch that is only twice as big as a Raspberry Pi. I am probably down to one third of the size and weight of the old kit, and the whole thing is a about one tenth the price of either a TinyPilot or Pi-KVM build. How awesome is that?

My NanoKVM pouch vs. a Raspberry Pi 5

My entire NanoKVM pouch with an HDMI cable, network cables, and all sorts of adapters vs. just a Raspberry Pi 5!

I think Sispeed has a little ways to go on their software with regards to both security and reliability. I can tighten up the security and the firewall, but I need a Tailscale client I can trust if I am going to rely on a NanoKVM at a remote location. I am confident they will get there.

I want to hear what you think! Are you as excited about a $30 IP KVM with a built-in Tailscale client as I am? Are you going to be ordering a few? How many do you think you will need, and what will you be using them for? Let me know in the comments, or join our Discord community to chat about it. We have a few NanoKVM users in there already, and several more waiting for orders to arrive!

Deciding Not To Buy A Radeon Instinct Mi50 With The Help Of Vast.ai!

| Comments

I am quite grumpy about both cloud AI and local AI. I just can’t figure out where I want to land, and I don’t even want to choose just one or the other. I am happy to use the cloud where it makes sense, then use a local LLM or image generator where that might work out better. The trouble is that none of it makes sense!

I have been interested in the idea of grabbing a used server GPU on eBay for a long time. The 24 GB Tesla P40 used to be a great deal, but they increased in price from $150 to nearly $400 almost overnight. They still might be a reasonable deal at $400 if you really do need 24 GB of VRAM, but the even older 24 GB Tesla M40 can be had for less than $100.

Pat with a GPU

This is an AI-generated image of me holding an immitation of my MSI Radeon 6700 XT generated using OmniGen V1 at fal.ai. I tried to generate a picture of me with a Radeon Instinct Mi50, but that didn’t go so well!

My friend Brian Moses beat me to that, and his results were more than a little underwhelming. Don’t get me wrong here! What you get for $100 is fantastic, but my 12 GB Radeon 6700 XT in my desktop is significantly faster. I feel like I am better off dealing with the LLM startup times just so I can keep my performance.

Why is the 16 GB Radeon Instinct Mi50 interesting to me?

The Tesla GPUs are awesome because they run CUDA. That makes everything related to machin learning so much easier. Some software won’t even run with AMD’s ROCm, and AI software tends to run slower on ROCm even when the AMD’s hardware should be faster.

That means that there are things that just won’t currently run on an Instinct enterprise GPU, and getting the things that will work up and running will be more work. I am already running a ROCm GPU, so I am confident that the things that I already have working could be made to work easily enough on a server with a Radeon Instinct GPU.

I would love to have 24 GB of VRAM, but I am mostly happy being stuck with my current 12 GB, so the 16 GB Radeon Instinct ought to be comfortable enough. The Mi50 has a massive 1 terabyte per second of VRAM bandwidth. That is three times more bandwidth than my GPU or either of the reasonably priced used Nvidia Tesla GPU models. That should be awesome, because LLMs love memory bandwidth.

There are currently several 16 GB Instinct Mi50 GPUs listed on eBay for $135. They will require a custom cooling solution, but I have a 3D printer, so that shouldn’t be a problem. There are 32 GB Instinct Mi60 GPUs with slightly more performance starting at around $300. I think that is quite a reasonable price for 32 GB of VRAM, but I don’t even know if these Instinct GPUs will be suitable for my needs, so I have only been looking at the 16 GB cards.

Why is 16 GB enough VRAM for my needs?

I am using a 5-bit quantization of Gemma 2 9B to help me write this blog post. It is definitely up to the task. This model uses around 9 gigabytes of VRAM on ROCm with the context window bumped up to 12,800 tokens. Dropping down to a 4-bit quant and lowering the context window a bit would allow this model to fit comfortably on a GPU with 8 gigabytes of VRAM.

Older Stable Diffusion models run great on my current GPU, and my settings give me decent images at around 20 seconds each. I have to run Flux Schnell’s VAE on the CPU, and I can generate decent 4-step images in around 40 seconds. I believe I am using a 4-bit quant of Flux Schnell.

AI Guy holding a floppy disk in a datacenter

Squeezing all of Flux Schnell into VRAM would be a nice upgrade.

My Radeon 6700 XT has roughly 35% faster gaming performance than an Instinct Mi50 according to Tech Power Up’s rankings. My hope was that the Mi50 would process more tokens per second since LLMs are usually limited by memory bandwidth, and the Mi50 has boatloads of bandwidth.

I keep waffling back and forth!

I just couldn’t bring myself to order an Instinct Mi50.

I do hate that I have to remember to spin up the Oobabooga webui every time I work on a blog post, and I have to remember to shut it down before playing games. I am also not good at remembering that I even need to spin it up before I start writing, so I wind up having to wait an extra 20 seconds while I am already prepared to paste in my first query.

I would like to have a dedicated GPU with reasonable performance in my homelab. Then I could just hit a key from Emacs and have some magic show up in the buffer five seconds later. I also feel that I would do a better job at even bothering to set things up to automatically query the LLM if I knew the LLM would always be there.

Flux Schnell Waffle Guy

What’s wrong with the Instinct Mi50? It has no fans, yet it needs to be cooled. I would have to choose and buy a blower fan, and I would have to find or design a 3D-printed duct.

I don’t have any PCIe slots in my homelab any longer, because I have downsized to mini PCs. I can definitely plug my old FX-8350 server back in, but I am not confident that there is enough room for the length of an Instinct Mi50 with a blower fan clamped to the end. I can for sure make it work, but it might require swapping to a different case.

I have been on a repeating cycle in my brain for weeks. “I want an LLM available 24/7!” “The Instinct Mi50 is so cheap!” “I don’t want to do the work only to find out it is too slow!” “I want an LLM available 24/7!”

I managed to find a cloud GPU provider with a 16 GB Instinct Mi50 GPU available to rent. That meant that I could test my potential future homelab GPU without spending hours getting the hardware assembled and installed in my homelab.

Trying out the Radeon Pro VII at Vast.ai

I was disappointed at first, because I didn’t see any Instinct GPUs in the list of currently available machines. I only saw some goofy Radeon Pro VII. What the heck is that?

It turns out these are the workstation version of the Instinct Mi50. Same cores. Same VRAM. Same clock speeds. They are almost identical except for the cooler and the extra video output ports. While the Instinct cards rely on a rackmount server’s own airflow to keep them cool, the 16 GB Radeon Pro VII has its own fan. You can get these on eBay, but they cost more than a 32 GB Instinct Mi50. I don’t know about you, but I’d rather put in the effort to finagle a fan onto the 32 GB card than pay the same for a 16 GB card!

The Xeon Gold CPU in the available server is a pretty good match for my old FX-8350. They have similar single-core performance, while the Xeon has twice as much multi-core performance. That is because my old FX-8350 has half as many cores!

My Radeon Pro VII testing was disappointing

I used Vast.ai’s Ubuntu 22.04 image with ROCm 6.2 preinstalled. I cloned Oobabooga’s text-generation-webui repository, and I copied up the exact same Gemma 2 9B 5-bit model that I use locally.

Everything installed fine. My model loaded right up. I also saw that rocm-smi had me at 71% VRAM usage, and it was peaking at 236 watts during inference. Everything seemed to check out. My LLM was running on the GPU, and the GPU was running at full speed.

I pasted in a blog-editing session from my local Oobabooga install’s history, and I got the Radeon Pro VII into precisely the same state as my local machine. Then I had them both regenerate the conclusion section for my last blog post, since that is my most successful use case for my local LLM so far. It also uses as much of the context window as I am likely to ever need to use.

In fact, I clicked the regenerate button three or four times just to be sure the results were consistent.

Instinct Mi50 Gemma 2 9B results

My Radeon 6700 XT managed to crank out results at 14.75 tokens per second. The Radeon Pro VII’s best run managed 7.64 tokens per second.

I think it is fair to say that the Instinct Mi50 equivalent machine that I rented at Vast.ai was roughly half as fast as my own GPU. I tried poking around with the model settings, but I didn’t manage to coax any extra performance out of it.

Some posts in r/LocalLlama lead me to believe that I might have been able to push something closer to 40 tokens per second with an Instinct Mi50 GPU with a model like Gemma 2 9B. I had high GPU utilization. I was consuming the right amount of VRAM. It is possible something else is going wrong, and it might be something out of my control, but I don’t have a good guess as to what that could be.

I don’t think I have much use for a 24/7 LLM server today if it can only manage 7 tokens per second. I was already having trouble convincing myself that I needed to buy an Instinct GPU to try out. Even though I am concerned that this could just be a flaw in the cloud-GPU setup, this still just might be how fast this GPU will be. I don’t want to put in the effort with a used GPU just to wind up with an LLM that is too slow to be useful.

I have only nice things to say about Vast.ai so far

I have not tried any other cloud GPU services, and I definitely need to tell you that I didn’t do a ton of comparative research here. Vast.ai was on one of three or four price lists that I checked. They are at just about the lowest price point of any cloud GPU provider, but that means they are also one of the more manual options. They were saying nice things about Vast.ai all over Reddit, the prices are great, and most importantly, they had the GPU I was most interested in testing available.

How is Vast.ai more manual than some of their pricier competition? There are companies that will let you fire up a preconfigured LLM, Stable Diffusion, or Flux Schnell service in a matter of seconds. You have to bring your own Docker configuration to Vast.ai, though they do have a library of basic templates that you can choose from.

I added $5 to my account a few days ago, and I have $4.78 left over. It only cost me three cents to do my little benchmark of the Gemma 2 9B on the Radeon Pro VII.

I spent the other 19 cents messing around with the Forge webui and Flux Schnell on a middle-of-the-road 16 GB Nvidia A4000 GPU. Why I chose this GPU will probably be a good topic for another blog post, but telling you how things went will fit well in this blog post!

Flux Schnell Confused Robot

I was generating nice 4-step 1152x864 images at around 20 seconds per image. That’s half the time it takes to generate a 640x512 image on my Radeon 6700 XT. The A4000 didn’t go any faster at lower resolutions. That was a bit of a surprise but is also kind of neat! It is unfortunate that this is still miles away from sites like Mage.space that will generate similar Flux Schnell images in 3 seconds.

Spending 20 cents per hour to generate Flux Schnell images in 20 seconds seems like a good deal compared to Mage.space’s $8 per month subscription fee. The problem is that it took 15 minutes for my Forge Docker image to download Flux Schnell from Huggingface.com. This is mostly a problem with Huggingface, because I have the same complaint here at home.

You can avoid most of that 15-minute wait by storing your disk image at Vast.ai with Forge and Flux Schnell already installed, but that would cost almost $9 per month. Why pay $9 per month for slower image generation when you can pay Mage.space to manage everything for you at $8 per month?

This even more of a bummer since I discovered that Runware.ai added an image-generation playground to their API service. I can pop in there and generate all the Flux Schnell images that I need for a blog post in less time that it takes a server at Vast.ai to boot. Booting the machine at Vast.ai costs me a nickel. Spending the same time generating images at Runware.ai costs a fraction of that, and I don’t have to wait 15 minutes to get started.

I am excited that I bought some credits to use at Vast.ai. When I can’t get something cool to work locally, I can spend a few nickels or dimes messing around on someone else’s GPU. That is a cheap way to find out if it is something that I can’t live without having locally. I can always decide that I just have to buy a 24 GB Radeon 7900 XTX or Nvidia 4090 later, right?!

The costs are small

I am grumpy about all of this. The prices on everything short of a current-generation GPU with 24 GB of VRAM are almost inconsequentially small.

I can add sluggish but not glacially slow LLM hardware to my homelab for $135, and I can power that new hardware for $70 per year. I don’t know how you want to amortize those dollars out, but lets call it $17 per month for the first year and $6 per month for every year after. That is peanuts if you ignore the work of configuring and maintaining the software.

That is about what it would cost to pay for a service like [Mage.space][(https://mage.space)] for image generation, and they’ll do the work of installing new models and keeping the software up to date for you. I can hit OpenAI’s API as hard as I know how to, and it will only cost me pennies a month. Both of these services are faster than anything I can run locally even if I shelled out $1,800 on an Nvidia RTX 4090.

Flux Schnell Robot Counting Money

The cost of keeping a disk image ready to boot at Vast.ai would be about the same. There is a ton of flexibility available with this option, but they still can’t boot a machine instantly, because they have to copy my disk image across the globe to the correct server. It will still take two or three minutes at best for me to start generating images with Flux Schnell.

You can be flexible, cheap, and slow at home. You can give up instant 24/7 availability to be flexible, cheap, and fast at Vast.ai. Or you can give up flexibility to be fast and cheap with services like Mage.space and OpenAI’s API.

AI in the cloud is almost free when you pay by the image!

Everything in this blog post fit together really well when I started writing it, because a Mage.space subscription, storing a disk image at Vast.ai, or idling your own machine-learning server at home would all cost a bit less than $10.

I didn’t discover that Runware.ai implemented an image-generation playground until I was almost finished writing this entire blog post. Runware.ai didn’t have a playground a month ago!

This fits my needs so much better. I can generate 4-step 1024x1024 Flux Schnell images at Runware.ai in about 8 seconds, and I can log in and start typing the prompt for my first image in about 10 seconds. They will let me generate 166 Flux Schnell images for a dollar. All of this is fantastic, and it meets my personal needs so well.

I don’t think it is possible for me to use up more than 20 cents a month in OpenAI credits, and I would be surprised if I ever manage to use up an entire dollar’s worth of Runware.ai credits in any given month. Both of these services are five to ten times faster and cheaper than running local LLMs or local image generation.

Runware.ai’s playground isn’t as flexible as Mage.space. There are fewer models to choose from, and there is no way to automatically run a matrix of models, prompts, and scales like I can locally. It is tough to complain with Runware.ai’s price and performance.

I did some more searching just before publishing this blog when I wanted to try out OmniGen. I figured it’d be fun to combine a photo of myself with a GPU in an odd location, and that was fun! My search helped me discover that Fal.ai has much fancier Flux Schnell image generation features than Runware.ai. Fal.ai costs a bit more, but it is still tiny fractions of a penny per image.

I don’t know why I didn’t figure this out sooner. I remember when Brian was using Fal.ai to train a lora to generate weird images of himself!

What about sharing an LLM server with your friends?!

I don’t have any good plans here, but I thought the idea was worth mentioning. Tailscale would make it ridiculously easy to share an Oobabooga text-generation webui and a Forge image-generation webui with a bunch of friends. Splitting the energy costs of a small server and the price of a used Tesla M40 or Instinct Mi50 GPU would quickly approach the price of a cheap cup of gas-station coffee every month with only a handful of friends contributing.

Flux Schnell three GPUs

That handful of three or four friends could easily make a used 24 GB Nvidia 3090 in a shared server approach the cost of the cloud services, and that would be fast enough to be properly competitive with OpenAI or Runware.ai.

Just about the most interesting reason to run your AI stuff locally is to protect your privacy. Running on a GPU at your friend’s house may or may not be something you consider private. Is it better to be one of millions of queries passing through OpenAI’s servers, or would I prefer to have all my queries logged by Brian Moses?

Conclusion

I started writing this conclusion section an hour before I discovered that Runware.ai has a playground, and my original plan was to explain how it makes me grumpy that both local and cloud machine-learning services have roughly equal pros, cons, and costs. Now I am suddenly happy to learn that I can run both LLM queries AND generate images with cloud services faster than I ever could at home for literal pocket change.

I am still excited about local LLMs. They have gotten quite capable at sizes that will run reasonably fast on inexpensive hardware. There is a good chance I will still wind up buying an Instinct Mi50 to run a local LLM, but I am waiting until I actually NEED something running 24/7 here in my home.

I would love to replace my Google Assistant devices around the house with something that runs locally, and an in-house LLM that can respond in a few seconds would be a fantastic brain to live near the core of that sort of operation. I would want this to be tied into Home Assistant, so I certainly wouldn’t want it to rely on a working Internet connection.

What do you think? Are you running AI stuff locally or using cloud services? Do you keep flip-flopping back and forth on what you run in the cloud vs. what you run locally? Tell us what you prefer doing in the comments, or join the Butter, What?! Discord community and tell me all about your machine-learning shenanigans. I look forward to hearing about your ML adventures!

Should You Buy An Intel X540-T2 10-Gigabit Ethernet Card?

| Comments

I bought a couple of 2.5-gigabit Ethernet switches with 10-gigabit SFP+ ports, and if I wanted to be able to utilize the 10-gigabit connection from my home office to the other side of the house, then I needed to buy a 10-gigabit Ethernet NIC for my PC. I did absolutely zero research. I saw a 2-port 10gbe PCIe card on Aliexpress for $17, so I added it to my cart alongside the three Xicom 10-gigabit SFP+ copper modules that I was already ordering.

Stable Diffusion and/or Flux Generated AI Person

The Intel X540 card has been working well, but I have had two problems. I am going to tell you about my problems so that you can make an informed decision. The only thing that I learned while searching the Internet to see if my problems were common is that the general vibe is that these cards can be problematic. Not in any specific way. They just aren’t great cards.

I think it is important for me to say that I am currently having zero problems with my 10-gigabit Intel X540-T2 Ethernet card. It was a good gamble at $17, and I will buy another if I need more 10-gigabit cards in the near future.

Why are these network cards so cheap?

The cards on Aliexpress were originally intended for something not quite compatible with the PCIe standard. There is an extra connector in the back that has been cut off. You wouldn’t be able to put this card in a normal PCIe slot if that connector were still intact. I don’t know what sort of proprietary machine these were originally meant for.

My Intel X540T2 10-gigabit Ethernet Card

The part circled in red notes where the PCB was cut at the factory after manufacturing. You can find nearly indentical cards in an image search where there is another edge connector at this location.

People on the Internet would like you to believe that these cards are assembled from salvaged components from used servers. I don’t think that is likely, but I wouldn’t be surprised if they’re assembled from Intel X540 chips that didn’t make the cut after testing by one of the reputable manufacturers.

The Intel X540 also happens to be a rather outdated 10-gigabit Ethernet chipset. This means that it doesn’t support 2.5-gigabit or 5-gigabit Ethernet, and it uses quite a bit more power than something newer. My cable only had to run 10’ to reach the switch, so I was confident that I would get a stable connection at full speed. You might want to find something that supports 5-gigabit Ethernet if your cabling situation is sketchier than mine.

My unique and serious problem

I couldn’t find anyone else with this problem, and I am not even quite 50% certain what actually solved my problem. I don’t expect that you will encounter this problem, but I feel like I need to tell you about it.

When I first installed the X540-T2 in my workstation, I couldn’t get it to boot. My fans and lights would turn on for a second, then everything would shut off. I reseated the card, and everything was happy. At least, I thought everything was happy.

When I rebooted my computer a few days later to check a BIOS setting, it shut off and wouldn’t turn back on again. Reseating the card didn’t help this time, so I scrounged up an old computer and tried the Intel X540 card in there. It worked just fine. It worked over, and over, and over again.

The most likely cause of this symptom is inadequate power delivery. My 850-watt power supply’s fan was making a gentle ticking sound last month, so I decided to replace it with a quieter fan than it came with. I have been running an old 500-watt power supply in the mean-time, and since it has been working just fine with my CPU and GPU maxed out, I haven’t been in a hurry to swap the repaired PSU back in.

Stable Diffusion and/or Flux Generated AI Person

So I did the work to swap the correct power supply back into my case. I noticed while doing this that the metal bracket on the Intel card wasn’t lining up well with the back of the case. I thought maybe it was pushing the 8x PCIe card slightly out of alignment in the 16x slot, so I gave the bracket a slight bend, and it fit much better.

A misalignment would explain why the computer wouldn’t boot, but it wouldn’t explain why a reboot would fail. You would expect it to run into a problem while running for days.

I checked the 12- and 5-volt lines on a drive power cable of the old power supply with a multimeter, and they weren’t dipping at all when powering up the computer, so I am not terribly confident that swapping the power supply was the fix. Those were the only two rails I could easily test.

One of these two things definitely helped, because I have been rebooting and power cycling my computer over and over again without issue. I am sure someone with a keen eye will notice the missing screw on the PCIe bracket in one of the photos on this blog post. I can only assume that I took that photo while swapping out the half-height bracket that was installed at the factory. There have been two screws installed every time I have had the card installed!

These Intel X540 cards tend to overheat

At least, I think an overheating issue is what I have run into. Heat is the number one complaint from owners of these cards. I don’t care how hot my silicon runs, but it definitely needs to be running within the design specifications.

I noticed the other day that some of my pings in Glances were failing. I pulled up speednest.net, and the results weren’t consistent. Reddit wasn’t loading full pages of content successfully, and my iperf3 tests to one of my mini PCs were bouncing between 0, 500, and 2,200 megabits per second.

I temporarily fixed the problem in an odd way. I fired up enough openssl speed benchmarks to max out all my CPU cores to get the chassis fans choochin’. It didn’t take long before all my network problems just straightened themselves out.

Stable Diffusion and/or Flux Generated AI Person

I have yet to properly address this issue. It hasn’t happened again, but I plan to bump up my minimum chassis fan speeds next time I am in the BIOS. My fan speeds are set really low to keep the noise down in here when I am recording podcasts, but I don’t think an extra 5% or 15% will make an audible difference.

The fans are usually set to spin at the minimum possible RPM. This is enough to keep my Ryzen 5700X and my Radeon RX 6700 XT at or below 45C when idle. That just doesn’t seem to move enough air past that poor Intel NIC.

The $60 Intel X540 cards on Amazon seem to ship with much larger heat sinks, and some cards ship with a tiny fan. I would expect the large heat sink to be a nice upgrade, but I definitely wouldn’t install a card with one of those tiny fans. I am trying to keep my office quiet, and I would expect to hear a high RPM fan like that.

My ACTUAL solution to my overheating Intel X540T2

My 10-gigabit LAN connection started getting weird again. My small set of hosts that I track in glances was showing timeouts again, so I did an iperf3 test. It came back wit the same weird results where it was bouncing between zero, hundreds of megabits, or several gigabits per second.

I know that I explained in the previous section that I bumped up my minimum case fan speeds in an attempt to help with this problem, but I wasn’t so certain that I ACTUALLY went into the BIOS to make that change. I was about to do boot into the BIOS to make those tweaks, but I changed my mind. I decided to pull the Intel NIC, pop off the heat sink, and see how things were doing in there.

Smokeping monitoring my Intel X540-T2 NIC

The heat sink was getting really hot. That should have been a good sign. That means that heat was leaving the chip on the NIC and transferring into the heat sink. Even so, whatever material they used for thermal transfer was dry and cracking, and there wasn’t actually any thermal compound directly between the chip and the heat sink.

I slathered on way too much of my old but preferred thermal compound, which is a tube of dielectric grease from Autozone that I have been using since 2008. I will probably be using this stuff for the rest of my life unless I manage to lose this tube. I didn’t know how hard the springs press the heat sink to the chip, so I figured I should err on the side of too much thermal grease. That way there wouldn’t be any air gaps.

Dielectric Grease as Thermal Paste

I honestly didn’t expect this to work, because the heat sink was already pulling what felt like a ton of heat out of the NIC. I have been monitoring the connection with Smokeping for more than ten days now, and I haven’t seen a single missed packet. I guess the upgrade to some nice, soft thermal compound was just enough to make the difference!

I do wish that I was smart enough to add my workstation to my Smokeping server BEFORE I repasted the heat sink.

Alternatives to the Intel X540

There’s no shortage of used Mellanox 10-gigabit Ethernet cards on Amazon between $25 and $50, but they all have SFP+ ports. You will need to add a $20 transceiver to plug in your Cat 6 cables. I could write an entire blog post about retired enterprise 10-gigabit network equipment, but that is a bit out of scope this time. I am trying to make use of the existing cables in my house this time instead of running short 40-gigabit connections between nearby computers.

Old Mellanox cards are probably the best option if you need 10-gigabit Ethernet and don’t want to use the inexpensive Intel X540 cards from Aliexpress.

Ethernet megabytes/s Rough Equivalent
100 megabit 12.5 Slow
gigabit 100 500 GB laptop hard disk
2.5-gigabit 250 3.5” hard disk or older SATA SSD
5-gigabit 500 the fastest SATA SSDs
10-gigabit 1,000 the slowest NVMe drives
40-gigabit 4,000 mid-range NVMe drives

There are plenty of PCIe 5-gigabit Ethernet adapters on Aliexpress that use the RTL8126 chipset for about the same price as the older Intel X540 cards. The only thing disappointing about these cards seems to be the speed.

The Intel cards consume almost 20 watts of power, while the Realtek 5-gigabit cards claim to use less than 2 watts. That doesn’t seem like too big a deal when you only have one card, but I have mini PC servers in my homelab that use less than 10 watts.

Since the Realtek cards fit in a smaller 1x PCIe slot, they are easier to fit into your build than the bigger Intel X540 cards.

I have a working 10-gigabit Ethernet card, and I am not going to put in work for a downgrade, but I think the right choice for me would have been buying a 5-gigabit Realtek card instead. Those cards just sip power, and I don’t have a use for the extra 5 gigabits today outside of running iperf3 tests to make sure the 10-gigabit link between the switch in my office and the switch in my network cupboard is actually running at 10 gigabits per second!

The problem with 40-gigabit and 56-gigabit network cards

The 40-gigabit Infiniband cards I was using a few years ago were fantastic. Those same Mellanox cards could run either 10-gigabit Ethernet firmware or 40-gigabit Infiniband firmware, so they’re the same family of 10-gigabit Ethernet cards I was recommending in the previous section—except you can get 40 gigabits per second out of them when running Infiniband.

That sounds awesome, except it is extremely challenging to find enough fast PCIe lanes to max out even one of the pair of 40-gigabit ports on those cards. You’re going to be buying older enterprise hardware, so the maximum supported PCIe version of those cards will be a generation or two out of date. If you are anything like me, the servers in your homelab are often made up of old computers that you used to run at your desk.

Those older computers might have even older PCIe slots, and the newest machines on your Infiniband network might have a GPU in the only properly fast PCIe slot on the motherboard. The best I ever managed in my setup was 16 gigabits per second of PCIe bandwidth. That worked out to 12.8 gigabits per second via iperf3 on my IP-over-Infiniband link.

That’s only 30% faster than 10-gigabit Ethernet, and I had no easy way to extend that connection from one end of the house to the other. I can run plain old 10-gigabit Ethernet over the old Cat 5e cable in my attic.

My first 20-gigabit Infiniband setup was a fantastic deal in 2016. I was getting 8 gigabits per second over iperf, and my entire setup to connect two computers cost less than a single 10-gigabit Ethernet card.

10-gigabit Ethernet is priced much better in 2024.

Conclusion

In the end, the Intel X540-T2 might be tempting with its low price, but it might be a bit of a gamble. I suspect that you will almost definitely get lucky and have a perfectly stable card, but there is the possibility that you will spend days wrestling with issues. While I personally wouldn’t hesitate to grab another X540 for myself, I think you should consider something like the $17 Realtek 5-gigabit cards unless you absolutely require 10-gigabit speeds—just make sure the other end of your connection actually supports 2.5- and 5-gigabit Ethernet!

This journey into the world of 10-gigabit Ethernet has been a reminder that even seemingly simple hardware choices can come with unexpected challenges. It highlights the importance of thorough research, understanding the nuances of different technologies, but also not being afraid to experiment. After all, what’s the fun in building a homelab without a few learning curves along the way?

If you’ve had similar experiences with networking hardware, or if you have any insights to share about overcoming these challenges, please leave a comment below! I’d love to hear your thoughts and experiences. And for even more in-depth discussions about homelab gear and tech troubleshooting, join the Butter, What?! Discord community.

10-Gigabit Ethernet Connection Between MokerLink Switches Using Cat 5e Cable

| Comments

I ordered and installed a pair of MokerLink 2.5-gigabit Ethernet switches in my home about two weeks ago. I put an 8-port managed switch with one 10-gigabit SFP+ port in my network cupboard, and I put a 4-port unmanaged switch with two 10-gigabit SFP+ ports in my home office. I got that all running at 2.5-gigabit speeds immediately, but my intention was to set up a path from my workstation to the cupboard at 10 gigabits per second.

My MokerLink 4-port 2.5-gigabit ethernet switch in its 3D-printed stand

The MokerLink 2.5-gigabit switch sitting in its custom 3D-printed stand with all its 10-gigabit SFP+ ports running

The hardware to set up the required 10-gigabit Ethernet just wound up taking a little longer to arrive.

Let’s talk about the title of this blog!

Brian Moses and I ran Cat 5e cable to almost every room in this house in 2011. That was eight or nine years before I bought the place!

Both 2.5-gigabit and 5-gigabit Ethernet are designed to run over Cat 5e or Cat 6 cable with lengths up to 100 meters. 10-gigabit Ethernet over copper requires Cat 6A cable. I am not using any Cat 6A cable, but I also don’t have 328 feet of cable between my office and the network cupboard!

You can run 10-gigabit over pretty crummy cables if they’re short enough, but how short is short enough? I haven’t found any good data on this. I have mostly only read anecdotes, so I figured I should document my own anecdote here!

Some SFP+ modules only support 10-gigabit Ethernet. I decided to try these Xicom SFP+ modules because they support 2.5-gigabit and 5-gigabit Ethernet. The latter would still be an upgrade, and the 3-pack of modules from Aliexpress cost about half as much as three of the cheapest SFP+ modules I could find on Amazon.

I had good luck. My connection across the house negotiated at 10 gigabits per second, and I haven’t seen any errors accumulating on the counters of the managed switch.

UPDATE: I added a bunch of RJ-45 couplers and extra Ethernet patch cables to make sure these Xicom SFP+ modules would actually attempt to negotiate a 5-gigabit Ethernet between themselves. I was a bit worried that I’d be encouraging you to buy these with the hope that they could fall back if your wiring was up to snuff, but then they would fail to do what they were supposed to. I tested it. They dialed back to 5 gigabits per second just like we expected!

Exactly what kind of cabling am I working with here?

My house is a little over 50 feet wide, and the network jack in my office is almost that far away from the cupboard. The cable has to go up 8 feet to get to the attic, then it has to come back down 4 feet to reach the patch panel in the network cupboard. It isn’t a perfectly straight line through the attic, and Brian and I definitely didn’t pull the cable taut.

Let’s just say there might be 70 feet of Cat 5e between the port on the wall in my office and the patch panel.

Brian's Network Cupboard Conduit

The tube that collects all the cables leading to the 48-port patch panel in my network cupboard

The cable from the patch panel to the 10-gigabit SFP+ module is an extremely short color-coded patch cable that I crimped myself. It is probably Cat 5e.

The 10-foot cable connecting my office’s switch to the wall has some historical significance for me! It is a yellow Cat 5 cable that almost definitely somehow made the journey here from the days when I worked for Commonwealth Telephone in Pennsylvania. Almost all our patch cables there were yellow, and this cable is from the days before the Cat 5e standard even existed.

What if I couldn’t get 10 gigabit out of these cables?

What would I personally have done? Me?! I would have swapped that old Cat 5 cable from the nineties between the 4-port switch and the wall, and if I was still stuck at 5 gigabits per second, I would have stopped there. That is more speed than I actually need, anyway!

What could you do if you REALLY want that faster connection? The easiest thing to do would be to try a different brand of SFP+ module. They are not all identical. Maybe you could borrow a module or two from friends to see if you have better results.

Old 3com switches at Commonwealth Telephone

The only relevant photo I could find. This is a stack of old 3com switches stacked on what was at one time my desk! Every one of these switches would have had 23 yellow patch cables plugged in.

I honestly expect that most people will be lucky enough to have 10-gigabit Ethernet work across old Cat 5 or Cat 5e wiring in their homes. I definitely don’t live in the biggest house around, but I also don’t live in a small house, and it is only a single story. That makes it a pretty wide house. Your longest cable run is likely to be shorter than mine if you are in a two-story house unless you’re approaching 5,000 square feet.

Maybe. I don’t know. I don’t live in your house!

I don’t think my MokerLink 8-port switch supports LACP, but I was able to bond four ports!

There are four 2.5-gigabit Ethernet ports on my router-style Intel Celeron N100 mini PC. I don’t really need to bond these ports together because a single 2.5-gigabit Ethernet port is about as fast as the 14-TB USB hard disk connected to my NAS virtual machine. Even so, trunking these ports made it easier to properly verify that I actually have 10 gigabits of bandwidth between my office and my network cupboard.

10-gigbit iperf3 test

The documentation for MokerLink’s 5-port managed switch has slightly different screenshots that what show up in my 8-port switch’s trunk configuration. The 5-port switch lets you choose whether a trunk group is set to static or LACP. I can put any four ports in a single trunk group, but I don’t have a choice as to what sort of group it is, and the link doesn’t work when I set Proxmox to use LACP.

The trunk works great with the Proxmox’s default setting of balance-rr for the bond0 device, and I am able to push data at 9.36 gigabits per second using iperf3 as long as I use at least four parallel connections. Sometimes I have bad luck, and two or more of those parallel connections get stuck on the same 2.5-gigabit interface, but bumping it up to six or eight parallel connections almost always breaks 9 gigabits per second.

That is part of the bummer about channel bonding. A single TCP connection will max out at the speed of just one network interface. You need multiple connections to fully utilize all the ports in the group, and they don’t always wind up attaching to the ideal interfaces.

This isn’t a problem in situations where you would use bonded network interfaces in a business environment, because you probably have hundreds or thousands of clients sharing those two, three, or four network ports. When I want more speed at home, it is always between two clients.

Troubles with my Intel X540-T2 PCIe card from Aliexpress

I could easily burn through 2,500 words explaining the problems that I have had with this 10-gigabit Ethernet card in great detail. I will probably dedicate an entire blog post to this card when I am confident that everything is going smoothly, but I will try to hit the important bits here.

I did not carefully choose this card. I had the three pack of Xicom SFP+ modules in my cart when I searched for 10-gigabit PCIe cards. I saw a dual-port card with an Intel chipset for $16 and almost immediately added it to my cart.

Stable Diffusion or Flux Man Installing a Network Card

When I installed the card, my PC wouldn’t power on. I pulled the card, plugged it back in, and it booted just fine.

Then I noticed that I couldn’t get more than 6 gigabits per second out of the card, and dmesg said that the card was using two PCIe lanes. I wanted to reboot to check the BIOS, but the machine shut down instead and wouldn’t power back up. Many attempts at reinstalling the PCIe card failed to improve the situation.

I set the BIOS to 4x instead of auto for that slot, and I dug out an old computer for testing. The Intel card from Aliexpress worked just fine over and over again in that machine, so I gave it another shot in my PC. It worked on the first try now, it is using four PCIe lanes, and I can reach over 9 gigabits per second.

Will it work when I reboot next week? I did get the Intel X540-T2 card working just fine, but I am somewhat less than 50% certain what my problem actually was!

Should I have bought a different 10-gigabit PCIe card?

For my situation, I don’t think it makes much sense to spend more than $20 on a NIC for my workstation. There are no other 10-gigabit Ethernet hosts on my network. I can max out the 2.5-gigabit Ethernet ports on three devices and still hit 900 megabits per second in both directions at speedtest.net. That’s pretty neat, but not terribly useful.

This older Intel NIC is pretty neat at $16. That’s about what I would have to pay for a 2.5-gigabit Ethernet PCIe card anyway, so it felt like a no-brainer to give it a try. The Intel X540 is old enough that it predates the 2.5-gigabit and 5-gigabit Ethernet standards, so this card will only work at 1-gigabit or 10-gigabit and not anything in between.

My Network Cupboard

I still have the 8-port switch dangling in the network cupboard. I need to set aside some time to unscrew one of the old 1-gigabit switches and get that thing mounted correctly!

The next step up would be more legitimate-looking Intel X540 cards on Amazon for $60. After trying this one, I am not excited about paying so much for another 17-watt NIC. Prices only go up from there.

Conclusion

I think it is definitely time to stop buying 1-gigabit Ethernet hardware. You can get 2.5-gigabit switches for quite a bit less than $10 per port now. So much hardware is shipping standard with built-in 2.5-gigabit network adapters now, and you can sneakily upgrade some of your older machines with $7 2.5-gigabit USB dongles.

The 10-gigabit Ethernet stuff is fun, but it is both more AND less persnickety than I anticipated. I expected to have trouble with the inadequate wiring in the attic. I absolutely did not expect to have weird issues with an Intel network card, even if that network card might be made from discarded or unused enterprise network gear from a decade ago.

The 10-gigabit link between switches on opposite sides of my house is fantastic. This has turned this pair of switches into a single switch for all practical purposes, so it doesn’t matter which room my mini PC servers call home. They will always have a full 2.5-gigabit connection directly to any other server no matter how many of them are moving data at the same time.

I would very much love to hear from you in the comments! Are you running 10-gigabit Ethernet at home across older wiring? How old is that wiring, and how long do you think the runs are? What make and model of SFP+ module do you have on each end? It would be awesome if we could figure out which gear is working for people, and also what sorts of wiring they have managed to get a good connection on. If you are interested in chatting about DIY NAS and homelab shenanigans, then you should considering joining our Discord community. We are always chatting about servers, network gear, and all sorts of other geeky topics!

Upgrading My Home Network With MokerLink 2.5-Gigabit Switches

| Comments

I am changing course again. I used to have a small 40-gigabit Infiniband network segment in my home office. This was necessary at the time because I stored video files on my NAS that I needed access to on my workstation, and video editing is a lot smoother when those files feel just as fast as if they were sitting on a SATA SSD installed in my workstation. It was also quite inexpensive and exceedingly cool.

I eventually decided to move my NAS and homelab server out of my office to cut down on the fan and hard disk noise in here. I didn’t have a good way to extend my 40-gigabit connection all the way to the other side of the house, so I wound up installing a 12-terabyte hard disk and a 1-TB SSD for lvmcache in my workstation. That let me keep a synced copy of my video files on my workstation, my NAS on the other side of the house, and my off-site server at Brian Moses’s house.

My new MokerLink 2.5-gigabit Ethernet Switch

My home office’s new 4-port Mokerlink 2.5-gigabit switch with two 10-gigabit SFP+ ports in its new 3D-printed home

While I was setting that up, I made a sort of informal decision that I would attempt to keep my file storage setup configured in such a way that I would never need more than a 100-megabit Ethernet connection. This was a good fit for the symmetric 150-megabit Internet connection I had at the time.

Things have changed since then. I have upgraded our home FiOS internet service to symmetric gigabit. Brian upgraded his service to symmetric two gigabit. I also swapped out my old homelab server and NAS for a mini PC with four 2.5-gigabit Ethernet ports. I knew it would only be a matter of time before I added a second device with 2.5-gigabit Ethernet ports.

That day has already passed, and I have enough USB 2.5-gigabit Ethernet dongles to upgrade two more machines. It seems like it is about time to upgrade my network cupboard to 2.5-gigabit Ethernet, and it also seems like it would be fun to connect my home office and my workstation back to the cupboard using 10-gigabit Ethernet.

Here’s the tl;dr

Everything is working great. It took less than five minutes to swap out the switch in my office, and I was immediately seeing better than 2.3 gigabits per second between my desktop PC and my office’s Proxmox server via iperf3.

It didn’t take much longer to temporarily stash the 8-port managed MokerLink switch into my network cupboard. The web interface is basic but capable, and iperf3 is running just as fast in both directions between devices connected anywhere in my home.

The real summary is that the MokerLink 2.5-gigabit switches are exactly what they are supposed to be: boring! I plugged them in. They work. They are faster than the switches they replaced.

How fast is 2.5-gigabit Ethernet? Is it fast enough?

The speed of 2.5-gigabit Ethernet is just math, but math is boring, and it may not help us understand what these speeds are equivalent to. You want to know if the network is going to be your bottleneck, and you’d like to figure out if you could use the upgrade.

I put together a little table that describes what each Ethernet standard’s maximum performance is roughly equivalent to. The equivalents aren’t exact, but they’re reasonably close.

Ethernet megabytes/s Rough Equivalent
100 megabit 12.5 Slow
gigabit 100 500 GB laptop hard disk
2.5-gigabit 250 3.5” hard disk or older SATA SSD
5-gigabit 500 the fastest SATA SSDs
10-gigabit 1,000 the slowest NVMe drives
40-gigabit 4,000 mid-range NVMe drives

What is wrong with these rough equivalents? Hard disks don’t have a steady throughput. They are faster at the outer edge of the platter and slow down as they approach the center. The largest modern 7200-RPM disks can reach a little over 300 megabytes per second on the fast end, but they’ll drop down to something a little below 150 megabytes per second on the slow end.

Your 10-gigabit Ethernet network also has a lot more latency than your local NVMe drive. While it is no trouble for a mid-range NVMe to manage 500,000 input/output operations per second (IOPS), introducing a fraction of a millisecond and an extra protocol like CIFS or NFS will severely impact your IOPS when accessing a remote NVMe drive over 10-gigabit or 2.5-gigabit Ethernet.

Upgrading to 2.5-gigabit Ethernet is kind of a no-brainer these days. We are at or below $10 per switch port, USB 2.5-gigabit Ethernet dongles are under $10, and PCIe cards are in that ballpark as well. Not only that, but both 2.5-gigabit and 5-gigabit Ethernet will almost definitely work with the cables that are successfully carrying gigabit Ethernet signals.

I can tell you that one switch for each end of my house, three 10-gigabit SFP+ modules, a two-port 10-gigabit Ethernet card for my workstation, and a couple of USB 2.5-gigabit Ethernet adapters cost less than $200.

Is 10-gigabit Ethernet worth the hassle?

This is a fantastic question! 10-gigabit Ethernet pricing is getting pretty good, but the price of the switches and network cards isn’t the only thing to consider.

Both 10-gigabit Ethernet switches and network interface cards tend to use a lot more electricity, so they also generate a lot more heat. The protocol is also much pickier about the cabling that it will manage to run over. Some people have success on shorter runs over Cat 5e cable. You’re only supposed to need Cat 6 cable, but some people have trouble even then, and they have to try multiple SFP+ transceivers in the hopes that they will get a good connection.

Stable Diffusion or Flux Schnell Network Man

I wouldn’t even be worrying about connecting my office to my homelab with 10-gigabit Ethernet if I weren’t writing a blog. I don’t need that extra performance, but it will be fun to tell you whether things work or not!

I helped Brian Moses run Cat 5e to every room in this house almost a decade before I bought the house from him. I know that there is somewhere around 50’ to maybe 60’ of Cat 5e cable between my home office and the switches in my network cupboard.

That is short enough that I may have success over Cat 5e. The RJ-45 transceivers I picked out also support 2.5-gigabit and 5-gigabit Ethernet, so it will still be a worthwhile upgrade even if I only manage half the speed.

UPDATE: The trio of Xicom SFP+ modules arrived, and they are working great. The connection to the other side of the house is running from a 10-gigabit port on my office switch to the wall via a Cat 5 cable from the nineties, then through the attic on around 40 to 50 feet of Cat 5e cable Brian and I pulled in 2011, then connected from the patch panel in the network cupboard to the 10-gigabit port on the switch. It connected at 10 gigabits per second, and I managed to run enough simultaneous iperf3 tests over various 2.5-gigabit and 1-gigabit Ethernet connections to push around 6 gigabits per second over that link.

When are you going to tell us what you ACTUALLY BOUGHT?!?!

MokerLink has three sizes of switch that I was considering, and each size is available in a managed or unmanaged variety. I waffled a lot on whether I was going to pay the extra $20 to put a managed switch in my network cupboard.

The number one reason on most people’s list for using a managed switch is to set up secure VLANs for their skeevy, untrusted Internet of Things hardware and oddball IP cameras with sketchy firmware that might phone home, and they don’t want that gear with janky firmware being used as a foothold to hack their important computers.

I am not worried about that in the slightest. I don’t run anything important outside of my Tailscale network. As far as I am concerned, my private and protected VLAN is my Tailnet. That is all I need, but I bought a managed MokerLink switch for my cupboard anyway. I thought $20 was a small price to pay to let you know how I feel about MokerLink’s managed switches.

The three sizes on my radar were the 8-port and 5-port 2.5-gigabit Ethernet switches, each with a single 10-gigabit SFP+ port, and the 4-port model with a pair of SFP+ ports. I thought that I wanted two SFP+ ports in the cupboard so that future Pat would have more options available, but I realized that I could probably connect every in-use port in the house to a single 8-port switch. Math also told me that four 2.5-gigabit ports in the cupboard wasn’t going to be enough.

I put a MokerLink 8-port managed 2.5-gigabit switch in the cupboard. Then I placed a 4-port unmanaged switch with a pair of SFP+ ports in my home office.

I only need a single 10-gigabit port in the cupboard to connect to my office. When they day comes that I need a second port, then it will definitely be time to pick up a dedicated 10-gigabit switch!

Fanless switches are awesome!

We put a pair of small, inexpensive, fanless gigabit Ethernet switches in Brian’s network cupboard in 2011. They are still running in my network cupboard today. Aside from power outages, they have been running 24/7 for 13 years.

They don’t use much power. They don’t generate much heat. Even more important, though, is that they don’t have any moving parts.

Moving parts like fans will eventually fail. It was important to me that my new switches have no moving parts, and these two MokerLink switches have no fans. There is a very good chance that both of these switches will still be in service in my house in another 13 years.

The network is the road that all of my computers have to travel on. I don’t want that road to be exciting, fancy, or even interesting. I want it to work, work well, and continue to function almost indefinitely.

Why MokerLink?

The homelab community in general seems to be pleased with MokerLink’s hardware, and I have friends who are already using some of their gear. The prices are pretty good, too!

I was extremely tempted to try one of the more generic-looking 2.5-gigabit switches. There are more than a few that look physically identical and have the same specs as MokerLink’s offerings, and those switches are 30% to 40% cheaper than MokerLink’s devices. The price gets even lower if you shop at Aliexpress.

I know that 40% sounds like a lot, but with these small switches, that winds up being only $25 or so.

My Network Cupboard

The 8-port MokerLink 2.5-gigabit switch is just hanging by its cables because I can’t install it until the 10-gigabit modules arrive!

MokerLink doesn’t have an 8-port 2.5-gigabit switch with TWO SFP+ ports. I did see some rather sketchy-looking and quite inexpensive 8-port switches that do, but I was weirded out by their odd faux-VLAN toggle button on the front of their hardware. This option seems similar to WiFi client isolation. I was tempted by the extra SFP+ port, but extremely turned off by the odd VLAN option.

I am a dopefish and have a poor memory!

The back corner of where my two desks meet is REALLY far back there. I can’t reach that far unless I stand up and bend way over. It is a reasonable place to keep my office’s network switch. I can see if things are working, and I can reach back there if I have to when I am setting up a new laptop or server.

I designed a custom bracket to hold my old gigabit switch, and that bracket helps wrangle the patch cables and keeps everything tidy. I figured I should print a new bracket for my smaller MokerLink switch.

When I was working on that, I noticed that I was already out of switch ports, and I was kicking myself for not buying an 8-port switch for my office. I wound up redesigning the bracket to hold both the new MokerLink switch and my old gigabit switch.

The bracket is awesome, and I will leave it installed, but I didn’t realize until after I was finished installing it that I won’t need both switches.

I completely forgot that I would soon be using the two SFP+ ports! I’ll be moving the uplink cable from the wall, and I’ll be moving my workstation to the other. I will have two ports free, and that is more than enough for testing things at my desk.

I also remembered why I didn’t order an 8-port switch for my office—MokerLink doesn’t even make a fanless 8-port switch with TWO SFP+ ports!

How is everything working out?

You have already read more than 1,500 words, and I haven’t even told you how the new hardware is working out so far. I will have to stick a tl;dr up at the top!

Everything is working great. I am getting slightly better than 2.3 gigabits per second via iperf3 in either direction. This is true between devices connected to my office switch, and between devices plugged into my office switch to and from devices connected to my network cupboard switch.

The web interface on the managed MokerLink switch is basic but quite functional. It is possible that I missed something, but I couldn’t find a way to limit MokerLink’s web management interface to particular ports of particular VLANs.

I would expect that if you want to divvy up your network into VLANs for security purposes, that you’d want to make sure your guest WiFI, IoT, and DMZ VLANs wouldn’t be able to hammer away at the password to your management interface. I also wouldn’t expect that interface to be well hardened. It is up to you to decide if this is a deal-breaker for you.

I don’t have enough 2.5-gigabit devices to simultaneously beat the crap out of every port on these switches, but the review on the unmanaged 8-port Mokerlink switch at servethehome seems to indicate that you can get quite close to maxing every port out.

I thought I would finally be able to max out Tailscale on the Intel N100 CPU!

I have a vague recollection of us learning that Tailscale’s encryption speed tops out at somewhere around 1.2 gigabits per second on the older Intel N5095 CPU. Depending on what you are measuring, the Celeron N100 is a 25% to 40% faster CPU. Surely it won’t quite be able to max out a 2.5-gigabit Ethernet port, right?!

My older model but roughly comparable mini PC with a Ryzen 3550H CPU gets really close to maxing out all its CPU cores while reaching 2.15 gigabits per second via iperf3 over the encrypted Tailscale interface.

My Intel N100 mini PC manages 2.26 gigabits per second with a sizable chunk of CPU going unused. That is around 90 megabits short of maxing out the physical link, which is about how far short Tailscale falls when running over gigabit Ethernet as well.

I won’t have a good way to find the actual limit until my 10-gigabit hardware arrives in a couple of weeks, but I did skip ahead and set up a bonded LACP link using two of my unused ports on my router-style Proxmox server. We’ll see if that will help me max out Tailscale on the Intel N100 in a couple weeks!

UPDATE: I am able to get pretty close to 100% CPU utilization running iperf3 over Tailscale over my four bonded 2.5gbe ports. I am stuck at about 2.26 gigabits per second in the inbound direction, but I can reach 2.84 gigabits per second when going outbound.

Honorable mention

I picked up a 5-pack of CableGeeker’s 5’ flat-pack Cat 6 patch cables in a variety of colors. I dropped these cables down through a hole in the network cupboard to the table where our mini PCs and servers sit.

I am finally running out of good patch cables after more than two decades of hoarding. I have enough stock that I could crimp some fresh ones, but I thought it would be useful to color-code these cables that are difficult to trace, and I don’t know that I have enough colors on hand to do that.

I am using 10’ CableGeeker flat-pack cables all over my office now, and I have packed my various network toolkits and laptop bags with their cables. They are well made, and they have all done a good job of carrying 2.5-gigabit signals. We will find out if the modules capable of carrying 10-gigabit Ethernet in a couple of weeks.

I am a big fan of flat network cables. They roll back up nicely, and they take up less room in your bag even if you’re not careful about how you wind them up. They’re also easier to hide along floorboards.

What’s next?

I wasn’t going to publish this until after I had a chance to properly install the 8-port switch in my network cupboard, but I realized that I might need to bring it into my office for testing if I wind up having trouble with the 10-gigabit SFP+ modules. It isn’t going to be easy to fish it back out once installed in its proper home in the cupboard!

I have a three-pack of Xicom 10-gigabit SFP+ copper modules and a 2-port Intel 10-gigabit PCIe card ordered and on the way. The SFP+ modules arrived and they are working splendidly!

I did stick the corner of the new switch in between the two pieces of pegboard in my network cupboard, and the new switch will definitely fit where it needs to go. I am definitely relieved by this. Cutting a new swinging 19” rack would be a fun little CNC project, but the project that Brian and I worked on 14 years ago has historical significance. I’d like to see that simple rack still doing its job in another 14 years!

If you want to dive deeper into the world of home networking and connect with other tech enthusiasts, you should check out the Butter, What?! Discord community. We have a dedicated channel for homelab setups and discussions where you can share your experiences, ask questions, and get some helpful advice.

Leave a comment below and let me know what you think of this post!

I Am Running XFCE On My Proxmox Host?!

| Comments

I was supposed to buy one power-sipping Celeron N100 mini PC to replace the aging and inefficient AMD FX-8350 in my homelab. That is what I did at first, and it worked out great. My Intel N100 with a single 14-TB USB hard disk averages around 15 watts, while the FX-8350 with four 4-TB hard disks was averaging just over 70 watts. Not only is it more efficient, but the mini PC is very nearly as fast and has nearly double the usable amount of storage as the old server. How awesome is that?

Then I bought a second N100 mini PC and decided to experiment with it before putting it directly into my homelab. I learned that the N100 has enough GPU to play some reasonably modern games, and it can emulate consoles up to and including the Nintendo Wii.

Minisforum UM350 Proxmox Machine In Its Temporary Home

My Proxmox host mini PC with XFCE in its temporary home where I can easily plug and unplug USB devices while I continue testing

That’s what put this weird thought in my head. Why not load Steam and Retroarch on the host OS of one of my Proxmox nodes and leave it on the TV in the living room? That is as far as I got with the question because I don’t have wired Ethernet running to the TV, and I am not going to put one of my Proxmox nodes on WiFi.

Then I bought a third mini PC with a Ryzen 3550H CPU. This older CPU roughly comparable to the Intel N100 in both power consumption and horsepower, but the Ryzen has an integrated GPU that is 3 or 4 times faster.

These two extra Proxmox nodes have both been sitting on my desk for enough weeks just waiting for me install them in their permanent homes that it getting another hare-brained idea was inevitable. I at least am hoping that my new idea is a good idea!

Installing XFCE on the Proxmox install was easy!

I just had to run apt install task-xfce-desktop. Aside from creating a non-root user account for myself, that was it. You will have to either reboot or manually fire up lightdm yourself, and you’ll be able to log into XFCE.

I don’t believe Proxmox uses network-manager, so the network controls in XFCE aren’t going to work. That is fantastic, because I wouldn’t want XFCE goobering up my Proxmox networking settings!

I had to add myself to the sudoers group and log back in before I could install Steam. That was easy.

OBS Studio via VNC

I installed flatpak so I could use it to install OBS Studio with VAAPI. That was also easy, and it went quite smoothly.

It took me longer than I want to admit to remember the name of the project that replaced Synergy. I remembered that the modern fork of Synergy is called Barrier. Barrier was in apt, and it only took me a few minutes to get that working. Now I could move my mouse to the right edge of my monitor and start controlling the Proxmox host on my office TV.

One of our lovely friends in our Discord community pointed out that Barrier is also dead now, and that the new fork is called Input Leap. This was not in apt, so I am just going to leave my barrier setup running for now. It is locked down to my Tailscale network, so I am not worried about it being an older piece of network code.

Why on Earth am I doing this?!

I have two reasons for wanting to run a desktop GUI, and I have one extra reason for wanting one of my Proxmox nodes to live in my office.

The first was inspired by a recent hardware problem on my desktop PC. My PSU fan started making some noise, so I had to shut it down to work on that. I happened to have a spare power supply that was beefy enough to swap in its place while I replaced the power supply’s fan, but only just barely. This could have easily been a situation where I would have had to wait for Amazon to deliver me a new piece of hardware to get up and running again!

Proxmox with desktop logged in

The Proxmox server is using less than 3 GB of RAM with the XFCE desktop running, OBS Studio running, and the Octoprint container running

I thought it would be nice to have a spare mini PC with a desktop GUI at my desk that I could use in an emergency. I could quickly plug in my monitor, keyboard, and mouse so I could use Discord, Emacs, and Firefox. That is plenty of functionality to keep me chugging along, and it is way more comfortable than using my laptop.

This idea all by itself seems like a good enough excuse to try this out.

If you’ve been wondering why I wouldn’t attempt to pass the GPU through to a virtual machine and isolate the desktop GUI inside, here is the first part of the explanation. When my computer stops working, I want to be able to plug my important peripherals right in and use them. I don’t want to be futzing around with passing through all the appropriate USB devices. I wouldn’t even have a good place to sit down and do that work!

A dedicated OBS streaming box might be a nice thing to have!

I am running out of USB 3 ports on my desktop PC. Some of my video gear is plugged in via USB hubs. Sometimes I need to disconnect and reconnect my USB to HDMI adapters to get them to work correctly. Even just reducing the number of USB cables that have to run toward my desktop computer will be an improvement.

I have my podcasting camera mounted upside down. This lets me see my Sony ZV-1 vlogging camera’s little display while pushing the lens as close to my monitor as possible. The USB to HDMI dongle that I use doesn’t allow for simple flipping and inverting via the V4L2 driver, so I have to pass it through something like OBS Studio to transform the camera.

Having a dedicated streaming mini PC to handle my cameras, encoding, and streaming seems like it’d be handy.

My desk with my podcasting camera

The latency and frame rate of the OBS Studio output from my mini PC over VNC are both terrible, but it is more than adequate for making tweaks to the OBS Studio settings!

I am able to encode 1080p HEVC video using the GPU via VAAPI. It only uses around 40% of this tiny iGPU’s horsepower, but it has had weird encoder hiccups during the first couple seconds of recording. I suspect it just isn’t ramping up the speed of the GPU quickly enough, but it is fine once it settles in. Worst case I have to dial that back from h.265 to h.264.

I haven’t decided exactly how I am going to tie this into my recording and streaming setup, but I am excited to see that this little box is more than capable of handling these tasks.

I simplified my virtualized Octoprint setup

A lot of people run Octoprint on a Raspberry Pi. I’ve always run it in a virtual machine on my homelab server. When I moved my old FX-8350 homelab server out of my office to quiet things down in here, that meant my 3D printer was now 60’ away from the Octoprint virtual machine, and I surely wasn’t going to run a 60’ USB cable across my house!

I brought one of my old OpenWRT routers out of retirement and installed socat. That let me extend a virtual serial port across my network so I was able to keep using my Octoprint instance. It also gave me an extra access point to add to my 802.11r WiFi roaming network, which was a nice bonus.

Octoprint on my Proxmox host via Tailscale

The socat setup worked most of the time, but every once in a while I would have to restart the socat processes. This didn’t happen often, but these days I only fire up my last remaining Octoprint server once every month or two. The socat process now almost always needs to be kicked before I can start printing.

I was able to plug my Sovol SV06 directly into my new quiet Proxmox server in my office. I did have to cheat, though. If I wanted to run the cable along the wall, I would have needed a 30’ USB cable to make that journey. I decided to run a cable directly across the carpet from my 3D-printer stand to my desk, so there’s 32” of USB cable on the floor with a temporary piece of duct tape helping to make sure I don’t snag it with my foot.

This cable across my floor is a terrible solution, but the Sovol SV06 will definitely be my last printer that is slow enough or old enough to be used with Octoprint. I don’t have a timeline for retiring it, but it is definitely going to happen. That means this short span of USB cable across my office floor is temporary. We just don’t know how temporary!

Is this a good idea?

Should you do this with one of your production Proxmox servers at your company? Absolutely not. Should you do this at home? If you know what you are doing, I would say that it is worth a shot. I am only eating up 2.6 gigabytes of RAM having a desktop session logged in with OBS Studio running. That will be less than 10% of the available RAM in this machine once I am finished shuffling SO-DIMMs around.

Way back when I built my arcade cabinet, I started telling people that the best computer in the house to use as a NAS is the one that already has to be powered up 24 hours a day. An arcade cabinet is way more fun when you can just walk up to it, hit a button, and immediately start jumping on goombas.

Mario Galaxy on an Intel N100 Mini PC

If you’re already paying a tax on your electric bill to keep one computer running all day long, why not give it one more task instead of buying another machine and paying that same tax again?

The important thing to bear in mind is that you may be tying the uptime of these tasks together. When you can’t play Dead Cells because your GPU has somehow gotten itself into a weird state, and the only way to fix it is a reboot, then all the virtual machines on that Proxmox server will also wind up being restarted.

If that means your PiHole VM and Jellyfin container have to be stopped, then nobody in your house will be able to access websites, and someone’s movie stream may stop. Nobody is going to lose any sales, but it is up to you to decide how much money it is worth to avoid this situation.

Conclusion

This little mini PC project has proven to be fun, and it was as easy to get a desktop GUI running on Proxmox as I had hoped! Having a single power-sipping mini PC fitting into two or three roles at the same time seems like a good value, and I am excited to see just how much use I get out of these tertiary use cases.

Odds are pretty good that I will never need to use this Proxmox mini PC as an emergency workstation, but I will feel better knowing that it is available. I do expect to get some use out of the video recording and streaming capabilities. I have some work to do there because I want to be able to use the output from OBS Studio on the mini PC as a virtual webcam in Chrome on my desktop when I connect to Riverside.fm.

What do you think? Do you think it is silly to run a GUI on a server? I would usually be the first person to think so! Are you already doing something similar with one of your Proxmox servers? Or are you running your emergency GUI in a virtual machine? Does it seem like a good idea to overload one of my Proxmox nodes as a video capture, encoding, and streaming machine? Tell me about it in the comments, or join the Butter, What?! Discord community to chat with us about it!

I Added A Refurbished Mini PC To My Homelab! The Minisforum UM350

| Comments

I saw the refurbished Minisforum UM350 on Amazon for $155, and my brain immediately started tingling. Geekbench 5 says that this older Ryzen 3550H is a little faster than an Intel N100, though the spec sheet implies that it may use a lot more power than an Intel N100 when you start to push it hard, but surely it can’t be too bad at idle! It has TWO DDR4 SO-DIMM slots, and the listing INCORRECTLY says that it can run with a pair of 32 GB SO-DIMMs. Not only that, but this Minisforum box has a 2.5-gigabit Ethernet port.

Minisforum UM350 Ryzen 3550H mini PC

So you’re saying that for $10 to $15 more than a brand new Trigkey N100, I can get a comparable machine that supports twice as much RAM, has a faster network port, and should have a much faster GPU?! The lowest price I have seen on a mini PC with 2.5-gigabit Ethernet is around $200. This seemed like it was worth a try!

Mine doesn’t work with 32 GB SO-DIMMs

It sort of works. Memtest86 sees that there are two sticks of RAM installed, but the BIOS and Memtest86 both only see 32 GB. Memtest86 was getting 15 GB/s throughput with the stock pair of 8 GB SO-DIMMs, but it was only getting 9 GB/s with the pair of 32 GB SO-DIMMs. That makes me suspect that it is really only using one of the DIMMs. It did pass a full run of Memtest86 with the pair of 32 GB SO-DIMMs installed.

The BIOS is pretty basic and didn’t give me much insight here.

My suspicion is that there is something about my particular pair of 32 GB SO-DIMMs that this mini PC doesn’t like. Just the fact that it can fully utilize one 32 GB SO-DIMM is a strong indication that it should be able to use a second, and there isn’t anything about the first-generation Zen CPUs that would suggest that it won’t support 64 GB.

I had a lot of weird problems with the 32 GB SO-DIMM that went away when I put the stock RAM back in. My USB keyboard had to be unplugged and replugged a lot. I was able to install Proxmox, but it kept locking up shortly before the fresh install finished booting. It didn’t lock up every time, though. It booted clean the first time. It was definitely acting weird.

If my Minisforum UM350 would have worked with 64 GB of RAM, it would have been an AMAZING value for my homelab. Even so, I feel that the 2.5-gigabit Ethernet port alone was worth the extra $10!

Minisforum vs. Beelink or Trigkey

I am pretty convinced that Beelink and Trigkey are the same company. The packaging has the same corporate address, and their cases are identical.

All of these mini PCs share some common features. They vary in size, but they would all be considered small. Almost every model ships with some sort of hardware to mount the mini PC to the VESA mount on the back of your monitor.

This particular Minisforum PC is a little bigger than any of the Beelink or Trigkey boxes that I have seen, but not by a huge margin. I enjoy that it has a tool-free lid granting you access to the RAM, NVMe, and WiFi card. That kind of feels like a wash because the NVMe is tucked underneath the edge of the shell, and it is a bit of a challenge to get it in to place to push it straight into the slot.

Minisforum UM350 Ryzen 3550H mini PC

You can see some scuff marks on the tool-free lid of my refurbished Minisforum UM350!

I don’t know why, but I was under the impression that Minisforum wasn’t a Chinese company. I thought they were a European company shipping rebranded hardware shipped from China.

Buying a Minisforum product has all the same advantages and disadvantages from Beelink, Trigkey, Topton, or Sovol. The documentation is thin and often poorly translated. Customer service is probably on a different schedule than you. Even so, you will be getting a lot of hardware for your money.

I am extremely pleased with the Ryzen 3550H!

I expected that the 3550H would be reasonably comparable to the much newer Intel Celeron N100. I didn’t expect the aging Ryzen mobile CPU to be 15% faster, and I also didn’t expect the Minisforum box to idle at a lower wattage than either of my Intel N100 mini PCs!

After installing and updating Proxmox on my new mini PC, I plugged it into my spare Tasmota smart outlet, and I have been logging electricity usage. It is using 0.11 kilowatt hours each day. That works out to an average of only 4.6 watts.

Ryzen 3550 Minisforum UM350 Kilowatt hours per day and watts

That is 1.6 watts less than I have ever seen on my Topton CWWK N100 router-style mini PC!

I also ran a couple dozen concurrent copies of openssl speed to keep all the CPU cores pegged, and the Minisforum UM350 topped out at 28 watts. That is only 2 watts more than I have ever seen my Intel N100 mini PCs use. That isn’t too bad, either. It is using 7% more electricity while being about 15% faster. That is a decent trade!

How is the iGPU?

I was really curious about this. The Ryzen 3550H has the exact same iGPU silicon with the same core counts as my Ryzen 5700U laptop, but while the Ryzen 3550H’s GPU is clocked at only 1.3 GHz, my laptop’s GPU is clocked at 1.9 GHz.

None of these machines have what you would call powerful GPUs, but the Intel N100 can easily play emulated games up to and including the Nintendo Wii, and I was able to play Gunfire Reborn at just a little under 60 FPS at 720p. My laptop is a much more capable gaming machine than my N100 mini PCs, and I kind of expected the Ryzen 3550H to be closer to my laptop.

Why Gunfire Reborn? It is a fun game that isn’t very old, and it is still being updated and improved. It also runs reasonably well on even the slowest mini PCs.

I am quite pleased with how the Ryzen 3550H stacked up. I swapped my Intel N100 gaming PC’s NVMe right into the UM350, and I fired up Gunfire Reborn with the exact same settings. It runs at 102 FPS at 720p, and it still managed 92 FPS at a full 1080p. Mind you, this is with all the settings dialed down to low.

Intel N100 vs. Ryzen 3550H Geekbench 5

Just for reference, my Ryzen 5700U laptop runs at about 132 FPS at 720P and 118 FPS at 1080p. That is about 30% faster than the Ryzen 3550H. That is in the ballpark of what I expected.

Does this matter? Probably not. I don’t think anyone is buying a refurbished Minisforum UM350 to play games. It is likely more interesting to you just how well this thing transcodes video for Jellyfin or Plex. The silicon used for encoding video is entirely separate from the silicone used for playing games, so how much better this Ryzen iGPU runs Gunfire Reborn doesn’t mean it will transcode video faster than the Celeron N100!

I had a little trouble getting the Jellyfin Proxmox helper script working. I do know from friends in our Discord community that the Plex and Jellyfin hardware encoding on this Ryzen iGPU is more than up to the task, but I am quite curious how it stacks up to the Intel QuickSync hardware on the Celeron N100. I am going to give this another try soon, but I didn’t want to let it slow down the publishing of this blog post!

Did Pat get hosed by not being able to use 2x32 GB of RAM in the Minisoforum UM350?!

Nope! I am going to turn this into a really good value for me!

My $155 Minisforum UM350 came with 2x8 GB SO-DIMMs. That is technically enough for my needs, but at the same time it feels like a bummer.

My $143 Trigkey N100 came with a single 16 GB SO-DIMM. I then spent $105 on 2x32 GB of DDR4 SO-DIMMs. The intention was to buy a second N100 mini PC and upgrade both to 32 GB.

Minisforum UM350 Ryzen 3550H Mini PC

Can you see how the NVMe with the thick heat sink is partially blocked by the chassis?

Are you keeping score? That means I was going to pay $390 for a pair of N100 mini PCs each with 32 GB of RAM, and I would have had an extra pair of 16 GB SO-DIMMs left over.

What if I buy another Trigkey N100? I can upgrade it to 32 GB, then I can use my leftover pair of 16 GB SO-DIMMs to upgrade the Minisforum UM350.

This may mean my homelab is getting out of control, but it WILL give me three comparable mini PCs each with 32 GB of RAM for my homelab for $545.

It might just be an excuse to add one extra mini PC to my homelab, but it’d only lower the cost of each mini PC with 32 GB of RAM from $195 to $180.

Conclusion

I could write twice as many words about how pleased I am with this Ryzen 3550H mini PC from Minisforum, but it won’t do you any good. This is an older model that you won’t likely be able to buy, and that bums me out!

That said, you CAN still buy a Beelink or Trigkey mini PC with a Ryzen 5560U or Ryzen 5700U, and those models are priced quite aggressively. They both have more CPU and GPU chooch than my Ryzen 3550H, but they are missing the 2.5-gigabit Ethernet. That might be just fine for your use case, and you can add 2.5-gigabit Ethernet for about $7. My suspicion is that the 5560U and 5700U would both idle just as well as my refurbished Minisforum PC because my Ryzen 5700U laptop uses 5 or 6 watts at idle, and that includes the extra power for the screen.

What do you think? Did I get a good deal on my UM350 mini PC? Do you own one, and are you happy with it? Do you think I need to grab a Ryzen 5560U mini PC to test its power efficiency? Let me know in the comments, or join the Butter, What?! Discord community to tell us about your experience or see what we are up to with out homelab mini PCs!

I Bought The Cheapest 2.5-Gigabit USB Ethernet Adapters And They Are Awesome!

| Comments

I very nearly typed “so you don’t have to” as the end of this blog post’s title, but that wouldn’t be the least bit accurate! I bought these because I posted a link to a deal for a Sabrent 2.5-gigabit USB Ethernet adapter for $20 on our Discord server, and someone piped up and said they buy theirs from Aliexpress because the cheap ones over there use the same Realtek R8169 Ethernet chip. I fully expected these inexpensive network dongles to work great!

I now have two mini PCs in my homelab with 2.5-gigabit Ethernet ports, so it feels like it is going to be time to start ordering some 2.5-gigabit switches. I figured I could order a couple of 2.5-gigabit dongles to upgrade some other machines around the house, and I could also use those dongles to make sure that the Cat 5e cable that Brian and I pulled through this house a decade ago is up to the task of pushing faster speeds from my homelab on the opposite side of the house to my home office!

Aliexpress 2.5 Gigabit Ethernet

I also don’t know that I literally chose the cheapest dongles on Aliexpress. Some cost more but had free shipping. Others never had free shipping. Some vendors had free shipping over $10. I figured that last one would be where I’d get a deal, so I bought a USB-A and USB-C dongle from the same store for a total of about $14 for the pair.

Oddly enough, these are the most premium-feeling USB network adapters I have ever owned. My 1-gigabit Ethernet dongle in my laptop bag is all plastic and weighs 20 grams. These new dongles are in an aluminum shell, and they weigh over 30 grams each!

Why am I excited about USB network adapters? Aren’t PCIe cards better?!

The best bang for the buck in mini PC gear for your homelab cluster will have DDR4 memory and almost always have 1-gigabit Ethernet ports. Part of the reason the older DDR4 mini PCs are such a good value is because large DDR5 SO-DIMMs cost 40% more. That isn’t a big difference if you’re only buying one mini PC or if you aren’t maxing out the RAM, but it can add up to a sizable amount of cash if you’re building a small cluster.

Not only that, but some of us already have mini PCs in our homelab that only have gigabit Ethernet. These $7 dongles are a fantastic way to turbocharge our older mini PCs, and they are such an inexpensive way to add 2.5-gigabit Ethernet without paying an extra $80 to $120 for a more expensive mini PC.

I now have two mini PCs in my homelab with built-in 2.5gbe ports. The third Celeron N100 mini PC in my cluster only has 1gbe. I will definitely be adding one of these $7 dongles to that $143 mini PC once I get around to upgrading my network cupboard to 2.5-gigabit Ethernet!

The cheap 2.5-gigabit dongles passed their first test without any hiccups!

I plugged the USB-A dongle into my workstation, then I plugged the USB-C dongle into my Minisforum UM350 mini PC, and I connected them up with one of my new 10’ flat-pack Cat 6 cables.

I have been a fan of flat Ethernet cables for many years, but I haven’t bought any in ages, and I needed a reasonably long cable for my network toolkit. The cables I decided to try were excited to tell me that they were Cat 6 cables at Cat 5e prices, so I was a little skeptical. Seeing them move data via iperf at 2.36 gigabits per second made me feel better about my purchase!

Aliexpress 2.5 Gigabit Ethernet

There isn’t much to say. The kernel modules automatically loaded on both my Ubuntu workstation and my Proxmox mini PC. Pings were fast, and throughput was right where it should be.

I would call that a successful first test.

How about testing the Cat 5e in my walls?!

Brian and I ran Cat 5e to every room in this house about five years before I moved in. I bet Brian wrote down which ports on the patch panel lead to each room, but I don’t have that document. I was smart enough to make a note of some of the important ports when I was setting things up, so I knew that my office was on port 13 on the 48-port patch panel.

I plugged one of the 2.5-gigabit USB dongles into my laptop and connected my laptop directly to the RJ-45 jack on my office’s wall using one of those 10’ flat-pack Cat 6 cables.

Then I walked across the house with a second 10’ flat-pack cable and plugged one of the extra 2.5-gigabit Ethernet ports on my router-style mini PC Proxmox server into port 13 on the patch panel.

I configured each of those network interfaces with new IP addresses on an unused subnet, and then I ran my usual iperf tests. I am not surprised to report that I was 2.36 gigabits per second in both directions. Huzzah!

It was nice to see my Realtek R8169 USB adapter communicating with an Intel i226-V chipset, and it was also great to see that adding a second inexpensive 10’ flat-pack cable to the connection didn’t degrade my signal.

Will the cheap 2.5-gigabit Ethernet adapters be stable over the long term?

I put both 2.5-gigabit adapters away after my tests were completed. That is kind of a bummer because I definitely want to make sure they continue to work for weeks, months, and years.

I am pondering which Mokerlink 2.5-gigabit switches I need to buy, and I don’t have much use for extra 2.5-gigabit network interfaces until I order and install a new switch in both my network cupboard and my home office. That work is at least a few weeks away.

We have several people on our Discord server who have had good luck with their R8169 USB adapters, and Brian Moses tells me he had his homelab server connected with an R8169 USB dongle for a few months. I don’t expect to see any long-term problems once I put these into service, but I will definitely report back with anything I see!

What’s next?

It is a good sign that the cabling in my walls is in good enough shape to run at 2.5 gigabits per second, but the Mokerlink 2.5-gigabit switches I want to put in my network cupboard and home office have 10-gigabit SFP+ ports. I do not have proof that my wiring will get me that far!

The next step is definitely to buy a pair of Mokerlink switches, and I will definitely shop around for 10-gigabit modules that actually support 2.5-gigabit and 5-gigabit Ethernet. My hope is that they will negotiate down if my office can’t support a full 10 gigabit.

Want to follow along on this journey? We’re building a homelab and DIY NAS community on the *Butter, What?! Discord server where we share tips, tricks, and troubleshoot issues. Swing by, join the conversation, and share your homelab setup with us! I’m also curious to hear your thoughts. What kind of network gear are you using in your own setups? Are you using inexpensive USB 2.5-gigabit Ethernet adapters? How are they working out for you? Are you using the Mokerlink switches that I am currently shopping for? Let me know how things are working out for you in the comments below!