github.com/status-im/status-go@v1.1.0/BOOTNODE.md (about) 1 # Description 2 3 A "Bootnode" is a match-maker for all kinds of nodes. For example our [Mailserver](/MAILSERVER.md). It helps a new node find other nodes it can communicate with. It bootstraps connections between them. 4 5 A Bootstrap node is a very static thing and should not change its IP. Their addresses are either hardcoded into the node binary or provided via flags or config files on process start. 6 7 # Service Ports 8 9 * `30301` UDP - Ethereum [Discovery port](https://github.com/ethereum/devp2p/wiki/Discovery-Overview), should __ALWAYS__ be public. 10 # Setup methods 11 12 This document describes the two alternative ways to start a Status Bootnode: 13 14 * [Docker Compose](https://docs.docker.com/compose/) - More self-contained and portable 15 * [Systemd Service](https://www.freedesktop.org/wiki/Software/systemd/) - More local and configurable 16 17 ## Docker Compose 18 19 The simplest way is to just use: 20 ``` 21 make run-bootnode-docker 22 ``` 23 This will generate the necessary config, compose and then start the container. 24 25 For more details read the [README](_assets/compose/bootnode/README.md). 26 27 ## Systemd Service 28 29 The other way is to run the `bootnode` under `systemd`: 30 ``` 31 make run-bootnode-systemd 32 ``` 33 This will generate the necessary config, define and then start a user service. 34 Use `sudo` if you want it to be a system service. 35 36 For more details read the [README](_assets/systemd/bootnode/README.md).