diff --git a/beacon_chain/conf.nim b/beacon_chain/conf.nim index c8d91d990..1fd11d48d 100644 --- a/beacon_chain/conf.nim +++ b/beacon_chain/conf.nim @@ -165,6 +165,13 @@ type "Must be one of: any, none, upnp, pmp, extip:" defaultValue: "any" }: string + enrAutoUpdate* {. + defaultValue: false + desc: "Discovery can automatically update its ENR with the IP address " & + "and UDP port as seen by other nodes it communicates with. " & + "This option allows to enable/disable this functionality" + name: "enr-auto-update" .}: bool + weakSubjectivityCheckpoint* {. desc: "Weak subjectivity checkpoint in the format block_root:epoch_number" name: "weak-subjectivity-checkpoint" }: Option[Checkpoint] diff --git a/beacon_chain/eth2_discovery.nim b/beacon_chain/eth2_discovery.nim index 98ae6edfd..8ca10268e 100644 --- a/beacon_chain/eth2_discovery.nim +++ b/beacon_chain/eth2_discovery.nim @@ -93,4 +93,5 @@ proc new*(T: type Eth2DiscoveryProtocol, loadBootstrapFile(persistentBootstrapFile, bootstrapEnrs) newProtocol(pk, ip, tcpPort, udpPort, enrFields, bootstrapEnrs, - bindIp = conf.listenAddress, rng = rng) + bindIp = conf.listenAddress, enrAutoUpdate = conf.enrAutoUpdate, + rng = rng) diff --git a/beacon_chain/nimbus_beacon_node.nim b/beacon_chain/nimbus_beacon_node.nim index 142c72f4f..07828ef93 100644 --- a/beacon_chain/nimbus_beacon_node.nim +++ b/beacon_chain/nimbus_beacon_node.nim @@ -1560,8 +1560,8 @@ programMain: 1, # sequence number networkKeys.seckey.asEthKey, some(config.bootstrapAddress), - config.bootstrapPort, - config.bootstrapPort, + some(config.bootstrapPort), + some(config.bootstrapPort), [toFieldPair("eth2", SSZ.encode(enrForkIdFromState initialState[])), toFieldPair("attnets", SSZ.encode(netMetadata.attnets))]) @@ -1781,8 +1781,8 @@ programMain: config.seqNumber, netKeys.seckey.asEthKey, some(config.ipExt), - config.tcpPortExt, - config.udpPortExt, + some(config.tcpPortExt), + some(config.udpPortExt), fieldPairs).expect("Record within size limits") echo record.toURI() diff --git a/vendor/nim-eth b/vendor/nim-eth index e25500c9f..4e58eb48c 160000 --- a/vendor/nim-eth +++ b/vendor/nim-eth @@ -1 +1 @@ -Subproject commit e25500c9f0597e91979a4c714989abd6e01f70d9 +Subproject commit 4e58eb48ce1b1a06d28802ad22215de9ff92a916