-
Felix Lange authored
The new -limit option makes the filter operate on top N nodes by score. This also adds ENR attribute stats in the nodeset info command. Node set commands are now documented in README.
The devp2p command
The devp2p command line tool is a utility for low-level peer-to-peer debugging and protocol development purposes. It can do many things.
ENR Decoding
Use devp2p enrdump <base64>
to verify and display an Ethereum Node Record.
Node Key Management
The devp2p key ...
command family deals with node key files.
Run devp2p key generate mynode.key
to create a new node key in the mynode.key
file.
Run devp2p key to-enode mynode.key -ip 127.0.0.1 -tcp 30303
to create an enode:// URL
corresponding to the given node key and address information.
Maintaining DNS Discovery Node Lists
The devp2p command can create and publish DNS discovery node lists.
Run devp2p dns sign <directory>
to update the signature of a DNS discovery tree.
Run devp2p dns sync <enrtree-URL>
to download a complete DNS discovery tree.
Run devp2p dns to-cloudflare <directory>
to publish a tree to CloudFlare DNS.
Run devp2p dns to-route53 <directory>
to publish a tree to Amazon Route53.
You can find more information about these commands in the DNS Discovery Setup Guide.
Node Set Utilities
There are several commands for working with JSON node set files. These files are generated by the discovery crawlers and DNS client commands. Node sets also used as the input of the DNS deployer commands.
Run devp2p nodeset info <nodes.json>
to display statistics of a node set.
Run devp2p nodeset filter <nodes.json> <filter flags...>
to write a new, filtered node
set to standard output. The following filters are supported:
-
-limit <N>
limits the output set to N entries, taking the top N nodes by score -
-ip <CIDR>
filters nodes by IP subnet -
-min-age <duration>
filters nodes by 'first seen' time -
-eth-network <mainnet/rinkeby/goerli/ropsten>
filters nodes by "eth" ENR entry -
-les-server
filters nodes by LES server support -
-snap
filters nodes by snap protocol support