<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>5N3 Blog</title>
<link>https://blog.fiventhree.com/</link>
<description>Projects, labs, write-ups, and training logs from 5N3.</description>
<language>en-us</language>
<atom:link href="https://blog.fiventhree.com/rss.xml" rel="self" type="application/rss+xml"/>
<item>
<title>Six layers behind \&quot;the Wi-Fi in my room isn't working\&quot;</title>
<link>https://blog.fiventhree.com/posts/gpon-olt-guest-wifi/</link>
<guid isPermaLink="true">https://blog.fiventhree.com/posts/gpon-olt-guest-wifi/</guid>
<pubDate>Sat, 05 Sep 2026 08:00:00 GMT</pubDate>
<description>A guest's one-line complaint sits on top of a GPON access platform tracking per-subscriber state across six independent layers. A near-pattern in the service numbering, trusted instead of checked, took a working room down and then explained exactly why.</description>
</item>
<item>
<title>Chasing wasted pixels: making Konsole behave like a desktop widget</title>
<link>https://blog.fiventhree.com/posts/konsole-desktop-widget/</link>
<guid isPermaLink="true">https://blog.fiventhree.com/posts/konsole-desktop-widget/</guid>
<pubDate>Thu, 03 Sep 2026 08:00:00 GMT</pubDate>
<description>btop looked cramped in a Konsole window, and the obvious suspect was the CPU box itself. A screenshot showed otherwise. Two rows of chrome above the terminal content were doing the damage, and they lived in two completely different settings dialogs.</description>
</item>
<item>
<title>Widening the same tunnel: a directory, a hypervisor console, and a redirect loop that wasn't mine to fix</title>
<link>https://blog.fiventhree.com/posts/hub-proxmox-jdownloader/</link>
<guid isPermaLink="true">https://blog.fiventhree.com/posts/hub-proxmox-jdownloader/</guid>
<pubDate>Thu, 03 Sep 2026 08:00:00 GMT</pubDate>
<description>The WireGuard bridge that reached Jellyfin got two more stops added to it, a hypervisor console and a download manager, plus a small directory page to find them from. Along the way, a routing tool that updates one table but not the other, a bind mount forgotten twice in two days, and a redirect loop that turned out to be somebody else's nginx.</description>
</item>
<item>
<title>A Fedora reference, built while moving my daily driver over</title>
<link>https://blog.fiventhree.com/posts/fedora-command-reference/</link>
<guid isPermaLink="true">https://blog.fiventhree.com/posts/fedora-command-reference/</guid>
<pubDate>Wed, 02 Sep 2026 08:00:00 GMT</pubDate>
<description>The commands worth keeping close after switching a daily-driver laptop to Fedora, from dnf5 and rollbacks to the SELinux and Btrfs gotchas that catch people who assume it behaves like the last distro they used.</description>
</item>
<item>
<title>Building a personal IT knowledge base that outlives the chat window</title>
<link>https://blog.fiventhree.com/posts/building-a-personal-it-knowledge-base/</link>
<guid isPermaLink="true">https://blog.fiventhree.com/posts/building-a-personal-it-knowledge-base/</guid>
<pubDate>Wed, 02 Sep 2026 08:00:00 GMT</pubDate>
<description>I kept solving IT problems and forgetting how. The fix wasn't a smarter AI, it was a separate Markdown repository that holds my own troubleshooting history, with a rule that the AI writes the notes but never becomes the memory.</description>
</item>
<item>
<title>Reaching the media server from anywhere: a WireGuard bridge to the VPS</title>
<link>https://blog.fiventhree.com/posts/jellyfin-wireguard-bridge/</link>
<guid isPermaLink="true">https://blog.fiventhree.com/posts/jellyfin-wireguard-bridge/</guid>
<pubDate>Wed, 02 Sep 2026 08:00:00 GMT</pubDate>
<description>The media server has no public IP and lives behind a segmented internal network. A WireGuard tunnel, reused rather than duplicated, made it reachable at a real domain. A stale Docker bind mount nearly undid it on the very first deploy.</description>
</item>
<item>
<title>yt-dlp: the downloader that understands modern streaming</title>
<link>https://blog.fiventhree.com/posts/yt-dlp-field-guide/</link>
<guid isPermaLink="true">https://blog.fiventhree.com/posts/yt-dlp-field-guide/</guid>
<pubDate>Tue, 04 Aug 2026 08:00:00 GMT</pubDate>
<description>Why a browser and a download manager choke on streams that yt-dlp handles without complaint: fragmented HLS explained, the flags that matter, parallel fragments, cookies, and how it slots into a self-hosted media stack.</description>
</item>
<item>
<title>The HP 1910 hides its own CLI: recovering and deploying a JG348A</title>
<link>https://blog.fiventhree.com/posts/hp-1910-hidden-cli-deployment/</link>
<guid isPermaLink="true">https://blog.fiventhree.com/posts/hp-1910-hidden-cli-deployment/</guid>
<pubDate>Mon, 03 Aug 2026 08:00:00 GMT</pubDate>
<description>A web-managed switch with a full Comware CLI locked behind an undocumented command. Password recovery from BootROM, unlocking the hidden shell, the legacy SSH negotiation modern clients refuse, and the hybrid-port default that silently leaves VLAN 1 on every voice port.</description>
</item>
<item>
<title>Four sites, one VPS: how fiventhree.com actually got deployed</title>
<link>https://blog.fiventhree.com/posts/deploying-four-sites-one-vps/</link>
<guid isPermaLink="true">https://blog.fiventhree.com/posts/deploying-four-sites-one-vps/</guid>
<pubDate>Thu, 30 Jul 2026 08:00:00 GMT</pubDate>
<description>The whole domain went live on a single server in one evening. Here is the topology, the order I did things in, and the four things that broke, including the one where three sites returned 404 while the fourth worked perfectly.</description>
</item>
<item>
<title>Switch field guide: Huawei and HP Aruba, side by side</title>
<link>https://blog.fiventhree.com/posts/switch-field-guide-huawei-hp/</link>
<guid isPermaLink="true">https://blog.fiventhree.com/posts/switch-field-guide-huawei-hp/</guid>
<pubDate>Tue, 28 Jul 2026 08:00:00 GMT</pubDate>
<description>The commands I actually reach for during production migrations: two CLI dialects compared task by task, a DHCP failure workflow that has never let me down, and the trunk mistake that cost me half a day.</description>
</item>
<item>
<title>The media server that taught me infrastructure</title>
<link>https://blog.fiventhree.com/posts/media-server-homelab-journey/</link>
<guid isPermaLink="true">https://blog.fiventhree.com/posts/media-server-homelab-journey/</guid>
<pubDate>Mon, 27 Jul 2026 08:00:00 GMT</pubDate>
<description>It started because the gym WiFi was too slow to stream anything. One month, one dead SAN and two rebuilds later it had taught me Linux, Docker, ZFS, virtualization, VLANs and multicast, and none of the hardware was ever mine.</description>
</item>
<item>
<title>Wireshark: Traffic Analysis (TryHackMe write-up)</title>
<link>https://blog.fiventhree.com/posts/wireshark-traffic-analysis/</link>
<guid isPermaLink="true">https://blog.fiventhree.com/posts/wireshark-traffic-analysis/</guid>
<pubDate>Mon, 27 Jul 2026 08:00:00 GMT</pubDate>
<description>Hands-on packet analysis: detecting Nmap scans, ARP poisoning, DNS/ICMP tunneling and cleartext credentials, with the exact Wireshark filters used for each.</description>
</item>
<item>
<title>Building this blog</title>
<link>https://blog.fiventhree.com/posts/building-this-blog/</link>
<guid isPermaLink="true">https://blog.fiventhree.com/posts/building-this-blog/</guid>
<pubDate>Sun, 26 Jul 2026 08:00:00 GMT</pubDate>
<description>Why this journal is a folder of markdown files and one build script, with no framework, no database and no dependencies.</description>
</item>
</channel>
</rss>
