Funktioniert --nodekey mit geth oder nur mit bootnode?

In den Optionen für geth sehe ich --nodekeyaufgelistet, aber ich kann es anscheinend nicht dazu bringen, eine Enode-URL (neu) zu generieren , wenn ein vollständiger Knoten gestartet wird. Beim Starten eines Bootnodes funktioniert dies bei mir wie erwartet.

Sollte also dieselbe Enode (neu) generiert werden,geth --nodkey=key.txt" wie ich es erwarte, oder funktioniert das nur mit ?bootnode --nodkey=key.txt

Antworten (2)

Ja geth --nodkey=key.txtwird dieselbe Enode-URL wiederholt (erneut) generieren, wie es die CLI-Optionen vorschlagen würden. Bei mir hat es aufgrund der unglücklichen Kombination eines Tippfehlers in meinem sh-Skript und einer fehlerhaften Nodekey-Datei nicht funktioniert.

https://github.com/ethereum/go-ethereum/wiki/Management-APIs#admin_nodeinfo

> admin.nodeInfo
{
  enode: "enode://44826a5d6a55f88a18298bca4773fca5749cdc3a5c9f308aa7d810e9b31123f3e7c5fba0b1d70aac5308426f47df2a128a6747040a3815cc7dd7167d03be320d@[::]:30303",
  id: "44826a5d6a55f88a18298bca4773fca5749cdc3a5c9f308aa7d810e9b31123f3e7c5fba0b1d70aac5308426f47df2a128a6747040a3815cc7dd7167d03be320d",
  ip: "::",
  listenAddr: "[::]:30303",
  name: "Geth/v1.5.0-unstable/linux/go1.6",
  ports: {
    discovery: 30303,
    listener: 30303
  },
  protocols: {
    eth: {
      difficulty: 17334254859343145000,
      genesis: "0xd4e56740f876aef8c010b86a40d5f56745a118d0906a34e69aec8c0db1cb8fa3",
      head: "0xb83f73fbe6220c111136aefd27b160bf4a34085c65ba89f24246b3162257c36a",
      network: 1
    }
  }
}

Beim Starten Ihres Knotens wird die Enode auch während des Startvorgangs gedruckt

Ich habe meine Frage umformuliert, um klarer zu sein. Ich versuche, Geth wie Bootnode zu verwenden, um eine konsistente Enode zu erhalten.
die Enode ist deterministisch und ändert sich nicht. Die IP Ihres Knotens kann sich jedoch ändern, wenn es sich um einen dynamischen Knoten handelt. Starten Sie also Ihren Geth-Knoten, den Sie als Bootknoten verwenden möchten. Speichern Sie die Enode (Kopieren funktioniert perfekt) in einer Datei. Starten Sie dann einen zweiten Knoten mit der Option--bootnodes 'enodeOfYourGethNodePreviouslySaved@itsIp:itsPort'