Da ich demnächst neue Hardware testen möchte, hier ein Vorschlag für die Domains-Seeds. Wenn das in Ordnung geht, würde ich die Liste per PR einreichen.
Ich gehe schlafen. Die ALFA N2 läuft mit der Experimentalversion. Die Mesh-VPN-Config muss ich mir noch einmal ansehen, das fehlte im Konfigurationswizard.
32 bytes of random data, encoded in hexadecimal, used to seed other random values specific to the mesh domain. It must be the same for all nodes of one mesh, but should be different for firmwares that are not supposed to mesh with each other.
The recommended way to generate a value for a new site is:
echo $(hexdump -v -n 32 -e '1/1 "%02x"' </dev/urandom)
Dementsprechend sollten wir den vorgeschlagenen Weg verwenden und so die Domain-Seeds generieren, ansonsten könnten wir Probleme bekommen.
Der Domain-Seed dient wiederum als Seed für domänenspezifische Werte, die auf einen zufälligen Domain-Seed angewiesen sind. Wenn der Domain-Seed nicht zufällig ist, sind es die davon abgeleiteten Werte auch nicht mehr. Für eine genaue technische Erklärung kann ich auch noch mal nachfragen, Neoraider hat aber im IRC vor einiger Zeit ausdrücklich davor gewarnt, den Domain Seed nach irgendeinem Muster selbst festzulegen. Daran sollten wir uns halten.
Meine Vermutung ist, dass es bei geringer Entropie bzw. geringen Differenzen zwischen den Domain-Seeds zu Kollisionen zwischen Domänen kommen kann, weil diese die gleichen domänenspezifischen Werte zugewiesen bekommen haben.
Der Domain Seed wird im gesamten Gluon Code 2 mal verwendet. Einmal im Site check wo geprüft wird ob eine Seed angegeben wurde und einmal hier:
und wie du siehst wird das ganze da nochmal mit diversen Werten verkettet und md5 gehasht was bedeutet das eine Kollision wohl ehr unwahrscheinlich ist.
Wenn man davon abweicht, sollte man doch verstehen, wieso das empfohlen wird sowie begründen können, warum davon abgewichen wird und weshalb das sinnvoll ist. Oder nicht?
vxlan ist zur Zeit offenbar die einzige Stelle, an welcher der Domain-Seed als Seed genutzt wird, das stimmt. Es ist aber nicht ausgeschlossen, wass wir vxlan in Zukunft verwenden. Vorsicht ist besser als Nachsicht.
Ich finde die Diskussion nicht überflüssig, wenn Neoraider als Hauptentwickler von Gluon davor gewarnt hat, den Domain-Seed nach irgendeinem Muster selbst festzulegen. Ich habe ihn jetzt noch mal nach dem Grund gefragt.
Wir bauen ein offenes Netz. Der Domainseed steht offen in der site.conf. Wo brauchen wir hier Entropie? Es ist ja nicht so, als ob man sich damit per SSH anmelden kann .
<neoraider> Handle: there is no global database of domain seeds. Just like for ULAs, the best way to ensure uniqueness is to maximize entropy
Ich finde nicht, dass wir das einfach ignorieren sollten, nur weil die Domain-Seeds dann in irgendeiner Form schöner aussehen. Die muss man nicht auswendig irgendwo eintippen können.
Edit: Wenn ich so darüber nachdenke, dann ist es sogar sinnvoll, wenn man den Domain-Seed nicht abtippen kann. Vertippt man sich sonst einmal bei den letzten beiden Stellen, hat man mit Pech zwei Domains gebridged. Noch nutzen wir vxlan nicht, aber es wird in Zukunft der Standard werden.
Dieser »seed« soll, AFAICS, sicherstellen, wie @MPW schon schrieb, daß der Umweg über VXLAN auch wirklich eine Netzkopplung ausschließt. Wenn jeder das mit “0000…1”, “0000…2” usw. initialisiert, geht das schief, daher der Tipp, daß per »Zufallszahl« zu machen. Auch der explizite Vergleich mit ULA zeigt für mich in diese Richtung (ULA ist toll, aber mit fdfd:fdfd:fdfd… oder 4242:4242:4242… handelt man sich eher Probleme ein als mit einer reinen Zufallszahl).