15

For the past few years I've been building and maintaining website/blog at www.pragmaticcoding.ca. It's mostly about programming, and more specifically it's ended up having a lot of content about JavaFX with Kotlin.

Lately, I've been spending all of my time building out my own homelab and self-hosting the services that I need. I've got a little stack of M910Q's running in a Proxmox cluster with an HP T740 running OPNSense.

Since I've been spending all - and I do mean all - of my time futzing about with this self-hosted stuff, I thought I'd try to add some content to my website to help people doing the same thing. My idea was to make it more "bloggish", talking about the tricky things I've had to master along the way as I implement various services.

But I feel like there also needs to be some foundational content. Articles that explain concepts that a lot of people, especially people without professional networking experience, find difficult to grasp. So I've started working on those.

While I think of myself as mostly a programmer, my career (now, thankfully over) had me as an "IT Guy" more often than not. I spent 24 years at the same mid-sized company with a tiny IT department and simply had to get involved with infrastructure stuff because there was nobody else to do it. It was very hands-on at first, but as we grew I was able be limit my involvement to planning and technical strategy.

Since the mid 90's, we went from self-hosted physical servers, to colocated servers, to colocated virtual servers to cloud servers and services. So I feel like I have the insight to provide help.

Anyways, this is the first article in this new section. I've seen a lot of people posting questions about how VLAN's work and I know that it's mystifying to many. So I wanted to push it out before I have the supporting framework put together on the website, and it's just sitting there as the first post that's not about programming.

My goal is to provide practical, pragmatic advice. I'm not particularly worried if some particular facet of an article isn't 100% totally correct on some obscure technical level...as long as the article gives solid practical advice that readers can act on.

Anyways, take a look and let me know if you think this kind of article might me of use to yourself or other people getting started on self-hosting.

top 11 comments
sorted by: hot top controversial new old
[-] neidu3@sh.itjust.works 2 points 3 months ago* (last edited 3 months ago)

Some VLAN-related nuggets that you may find useful for your post/blog:

  • 99% of the time when people refer to VLAN, they're talking about 802.1Q (tag-based VLANs). There are others (Such as port based), so it's up whether you want to cover those as well.
  • The word "Trunk" can mean different things, depending on vendor. In the Cisco world, it means a line/port carrying multiple VLANs. With many other vendors, such as Aruba/HPE, it refers to link aggregation which isn't necessarily relevant to VLANs
  • A lot of hardware still use VLANs even if none have been configured. For example, defaulting all switch ports to have an Access tag of 1 makes it behave like a dumb switch. This can cause issues later if you're configuring VLANs elsewhere
  • Anything non-vlany connected to a VLAN-enabled switch will have to be connected to a port with a default VLAN tag. This is usually referred to as an "Access port" or an "Untagged port"
  • "How do I configure the switch to allow units on VLAN 123 to talk to VLAN 321?". You don't. Connect both VLANs to a router which will route between them. Either connect the router to both VLANs individually and skip the tagging on the router, or you can run a single trunk between the switch and the router which carries both VLANs. The latter requires you to configure VLANs on your router accordingly.
  • It might make sense in many cases to have the VLAN tag the same as the last octet in the IPv4 subnet. Makes it easier to keep track of.
  • A PC can implement VLANs on its network port, allowing you to connect to a trunk port and access several VLANs with one cable.

Source: VLANs have been an integral part of my career for 20ish years.

[-] Decronym@lemmy.decronym.xyz 2 points 3 months ago* (last edited 2 months ago)

Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:

Fewer Letters More Letters
AP WiFi Access Point
CGNAT Carrier-Grade NAT
DNS Domain Name Service/System
IP Internet Protocol
NAT Network Address Translation
Unifi Ubiquiti WiFi hardware brand
VPN Virtual Private Network

7 acronyms in this thread; the most compressed thread commented on today has 10 acronyms.

