Sorry for being such a noob. My networking is not very strong, thought I’d ask the fine folks here.

Let’s say I have a Linux box working as a router and a dumb switch (I.e. L2 only). I have 2 PCs that I would like to keep separated and not let them talk to each other.

Can I plug these two PCs into the switch, configure their interfaces with IPs from different subnets, and configure the relevant sub-interfaces and ACLs (to prevent inter-subnet communication through the router) on the Linux router?

What I’m asking is; do I really need VLANs? I do need to segregate networks but I do not trust the operating systems running on these switches which can do L3 routing.

If you have a better solution than what I described which can scale with the number of computers, please let me know. Unfortunately, networking below L3 is still fuzzy in my head.

Thanks!

  • nottelling@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    13 days ago

    What you are asking will work. That’s the whole point of subnets. No you don’t need a VLAN to segregate traffic. It can be helpful for things like broadcast control.

    However, you used the word “trust” which means that this is a security concern. If you are subnetting because of trust, then yes you absolutely do need to use VLANs.

      • nottelling@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        12 days ago

        A VLAN is (theoretically) equivalent to a physically separated layer 2 domain. The only way for machines to communicate between vlans is via a gateway interface.

        If you don’t trust the operating system, then you don’t trust that it won’t change it’s IP/subnet to just hop onto the other network. Or even send packets with the other network’s header and spoof packets onto the other subnets.

        It’s trivially easy to malform broadcast traffic and hop subnets, or to use various arp table attacks to trick the switching device. If you need to segregate traffic, you need a VLAN.

        Edit: Should probably note that simply VLAN tagging from the endpoints on a trunk port isn’t any better than subnetting, since an untrusted machine can just tag packets however it wants. You need to use an 802.1q aware switch and gateway to use VLANs effectively.

        • marauding_gibberish142@lemmy.dbzer0.comOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          12 days ago

          Thank you for the great comment.

          This line cleared it up for me:

          802.1q aware switch and gateway to use VLANs effectively.

          It is indeed as you say. VLANs on a trunk port wouldn’t really work for security either. This is making me reconsider my entire networking infrastructure since when I started I wasn’t very invested in such things. Thanks for giving me material to think about

  • Lettuce eat lettuce@lemmy.ml
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    13 days ago

    Have you looked into Tailscale or an equivalent solution like Netbird?

    You could set up a tailnet, create unique tags for each machine, add both machines to the tailnet, and then set up each machine’s network interface to only go through the tailnet.

    Then you just use Tailscale’s ACLs with the tags to isolate those machines, making sure they can only talk to whatever central device(s) or services you want them to, but also stopping them from talking to or even seeing each other.

    • marauding_gibberish142@lemmy.dbzer0.comOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      13 days ago

      I never considered tailscale for my LAN, but it’s certainly an intriguing idea. I suppose running Headscale as a VM on my router isn’t that difficult. Thank you, I will think about it a bit more

    • marauding_gibberish142@lemmy.dbzer0.comOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      13 days ago

      I’d either have to do it in the router (which would need a lot of PCIe network cards which can get expensive + difficult to accommodate enough physical PCIe lanes on consumer hardware) or run it on a switch running a proprietary OS that I can’t control and don’t know what it’s doing underneath.

      • Clearwater@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        13 days ago

        As a heads up, almost all OpenWRT routers function as managed switches with vlan capabilities. Not truly all, but a very good number.

      • kylian0087@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        2
        arrow-down
        1
        ·
        edit-2
        13 days ago

        Can you elaborate why you think you need much more PCIe network cards? Technically you can do with 1 single LAN port with all your VLANs.

        You configure the VLANs on the router then make a single trunk port to a switch. then have that switch divide the VLANs on the ports you desire. this can be a L2 switch.

        • marauding_gibberish142@lemmy.dbzer0.comOP
          link
          fedilink
          English
          arrow-up
          2
          ·
          edit-2
          13 days ago

          Thanks, but to make that work I would need a managed switch running a proprietary OS can I cannot trust. If there was a switch running a FOSS OS then I would use that

          • nottelling@lemmy.world
            link
            fedilink
            English
            arrow-up
            2
            ·
            13 days ago

            What in the world is “a proprietary OS I cannot trust”. What’s your actual threat model? Have you actually run any risk analyses or code audits against these OSes vs. (i assume) Linux to know for sure that you can trust any give FOSS OS? You do realize there’s still an OS on your dumb switch, right?

            This is a silly reason to not learn to manage your networking hardware.

            • marauding_gibberish142@lemmy.dbzer0.comOP
              link
              fedilink
              English
              arrow-up
              1
              ·
              edit-2
              12 days ago

              Thank you for the comment.

              My threat model in brief is considering an attack on my internal networking infrastructure. Yes, I know that the argument of “if they’re in your network you have other problems to worry about” is valid, and I’m working on it.

              I’m educating myself about Lynis, AuditD and OpenVAS, and I tend to use OpenSCAP when I can to harden the OS I use. I’ve recently started using OpenBSD and will use auditing tools on it too. I still need to figure out how to audit and possibly harden the Qubes OS base but that will come later.

              Yes, I do realise that the dumb switch has an OS. And you raise a good point. I’m starting to feel uneasy with my existing netgear dumb switches too. Thank you for raising this, I think a whitebox router build might be the only way.

              I’d like to mention that I would use VLANs if I could use them on hardware and software I feel comfortable with. But I cannot. Whitebox build it is, I suppose.

              Thanks again for the comment and I’d like to hear any suggestions you have.

  • pHr34kY@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    12 days ago

    I’ve got 3 subnets on an L2 switch. You will have clashes over DHCP if you have both broadcasting on the same L2 switch without VLANs.

    My guest wifi is on a vlan, but the switch is L2 and it’s fine. The router has separate physical ports for each subnet. The “guest” subnet is only accessible over Wifi, and the access points are configured so that the guest VLAN is mapped to a separate SSID.

    My third subnet has no VLAN. It’s IPv6-only and all devices have a static IP address. It’s only used for security cameras. I did this so they don’t transmit on the same physical cables as my primary subnet. It is otherwise insecure, as I can join the subnet by simply assigning myself a static address in the same range.

    Note: There is a bug in Windows where it will join an IPv6 subnet on a different VLAN. I had to tweak my DHCPv6 / radvd so that Windows would ignore it. Yes, Windows is this dumb.

  • ZeroOne@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    12 days ago

    You don’t have to apologize for being a noob, we were all once noobs (& we still are to some extent)

  • non_burglar@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    arrow-down
    1
    ·
    13 days ago

    For simple cases you might be able to use 802.1x authentication if “trust” is the issue. This doesnt scale well as a solution on a larger network though.

      • non_burglar@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        13 days ago

        https://en.m.wikipedia.org/wiki/IEEE_802.1X

        802.1x are a set of protocols that allow port access to be locked to specific devices, which would preclude your need for multiple subnets. You would likely need a few extra physical ports on your white box router, the unmanaged switch could later become overwhelmed passing traffic in a more complicated setup, and you would still need to keep trusted and untrusted traffic separate at the gateway subnet.

        Your use case is exactly why vlans were invented.

        However, I suspect from your other answers that you are actually looking for an open source managed switch so your entire networking stack is auditable.

        There are a few solutions like opx, but hardware supporting opx is prohibitively expensive and it is almost always cheaper to build a beige box and use Linux or get a 2nd hand supported device and use openwrt.

        • marauding_gibberish142@lemmy.dbzer0.comOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          13 days ago

          Ah, is that something like sticky ports?

          Indeed, I would like to run a switch with a FOSS OS, and I don’t see any viable way of doing that. Unfortunate, but whitebox router + switch it is then

          • non_burglar@lemmy.world
            link
            fedilink
            English
            arrow-up
            1
            ·
            13 days ago

            The effect is similar to sticky ports, but sticky ports is just filtering based on Mac address, which can be spoofed.

            802.11x allows traffic from a device only if they also have the correct EAP certificate.