Automatische Peer-Erkennung in einer privaten Blockchain

Gibt es eine Möglichkeit, die automatische Peer-Erkennung in einem privaten Netzwerk zu aktivieren. Soweit ich weiß, besteht die einzige Möglichkeit, sich mit Peers zu verbinden, während man auf einer privaten Blockchain arbeitet, darin, sie über einen addPeer()Befehl hinzuzufügen. Für ein privates Netzwerk mit vielen Knoten ist dieser Prozess nicht effizient. Wird irgendetwas implementiert, um automatisch alle Knoten zu verbinden, die auf demselben laufen networkidund denselben genesisBlock haben?

Bootnodes zu haben ist eine Option, aber ich muss alle neuen Knoten manuell hinzufügen. Ich suche eine einfachere Lösung.

Wie werden die Verbindungen generell in einem privaten Netzwerk verwaltet? Hat jemand an einer effizienten Lösung gearbeitet, um dieses Problem zu beheben? Irgendwelche Hinweise?

Verwandt:

Welche Peer-Discovery-Mechanismen gibt es bei Ethereum?

Peer-Erkennung funktioniert nicht im privaten Netzwerk

Antworten (2)

Nein, es gibt keine anderen Peer-Discovery-Methoden als das Ändern der Boot-Knoten.

Die IP-Adressen werden im Quellcode der Clients konfiguriert. Wenn sich die IP ändert, ändert sich die Liste des letzten Bootstrap-Knotens, mit dem sie verbunden war (die alte IP wird entfernt und wenn der Knoten erneut eine Verbindung herstellt, wird die neue IP in der Liste gespeichert).

Welche Peer-Discovery-Mechanismen gibt es bei Ethereum? erklärt viel.

In einer privaten Kette funktionierte das Erkennungsprotokoll nicht. Sie haben eine von 2 Optionen --bootnodesoder eine statische Datei, /static-nodes.jsonin der Sie Ihre Knoten speichern.

Idee: Sie könnten einen einfachen Code schreiben, der das Netzwerk scannt und die Knoten zur JSON-Datei der Knoten hinzufügt.

Lesen Sie auch: Peer-Erkennung funktioniert nicht im privaten Netzwerk