68. UKW-Tagung 2023

VLAN Workshop mit virtuellem Freifunk-Offloader

Hardware und Kabel sparen mit Virtualisierung und VLAN-Technik

Michael Dörr
techno.turtle@gmx.net


Was sind VLANs?

  • Mit Hilfe von virtuellen LANs (VLANs) können Netzwerke logisch voneinander separiert werden,
    obwohl physikalisch die gleiche Infrastruktur (Rechner, Kabel, Switches) verwendet wird.

  • Dazu werden Ethernet-Pakete um die VLAN-ID-Bytes verlängert: die sogenannten Tags oder VIDs.

  • Es gibt verschiedene VLAN-Versionen; aber nur Geräte die nach dem Standard 802.1q arbeiten, sind miteinander interoperabel.

  • Geräte, die sich in unterschiedlichen VLANs befinden, können sich per TCP/IP nicht direkt erreichen.
    Konnektivität kann nur über Router (bzw. Firewalls) erreicht werden.

Und was kann man damit machen?

  • Beispiel: ein NUC-Rechner hat nur eine Netzwerkschnittstelle;
    für unsere Versuche werden aber mehrere, verschiedene Netzwerke benötigt:
    • separate Netzwerke für LAN und WAN (bzw. DMZ)
    • Vermeidung von Störungen durch die verschiedenen Adressbereiche der einzelnen Freifunk-Netzwerke
    • pro Netzwerk ist immer nur ein DHCP-Server möglich

Versuchsaufbau

Vor Beginn des Versuchs wird die geplante Architektur festgelegt.
Es sollen zwei verschiedene Freifunk-Offloader in einem virtualisierten Umfeld getestet werden.

Dafür werden ein Kleinstrechner Intel-NUC, zwei VLAN-taugliche Switches und einige WLAN-Access-Points benutzt.

Insgesamt werden 5 VLANs benötigt:

Das Default Client-Netzwerk erhält die Default VID=1 und als Gateway einen OPNSense-Router.
Das DMZ-Netzwerk, mit dem die Verbindung zum Internet-Router hergestellt wird, erhält die VID=2.

Die zwei Netzwerke für die beiden Freifunk-Offloader erhalten die VIDs 11 und 21.
Das zweite Client-Netzwerk erhält die VID=31 und als Gateway einen OpenWRT-Router.

Gesamtarchitektur

Overview

VLANs im Überblick

Es gibt zwei Arten von Ports an einem VLAN-fähigen Netzwerk-Switch:

  • untagged Ports (hier: grün) verpacken empfangene Pakete mit einer VID und entpacken die VID beim Senden.
  • tagged Ports (hier: gelb) führen keine Änderung der VID bei ein- und ausgehenden Paketen durch.

Jeder Port lässt aber nur diejenigen Pakete passieren, für die er konfiguriert ist. Alle anderen Pakete werden ignoriert.

Sogenannte Trunks werden benutzt, um über ein physisches Kabel mehrere, unabhängige Datenströme zu transportieren.

Der virtuelle Switch vmbr0 innerhalb von Proxmox-VE transportiert das untagged LAN mit der VID=1,
die tagged LANs mit den VIDs 11 und 21 und das tagged DMZ-WAN mit der VID=2.

Die beiden externen VLAN-Switches werden benutzt, um das DMZ-Netzwerk mit der VID=2 untagged an den Internet-Router anzuschliessen.
Und die VLANs mit den VIDs (1, 11, 21) werden ebenfalls untagged an die drei Access-Points weitergeleitet.

VLANs

Planung der Netzwerk-Segmente

VerwendungVIDIPv4 AdressbereichGeräte
Default Client-LAN1192.168.103.0/24nuc3, opnsns-nuc3, laptop, jcg-ap
DMZ Netzwerk2192.168.178.0/24router-nfh, opnsns-nuc3, opnwrt-nuc3, ffsw-nfh, ffmuc-nfh, ffws-duew-ap
FF-sw LAN1110.210.48.0/20ffsw-nfh, edimax-ap
FF-muc LAN2110.80.200.0/21ffmuc-nfh, tplink-ap
OpenWRT LAN31192.168.223.0/24nuc3, opnwrt-nuc3, dlink-sw08, lede-ap
Trunk1 NUC3—SG1051,2,11,21,31---nuc3-vmbr0, tl-sg105-p1
Trunk2 SG105—GS1081,2,11,21,31---tl-sg105-p3, ng-gs108-p8

Hardware für den Versuchsaufbau

  • 1x Intel NUC5i3 mit OS: Proxmox PVE-8.0
    Memory: 8GB
    Disk: 500GB SSD (M.2 NVMe)
    nur 1 NIC: 1 Gbit/s

  • Internet-Router: Vorgabe des Providers

  • 2x Web managed 802.1q Switches
    5-port TP-Link SG105E
    8-port Netgear GS108E

  • 1x unmanaged Desktop Switch
    8-port D-Link DGS-1008D

  • 5x WLAN-Router / Access Points
    1x Edimax (BR-6428nS V5)
    1x NoName (JCG JHR-N805R)
    3x TP-Link TL-WR740N V4: Original-Firmware; OpenWRT-LEDE; Freifunk-Node

