Skip to content

Instantly share code, notes, and snippets.

  • Grundsituation:
  • Es gibt einen Community-Mesh-Prefix (z.B. /18)
  • Der Prefix ist in Blöcke von z.B. 4 Adressen unterteilt (ein /18 ergibt 4096 Blöcke a 4 Adressen)
  • Knoten multicasten periodisch Listen ihrer reservierten Blöcke, um Konflikte zu erkennen
  • Jeder Knoten hat irgendeinen Identifier (untere 8 Byte der IPv6-Adresse?)
  • Jeder Knoten unterhält eine Liste der Blöcke mit zuständigen Knoten
  • Situation: Ein Knoten braucht neue Adressen (z.B. auch nach Boot)
    1. Der Knoten wählt zufällig einen der Blöcke aus (gegebenfalls unter Ausschluss schon bekannter von anderen Knoten verwendeter Blöcke)
    1. Der Knoten fragt mehrmals per Multicast im Mesh, ob der Block schon verwendet wird