[WLANtalk] Fwd: Auslegung PPA (Inbound-Filter vs. PPA)

Linus Lüssing linus.luessing at c0d3.blue
Do Sep 9 21:44:14 CEST 2021


Moin,

On Mon, Sep 06, 2021 at 12:07:07AM +0200, Sven Roederer wrote:
> Ich beziehe das Freifunk-interne Filten mal auf Layer3.
> Für Berlin-artige Communities ist ja Node-Node Traffic eh nur
> Layer3, aber gibt's bei Gluon da eine Begrenzung? Ist Gluon
> nicht Layer2, dass ich per MAC-adresse / IPv6-LinkLocal auch
> quer durch das Netz könnte (Hab da jetzt nur Minimalwissen)?

In Gluon mit batman-adv gibt es schon seit fast Anfang an Filter
auf Layer 2 mit ebtables. Die Netze stießen damals Layer 2 /
Multicast bedingt schnell bei ~70 Knoten an ihre Grenzen. Dafür
gab es dann das Paket gluon-ebtables-filter-multicast, welches
standardmäßig Multicast blockte und nur funktional-essentiellen
Multicast Verkehr zuließ (DHCP, ARP, ICMPv6, IGMP).


Aktueller Stand mit Gluon 2021.1.1 mit folgenden empfohlenen
Einstellungen/Paketen:

* gluon-mesh-batman-adv-15
  (+ autom. Abhängigikeit gluon-ebtables-limit-arp)
* gluon-ebtables-filter-multicast
* gluon-ebtables-filter-ra-dhcp
* gluon-ebtables-source-filter

sieht es nun Richtung Mesh wie folgt aus:

* ARP Anfragen ins Mesh sind ratenlimitiert;
  Richtung Mesh versucht batman-adv ARP Anfragen über
  seine "Distributed ARP Table" zu beantworten, die
  eine DHT / Unicast nutzt und erhaltene Antworten cached
* DHCP Anfragen werden per batman-adv's "Gateway Feature" per
  unicast an den "besten" DHCP Server verschickt
* BABEL, OSPF, RIPng und BitTorrent Local Peer Discovery
  werden ins Mesh erlaubt
* IPv6 link-local Multicast Pakete mit 16 oder weniger
  Knoten, auf denen Clients Bedarf für die entsprechende
  Gruppe angelmedet haben, wird erlaubt und durch batman-adv
  durch individuelle Unicast-Pakete verteilt
  -> insbesondere ICMPv6 Neighbor Discovery ("ARPv6")
     wird dadurch nun per Unicast statt per "broadcast
     flooding" durch das ganze Mesh abgehandelt
* ICMPv6:
  * wird generell erlaubt, außer:
  * Multicast Listener Discovery wird ins Mesh
    gefiltert und lokal abgehandelt (und per batman-adv TT
    verteilt)
  * Echo Requests und Node Information Queries mit mehr als
    16 Empfängern werden gefiltert
* IPv6 Multicast nach ff02::1 wird gefiltert

* gluon-ebtables-filter-ra-dhcp:
  * Filtert ICMPv6 Router Advertisements und DHCP Responses
    von Client Seite in das Mesh
    -> schützt davor, dass Leute durch falsche Verkabelung
       ungewollt ihren Heimnetz-Router ins Freifunk
       hängen (tritt sehr häufig auf...)
* gluon-ebtables-source-filter
  -> schützt vor falscher Verkabelung (entweder Heimnetz-Router
     oder aber auch versehentlicher Überbrückung verschiedener
     Communities oder Domänen einer Community)

Genaueres dazu hier:

* https://gluon.readthedocs.io/en/v2021.1.1/package/gluon-ebtables-filter-multicast.html
* https://gluon.readthedocs.io/en/v2021.1.1/package/gluon-ebtables-filter-ra-dhcp.html
* https://gluon.readthedocs.io/en/v2021.1.1/package/gluon-ebtables-limit-arp.html
* https://gluon.readthedocs.io/en/v2021.1.1/package/gluon-ebtables-source-filter.html
* https://www.open-mesh.org/projects/batman-adv/wiki#Features


Gruß, Linus


Mehr Informationen über die Mailingliste WLANtalk