IP-Adressen und Hosts

VLAN-IDHostnameIPv4 Adresse
1nuc3192.168.103.99
1opnsns-nuc3192.168.103.9
1tl-sg105-a192.168.103.3
1ng-gs108-b192.168.103.4
1jcg-ap192.168.103.5
1laptopDHCP2 (192.168.103.x/24)
11ffsw-nfhDHCP4 (10.210.48.x/20)
11edimax-apDHCP4 (10.210.48.x/20)
11lx1-clientDHCP4 (10.210.48.x/20)
2router-nfh192.168.178.1
2opnsns-dmzDHCP1 (192.168.178.x/24)
2opnwrt-dmzDHCP1 (192.168.178.x/24)
2ffsw-nfh-dmzDHCP1 (192.168.178.x/24)
2ffmuc-nfh-dmzDHCP1 (192.168.178.x/24)
2ffws-duew-apDHCP1 (192.168.178.x/24)
21ffmuc-nfhDHCP5 (10.80.200.x/21)
21tplink-apDHCP5 (10.80.200.x/21)
21lx2-clientDHCP5 (10.80.200.x/21)
31opnwrt-nuc3192.168.223.9
31nuc3192.168.223.99
31lede-apDHCP3 (192.168.223.x/24)
31lx3-clientDHCP3 (192.168.223.x/24)

Details der Netzwerk-Verkabelung

Cables

via Web-Browser und interner Web-App

PortsUntaggedTaggedPVIDDevice
112,11,21,311nuc3-vmbr0
211laptop
31,11,21,311ng-gs108-p8
422ffws-ap
522rtr-nfh

vlan-sg105e


Konfiguration Netgear ProSafe+ GS108E

via Windows-Application

PortsUntaggedTaggedPVIDDevice
1, 211jcg-ap
3, 41111edimax-ap
5, 62121tplink-ap
73131dlink-sw08
81,11,21,311tl-sg105-p3

vlan-gs108e


Proxmox-Server im Überblick:

  • 1 Linux Bridge vmbr0
  • 5 Linux VLANs: u1, t2, t11, t21, t31
  • 6 VMs:
    2x Firewall
    2x Linux-Client
    2x FF-Offloader

VMs

Konfiguration NUC3: Bridge vmbr0

via Web-Browser und PVE-GUI

PortsUntaggedTaggedDeviceVM
enp0s2512,11,21,31tl-sg105-p1---
vmbr01---nuc3, opnsns
vmbr0.22---opnsns, opnwrt, ffsw-nfh, ffmuc-nfh
vmbr0.1111---ffsw-nfh, lx1-client
vmbr0.2121---ffmuc-nfh, lx2-client
vmbr0.3131---nuc3, opnwrt, lx3-client

vlan-nuc3

VLANs unter Linux: Details der Netzwerk-Konfiguration

Proxmox basiert auf Debian: das PVE-GUI erstellt die Datei /etc/network/interfaces

vlan-nuc3-if


Vorbereitung des Workshops

Hardware: Was wurde vorab gemacht?

  • Installation NUC5i3 mit Virtualisierer Proxmox PVE-7.3 (März 2023):
    https://pve.proxmox.com/wiki/Installation

    • Upload von Freifunk-Gluon- und OpenWRT-Images auf NUC3

    • Upgrade Proxmox auf neueste Version PVE-8.0 (August 2023)

  • Konfiguration der beiden VLAN-Switches:
    5-port TP-Link SG105E
    8-port Netgear ProSafe+ GS108E

  • Einrichtung der VLANs 11 & 21 & 31

  • Konfiguration der 5 WLAN-Router als Access Points (APs)

Software: Was ist bereits erledigt?

  • Installation VM OPNsense-23.1 (März 2023):
    https://www.sunnyvalley.io/docs/network-security-tutorials/opnsense-installation
    https://schulnetzkonzept.de/opnsense

    • Einrichtung DHCP und DNS auf LAN
      Einrichtung IPv6 auf WAN und LAN

    • Upgrade auf OPNsense-23.7 (August 2023)

  • Installation VM OpenWRT 22.03.3:
    siehe OpenWRT Tutorials von "Hoerli":
    Youtube-Playlist und Blog https://hoerli.net/category/openwrt/

  • Installation von Freifunk-Offloader VMs:
    Freifunk-Weinstrasse (ffsw-nfh)
    Freifunk-München (ffmuc-nfh)

  • Installation mehrerer Linux-Client-VMs
    Knoppix 9.1
    Porteus 5.5

Durchführung des Workshops

Was ist noch zu tun?

  • Tests der Freifunk-Netzwerke mit Linux-, Windows-, MacOS-Clients

  • Freifunk-Offloader VMs aktualisieren

  • weitere Freifunk-Communities testen

  • ? ? ?


Logo2


DANKE für Euer Interesse!

Dieser Vortrag kann unter https://tech.dortoka.ipv64.de/talks/ nachgelesen werden.