I am trying to deploy an small private Ethereum network using geth. I have a server running geth configured as a miner in my local network. In the other side I have a droplet in DigitalOcean that I want to use as a bootnode to connect future nodes to my network.

I have executed the following commands in my DigitalOcean Droplet:

 bootnode --genkey=boot.key 
 bootnode --nodekey=boot.key --addr:$(MY_PUBLICIP):30301

And I get the following output from the command instead of my public key that I need to introduce as my enode reference in the future nodes:

INFO [10-29|18:13:32.851] New local node record                    seq=1 id=785b198c28c625f8 ip=<nil> udp=0 tcp=0

I introduced a netstat command in order to find out whether or not the program is opening a port.

ether@ubuntu-s-1vcpu-2gb-ams3-01:~$ netstat -l
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 localhost:domain*              LISTEN     
tcp        0      0   *              LISTEN     
tcp6       0      0 [::]:ssh                [::]:*                 LISTEN     
udp     6912      0 localhost:domain*                          
udp        0      0 ubuntu-s-1vcpu-2g:30301*                          
raw6       0      0 [::]:ipv6-icmp          [::]:*                  7          
raw6       0      0 [::]:ipv6-icmp          [::]:*                  7          

I'm using the standard configuration of the basic droplet DigitalOcean, I would like to know if I should configure something else besides the usual compilation of the geth code.

Could please somebody tell how to interpret the output from the bootnode command? Thanks any help is welcomed.

  • I think that the correct cmd should be bootnode --nodekey=boot.key --addr $(MY_PUBLICIP):30301
    – Tony Dang
    Oct 30, 2018 at 2:27
  • @OscarRamirez I am also receiving this error as well. Any luck?
    – The Nomad
    Nov 18, 2018 at 14:50
  • I'm having the same issue. I'm trying to run 2 nodes in my local machine. Although I run admin.addPeer("...") in both nodes (to point to another node), it doesn't work
    – 0xh8h
    Dec 17, 2018 at 3:39
  • Any new on this?
    – heinob
    Mar 7, 2019 at 4:04

1 Answer 1


Use the following commands to get the bootnode address to be used in future nodes:

bootnode --genkey=boot.key
bootnode --nodekey=boot.key --writeaddress 
bootnode --nodekey=boot.key --addr:$(MY_PUBLICIP):30301

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.