Gastnetz im AP trennen - ohne VLANs

Dieses Thema im Forum "FAQ's und How-to's" wurde erstellt von CapFloor, 15. Januar 2019.

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. CapFloor

    CapFloor Moderator

    Registriert seit:
    9. August 2010
    Beiträge:
    3.131
    Punkte für Erfolge:
    120
    #1 CapFloor, 15. Januar 2019
    Zuletzt bearbeitet: 25. Januar 2019
    Ich habe mich schon zweimal unter verschiedenen Aspekten mit der Einrichtung von Gast-Zugängen im LAN und WLAN beschäftigt (in - Gäste Netzwerk (Gäste-WLAN / -LAN) erweitern über Managed Switch - und in - Praxis WLAN-Controller / WLAN-Roaming im Heimnetz (SoHo) -).

    Der Forenuser @Paspartan hat - hier - einen sehr interessanten Ansatz zur Trennung eines Gast-WLANs vom Heimnetz innerhalb eines Access Points gefunden. Beide WLAN-/LAN-Zugänge am AP (Heim / Gast) benutzen den Router im Heimnetz für den Internet-Zugang, ohne dass Geräte aus dem Gastnetz Zugriff aufs Heimnetz erlangen können. Die einzige Voraussetzung dafür ist die Nutzung eines "ordentlichen" Routers als AP, der sich bzgl. Bridging, NAT und Firewall weitgehend konfigurieren lässt. Im verlinkten Beitrag wird dd-wrt verwendet.

    Diese Lösung ist auch deshalb so interessant, da sie viel Lehrreiches zu den Kernthemen eines Routers (Bridging, NAT und Firewall) enthält. Ich habe mich dieser Idee angenommen und sie auf einem Mikrotik RB931-2nD (3-Port Router für 22 Euro) umgesetzt. Das Modell ist sehr portabel und macht sich auch in Wohnzimmerumgebungen "klein"...

    Ganz ohne meinen "eigenen Senf" dazu zu tun geht es dann doch nicht :cool:. Ich habe die im Link beschriebene Konfiguration in drei Bereichen ergänzt:

    1. In der im Video gezeigten Konfiguration wird einer der Ethernet-Ports ins Gastnetzwerk eingebunden, so dass auch kabel-gebundene Geräte ins Gastnetzwerk verfrachtet werden können, z.B. IoT Geräte.
    2. In meiner abgewandelten Umsetzung kann im Gastnetzwerk kein anderer DNS Server als der AP selbst benutzt werden. Desweiteren sind die Geräte im Gastnetzwerk separiert voneinander - können also nicht miteinander kommunizieren.
    3. Die Konfiguration ist um Traffic-Shaping im Gastnetzwerk erweitert: Exemplarisch wird der gesamte Internet-Datenverkehr des Gastnetzwerk in der Bandbreite auf 5Mbit/s in Up- und Downstream begrenzt. Es ist ein Leichtes, einzelnen Diensten, z.B: http / ftp..., eigene Bandbreiten zuzuweisen.

      Es werden "mangle rules" zum Filtern des Verkehrs aus dem Gastnetzwerk eingesetzt. Damit wird dann das Traffic Shaping mit "simple queues" umgesetzt.

      Am Ende des Videos (7'54") habe ich versucht einzufangen, wie mein Smartphone im WLAN-Gastnetzwerk beim Speedtest auf 5Mbit/s eingebremst wird.
    4. Im Gegensatz zur im Link beschriebenen Konfiguration bekommt der AP im Heimnetz hier keine feste IP-Konfiguration, sondern holt sie sich per DHCP-Client. Damit kann ein so konfigurierte AP sein Heimnetz- und sein Gast-WLAN in verschiedenen Netzwerken zur Verfügung stellen, ohne dass Anpassungen notwendigen wären.
    Neben dem Video gibt es auch die vollständigen Konfigurationsdatei für Mikrotik Router. Die Konfiguration kann auf einem zurückgesetzten Router ohne Default-Konfiguration geladen werden. Sofern der benutzte Router die hardwaremäßigen Voraussetzung erfüllt, ist das konkrete Modell egal: Diese Konfiguration läuft unverändert auf MT Geräten für 20 Euro genauso wie auf MT Enterprise-Routern für 3.000 Euro.

    Es ist für mich nicht nachvollziehbar, warum die großen Hersteller von Consumer-Routern nicht eine ähnliche Betriebsart für ihre Geräte anbieten. Falls ein Hersteller bei seinen Router einen AP Modus unterstützt, so schalten alle diese Geräte das Gast-LAN/WLAN bei Auswahl dieses Modus' ab, obwohl sie das nicht müssten, weil ja keine VLAN Konfiguration notwendig ist.

    Wenn es Fragen zu dieser Konfiguration gibt, dann einfach einen Beitrag im entsprechenden Bereich je nach Thema (WLAN oder Mikrotik) aufmachen.

    Viel Spaß!

    - Video der Konfiguration -


    Code:
    # jan/14/2019 20:18:18 by RouterOS 6.44beta54
    #
    # model = RouterBOARD 931-2nD
    #
    
    /interface bridge
    add fast-forward=no name=br-guest
    add fast-forward=no name=br-home
    
    /interface wireless security-profiles
    set [ find default=yes ] supplicant-identity=MikroTik
    
    # Security Profile für Home-WLAN
    add authentication-types=wpa2-psk eap-methods="" management-protection=\
        allowed mode=dynamic-keys name=sec-Home supplicant-identity="" \
        wpa2-pre-shared-key=Potter
    # Security Profile für Guest-WLAN
    add authentication-types=wpa2-psk eap-methods="" management-protection=\
        allowed mode=dynamic-keys name=sec-Guest supplicant-identity="" \
        wpa2-pre-shared-key=Dumbledore
    
    /interface wireless
    set [ find default-name=wlan1 ] band=2ghz-g/n disabled=no frequency=auto \
        mode=ap-bridge name=wlan-home security-profile=sec-Home ssid=MT-Home \
        wps-mode=disabled
    add disabled=no keepalive-frames=disabled mac-address=CE:2D:E0:21:06:5F \
        master-interface=wlan-home multicast-buffering=disabled name=wlan-guest \
        security-profile=sec-Guest ssid=MT-Guest wds-cost-range=0 \
        wds-default-cost=0 wps-mode=disabled
    
    # Konfiguration für DHCP-Server im Gastnetzwerk
    /ip pool
    add name=dhcp_pool1 ranges=192.168.17.2-192.168.17.254
    /ip dhcp-server
    add address-pool=dhcp_pool1 disabled=no interface=br-guest name=dhcp1
    
    # Setup für Traffic-Shaping
    /queue tree
    add max-limit=15M name="Bandwidth (max) Guest" parent=global priority=1 \
        queue=default
    add max-limit=10M name=Download-Guest packet-mark=client-dw-pk parent=\
        "Bandwidth (max) Guest" priority=2 queue=default
    add max-limit=5M name=other-dw-Guest packet-mark=other-dw-pk parent=\
        Download-Guest priority=6 queue=default
    add max-limit=5M name=Upload-Guest packet-mark=client-up-pk parent=\
        "Bandwidth (max) Guest" priority=1 queue=default
    add max-limit=5M name=other-up-Guest packet-mark=other-up-pk parent=\
        Upload-Guest priority=2 queue=default
    
    # Konfiguration der Bridges
    /interface bridge port
    add bridge=br-home interface=ether1
    add bridge=br-home interface=wlan-home
    add bridge=br-guest interface=wlan-guest
    add bridge=br-home interface=ether2
    add bridge=br-guest interface=ether3
    
    # IP-Adresse der Guest-Bridge
    /ip address
    add address=192.168.17.1/24 interface=br-guest network=192.168.17.0
    
    # Dynamische IP-Konfiguration der Home-Bridge
    /ip dhcp-client
    add dhcp-options=hostname,clientid disabled=no interface=br-home
    /ip dhcp-server network
    add address=192.168.17.0/24 dns-server=192.168.17.1 gateway=192.168.17.1
    
    
    /ip dns
    set allow-remote-requests=yes
    
    
    # Adressliste mit alle lokalen IP-Subnetzen
    /ip firewall address-list
    add address=192.168.0.0/16 list=local
    add address=10.0.0.0/8 list=local
    add address=172.16.0.0/12 list=local
    
    /ip firewall filter
    add action=reject chain=forward comment="reject access from home to guest" \
        connection-state=new in-interface=br-home out-interface=br-guest \
        reject-with=icmp-network-unreachable
    
    add action=reject chain=forward comment="reject access from guest to home" \
        connection-state=new dst-address-list=local in-interface=br-guest \
        reject-with=icmp-network-unreachable
    
    add action=reject chain=forward comment="reject access guest to guest" \
        dst-address=192.168.17.0/24 in-interface=br-guest reject-with=\
        icmp-network-unreachable
    
    add action=reject chain=forward comment=\
        "reject DNS request to other DNS server" dst-port=53 in-interface=\
        br-guest protocol=udp reject-with=icmp-network-unreachable
    
    add action=reject chain=forward comment=\
        "reject DNS request to other DNS server" dst-port=53 in-interface=\
        br-guest protocol=tcp reject-with=icmp-network-unreachable
    
    add action=accept chain=input comment="accept DNS request" dst-port=53 \
        in-interface=br-guest protocol=tcp
    
    add action=accept chain=input comment="accept DNS request to router" \
        dst-port=53 in-interface=br-guest protocol=udp
    
    add action=reject chain=input comment="reject all access to AP from guest" \
        in-interface=br-guest reject-with=icmp-network-unreachable
    
    # Markieren von IP-Paketen fuers Traffic-Shaping
    /ip firewall mangle
    add action=mark-connection chain=forward comment=guest-dw-con in-interface=\
        br-home new-connection-mark=client-dw-con passthrough=yes
    add action=mark-packet chain=forward comment=guest-dw-pk connection-mark=\
        client-dw-con new-packet-mark=client-dw-pk passthrough=yes
    add action=mark-connection chain=prerouting comment=guest-up-con \
        in-interface=br-guest new-connection-mark=client-up-con passthrough=yes
    add action=mark-packet chain=prerouting comment=guest-up-pk connection-mark=\
        client-up-con new-packet-mark=client-up-pk passthrough=yes
    add action=mark-packet chain=forward comment=guest-other-dw-pk \
        new-packet-mark=other-dw-pk packet-mark=client-dw-pk passthrough=no
    add action=mark-packet chain=forward comment=guest-other-up-pk \
        new-packet-mark=other-up-pk packet-mark=client-up-pk passthrough=no
    
    /ip firewall nat
    add action=masquerade chain=srcnat comment="src nat on bridge home" \
        out-interface=br-home
    
     
    frank.td hat sich bedankt.
Status des Themas:
Es sind keine weiteren Antworten möglich.