Was ist der Bootnode-Befehl in der Go-Ethereum-Dokumentation?

In den Go-Ethereum-Dokumenten wird auf einen bootnodeBefehl verwiesen:

Erstellen des Treffpunkts

Wenn alle Knoten, die Sie ausführen möchten, auf den gewünschten Genesis-Zustand initialisiert sind, müssen Sie einen Bootstrap-Knoten starten, den andere verwenden können, um sich in Ihrem Netzwerk und/oder über das Internet zu finden. Der saubere Weg besteht darin, einen dedizierten Bootnode zu konfigurieren und auszuführen:

$ bootnode --genkey=boot.key

$ bootnode --nodekey=boot.key

Wenn der Bootnode online ist, zeigt er eine Enode-URL an, die andere Knoten verwenden können, um sich mit ihm zu verbinden und Peer-Informationen auszutauschen. Stellen Sie sicher, dass Sie die angezeigten IP-Adressinformationen (höchstwahrscheinlich [::]) durch Ihre extern zugängliche IP ersetzen, um die tatsächliche enode-URL zu erhalten.

Hinweis: Sie könnten auch einen vollwertigen Geth-Knoten als Bootknoten verwenden, aber das ist der weniger empfohlene Weg.

Ist dieser Befehl Teil von go-ethereum oder ein separates Programm?

Mein Computer findet den Befehl nicht.

Ich habe versucht zu installieren über apt-get install bootnodegibt "kein solches Paket"

Ich bin mir auch nicht sicher, was das bootObjekt ist (mit keyAttribut).

Kann das jemand klären?

Warum wird nicht empfohlen, dass der Bootnode ein vollständiger Knoten ist?

Antworten (2)

Ich glaube, es war zuvor ein Teil des " Geth and Tools "-Veröffentlichungspakets, aber es ist verschwunden ... Vor ein paar Tagen wurde ein Problem gemeldet: #3703

In Bezug auf die Funktion finden Sie weiter oben auf der Seite, auf die Sie verlinkt haben, eine Beschreibung der einzelnen eigenständigen Tools (ja, es handelt sich um separate ausführbare Dateien):

Bootknoten

Abgespeckte Version unserer Ethereum-Client-Implementierung, die nur am Netzwerkknotenerkennungsprotokoll teilnimmt, aber keines der Anwendungsprotokolle auf höherer Ebene ausführt. Es kann als leichtgewichtiger Bootstrap-Knoten verwendet werden, um das Auffinden von Peers in privaten Netzwerken zu unterstützen.

danke, ich vermute, genkeyes wird ein Schlüsselpaar generiert und dann nodekeyder enodeURL ein öffentlicher Schlüssel zugewiesen?
Fast - ich denke, die Enode wird vom Schlüssel selbst abgeleitet und nodekeyist nur eine schnelle Möglichkeit, Ihrem privaten Knoten bei jedem Start eine Enode zuzuweisen. Schau mal auf github.com/ethereum/go-ethereum/wiki/…

bootnode ist zurück in der Hauptquelle von Go-Ethereum (ab heute). Wenn Sie aus dem Quellcode bauen, wird es unter build verfügbar sein und für make you used;make all

Ein Netzwerk wird mit einer genesis state. Alle Knoten, die mit demselben Bootknoten verbunden sind, sind tatsächlich mit demselben Entstehungszustand verbunden. Mit anderen Worten, wie in den offiziellen Dokumenten von Ethereum angegeben,

Ethereum - Privates Netzwerk