[Thread #75 for this comm, first seen 8th Feb 2026, 20:40] [FAQ] [Full list] [Contact] [Source code]

[-] DieserTypMatthias@lemmy.ml 0 points 3 months ago

VLAN is a virtual local area network. Basically what it does is that it can segment out your network to not bring it down or crawl it to a halt when under load.

[-] FrederikNJS@piefed.zip 1 points 3 months ago

In addition people often use VLANs for security segregation. For example you might buy a bunch of cheap Chinese security cameras, but want to ensure that they can't send anything back to the manufacturer. Then you can make a VLAN with no Internet access for the cameras.

[-] SnotFlickerman@lemmy.blahaj.zone 2 points 3 months ago* (last edited 3 months ago)

I know that people often find IPv6 confusing and that's fine, but at the very least you need to explain that you're specifically talking about IPv4 IP and Subnetting configuration and that is very much how things used to be done. IPv6 is finally gaining real adoption and can make a lot of things confusing.

For example, until I got a handle of IPv6, my Android phone never had proper ad-blocking from my Pi-Holes because Google would make Android auto-configure an IPv6 DNS address that would bypass my IPv4 DNS addresses. Even if I filled every IPv4 DNS slot, my phone would still automatically make a slot for the IPv6 DNS and fill it with a Google-chosen DNS. There were two ways to fix this, and I've done both: Set up IPv6 and fill that slot with my Pi-Hole IPv6 DNS address, and/or setting up a VPN that hands out the Pi-Holes as DNS and bypasses Google's auto-configurations entirely. I ended up with both because I also use the VPN to keep ad-blocking functional on my phone while I'm away from home.

Especially in keeping with your "Zero trust" idea, you can't have rogue IPv6 traffic all over your network unless you've managed to disable IPv6 on every network interface and the traffic is just being dumped since it's disabled. (Also, personal opinion, subnetting on IPv6 is so much more elegant and straightforward than on IPv4)

Finally, you mention "bytes" (it's actually bits) and CIDR notation, but that's probably more confusing than illuminating if someone has no idea that an IPv4 address has four sets of octets (eight bits) for a 32-bit addressing scheme. You might consider expanding on how IPv4 addresses function to make that a little clearer.

[-] jjlinux@lemmy.zip 1 points 3 months ago

I've been trying to get my Unifi infrastructure force IPv6 addresses to all my devices at home (mainly laptops, PCs, phones and tablets, potentially media devices as well), but it has proven a huge challenge for me because of my ignorance on IPv6 and how it differs from v4.

For the time being, I have disabled everything v6 in my network, including my ISP provided ONT, but that leaves me with only the option of a commercial VPN when I'm not at home to try and block as much as possible (together with NextDNS for some added blocks).

I know I'm currently open on that front, and would love it if someone could tell me where I can go to try and understand v6 so that I can then make an informed implementation across the board.

Thank you beforehand.

[-] EncryptKeeper@lemmy.world 1 points 3 months ago* (last edited 3 months ago)

https://www.oreilly.com/library/view/tcp-ip-illustrated-volume/9780132808200/

The thing to know about IPV6 is that while being able to read the addresses and memorize the different kinds seem daunting, the implementation behind it is actually much simpler than IPv4 today.

The biggest mental hurdle to get over is that the way we use IPv4 today is informed by our need to work around the global lack of IPv4 addresses. With IPv6, it sorta turns back the clock to when every machine could just have a globally routable IP address. Private reserved ranges for local lans, NAT, etc aren’t necessary with IPv6

[-] jjlinux@lemmy.zip 1 points 3 months ago

Thanks so much. I'll start here. I really appreciate this.

[-] AA5B@lemmy.world 1 points 3 months ago

Step 0. Make sure your networking equipment can do vlans and subnets.

Given how much I paid for a “high end” consumer router, I just assumed …..

[-] hyperencabulator@lemmy.today 1 points 2 months ago

ASUS will charge you an arm an a leg for a 'premium' consumer router but will not handle VLAN traffic appropriately. And if you are betting on Open-WRT to save your bacon it's not a great bet.

[-] melroy@kbin.melroy.org 1 points 3 months ago

Small advice: would be nice if there was a dark mode, so I can read it at night. (without flash bang)

this post was submitted on 08 Feb 2026
15 points (94.1% liked)

Selfhosted

59651 readers
371 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

  7. No low-effort posts. This is subjective and will largely be determined by the community member reports.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 3 years ago
MODERATORS