Zugang (announce) lokale Dienste via mDNS/zeroconf?

Fortsetzung der Diskussion von Gibt es Beispiele funktionierender lokaler Dienste?:

Es ist wie ich finde nicht einfach lokale Dienste auch zugänglich zu machen. Idealerweise sollte wie ich finde jeder Teilnehmer in der Lage sein einen solchen Dienst in die Welt zu setzen. Nur wie findet man die (ausser über nmap ;-))

Naiv habe ich dann mal an mDNS/zeroconf gedacht was ja in einem Gluon basierten Freifunk Netz erstmal möglich sein sollte, wenn die FW die entsprechende Multicast Adresse freigibt.

Was mich interessieren würde ob es schon Erfahrungen damit gibt und ob es technische Gründe gibt warum man das „auf keinem Fall will“.

Anmerkungen zur Diensten an sich sind vermutlich im verknüpften Thread besser aufgehoben.

Merci
vax

Man will nicht, weil es eine erhebliche Grundlast erzeugt. Zumindest solange batman-adv noch nicht effizient mit Multicast umgehen kann und fast immer Broadcasts draus werden.

Wir hatten das in Lübeck lange Zeit. Bis ca. 100 Knoten ging es noch gut, danach wurde die Last einfach zu groß (fast jedes Applegerät macht ja mit).

Sobald wir ein multicastfähiges Mesh haben, würde ich mDNS aber gerne wieder aktivieren. Die Idee passt einfach wunderbar zu Freifunk.

1 Like

mDNS/Zeroconf ist Bullshit.

Dafür wurde DNS erfunden. Du hast eine globale IPv6 Adresse. Besorge dir eine Domain vom Verramscher Deiner Wahl, denke Dir eine hübschen Namen aus, und konfiguriere für diesen einen AAAA-Ressource-Record mit Deiner globale Unicastadresse. Fertig.

Aha. Hast du ein paar Hinweise warum? Würde ich gerne verstehen.

Jein. Was das lokale Netz mit soetwas wie mDNS bekommt ist die Fähigkeit die lokalen Dienste aufzuzählen, was ich charmant finde.

Wie willst Du die einzelnen Clients (die ja alle nicht Deiner administrative Hoheit unterliegen) zwingen, Deinen mDNS-Server zu benutzen?

Welchen mDNS Server?
Mein Verständnis : zeroconf = mDNS (serverless) + DNS-SD (server).
Klar kann ich nicht den ganzem Netz „meinen DNS-SD“ aufzwingen. War auch nicht der Plan.

Sondern Multicast DNS, serverless.
Soweit ich weiss gibt es in mDNS auch Vorkehrungen die redundantes Geplapper zumindest reduzieren. Was leider gerade wie @tcatm sagt nix bringt solange batman-adv aus einem Multicast ein Broadcast macht.

Einen Server brauchst Du schon. Ich habe extra noch mal nachgeschaut:

Alle DNS-Abfragen für Namen, die auf „.local.“ enden, müssen mit UDP und IP Multicast an die mDNS-Multicast-Adresse (IPv4: 224.0.0.251, IPv6: ff02::fb, UDP-Port 5353) gesendet werden.

Du musst also einen Server betreiben, der auf diese Multicast Adressen hört. Und die Clients müssen auch diesen Server dann befragen. Einige werden das vielleicht tun, andere nicht.

Sicher hingegen ist, dass die nur im lokalen Netz in dem sich die Clients befinden überhaupt funktionieren wird. Der Server muss sich übrigends im selben Netz befinden.

Ich hab [auch nachgeschaut :slight_smile: (RFC6762)][1] und „Server“ ist da unscharf. Der mDNS Responder halt (z.b. avahi unter Linux), der läuft dann aber auf jedem Knoten (der mDNS nutzt). Also nicht „mein Server“.

Genau wie du sagts: Wenn jemand alle Webserver im lokalen Netz sucht fragt man die 224.0.0.251 nach „_http._tcp“ und kriegt antworten. :smile:

Ich suche nur nach einer Lösung für ein ein lokales Netz (ich spreche hier im Gluon Kontext).
Und selbst da könnte man per Reflector auch L3 Barrieren überbrücken. Aber das wäre erstmal nicht mein Ziel (und vielleicht auch nicht sinnvoll) - es geht ja um lokale Dienste.

Das mit dem „Bullshit“ war vielleicht etwas schnell geschossen. :wink:
[1]: rfc6762

OK, fassen wir mal kurz zusammen:

  • das Ganze funktioniert nur link local
  • die TLD .local. ist zwingend erforderlich
  • auf den Hosts ist eine mDNS Implementiereung (Client) erforderlich
  • es gibt (m.W.) im Freifunk keine Implementierung für Multicastforwarding IGMP für IPv4 bzw. MLD für IPv6. Das bedeutet, dass alle Multicasts an alle (!) Nodes geforwarded werden müssen. Das ist in einem flachen L2-Netz sehr suboptimal, siehe auch die jüngsten Vorkommnisse bei den Kollegen am Rheinufer.

Jetzt kannst Du Dir selbst aussuchen, wieviel Brauchbarkeit von mDNS noch übrigbleibt.