Network
Connectivity
To synchronize the state, the node needs to establish connections with other nodes that have already joined the network. Ensure that port 8084
is open and set up an external address for node discovery.
Required Network Ports
Ensure the following ports are open in your firewall:
Protocol/Port | Reachability | Purpose | Description |
---|---|---|---|
TCP/8080 | Inbound | Validator/transaction interface | full nodes connect to validators to collect partial signatures for transactions |
TCP/8081 | Inbound/Outbound | Consensus interface | validator nodes send consensus blocks to each other |
UDP/8084 | Inbound/Outbound | Peer-to-peer state sync interface | nodes sync their state with each other |
TCP/8443 | Outbound | Metrics pushing | validator metrics get pushed to IOTA Foundation monitoring |
TCP/9184 | Localhost | Metrics scraping | for local monitoring only |
To run a validator successfully, it is critical that ports are open as outlined, including the specific protocol (TCP/UDP).
Network Buffer
From load testing IOTA validator networks, it has been determined that the default Linux network buffer sizes are too small. We recommend increasing them using one of the following two methods:
Option 1: With /etc/sysctl.d/
These settings can be added to a new sysctl file specifically for the iota-node
, or appended to an existing file.
Modifications made in this way will persist across system restarts.
Create a new sysctl file for the iota-node
:
$ sudo nano /etc/sysctl.d/100-iota-node.conf
Add these lines to the file, overwriting existing settings if necessary:
net.core.rmem_max = 104857600
net.core.wmem_max = 104857600
net.ipv4.tcp_rmem = 8192 262144 104857600
net.ipv4.tcp_wmem = 8192 262144 104857600
Apply the settings immediately, before the next restart:
$ sudo sysctl --system
Option 2: With sysctl Command
These modifications do not persist across system restarts. Therefore, the commands should be run each time the host restarts.
$ sudo sysctl -w net.core.wmem_max=104857600
$ sudo sysctl -w net.ipv4.tcp_rmem="8192 262144 104857600"
Verification
To verify that the system settings have indeed been updated, check the output of the following command:
$ sudo sysctl -a | egrep [rw]mem