Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

🌐 Networking


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
GossipFanout400

Description:

Defines the maximum number of peers the node will establish outgoing connections with. The node will connect to fewer peers if the available peer list is smaller than this value. The node does not create multiple outgoing connections to the same peer.

For further details, refer to the Network non-normative specification.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
NetAddressEmpty string00

Description:

Specifies the IP address and/or the port where the node listens for incoming connections. Leaving this field blank disables incoming connections. The value can be an IP, IP:port pair, or just a :port. The node defaults to port 4160 if no port is specified. Setting the port to :0 allows the system to assign an available port automatically.

📎 EXAMPLE

127.0.0.1:0 binds the node to any available port on localhost.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
PublicAddressEmpty string00

Description:

Defines the public address that the node advertises to other nodes for incoming connections. For mainnet Relay Nodes, this should include the full SRV host name and the publicly accessible port number. A valid entry helps prevent self-gossip and is used for identity exchange, ensuring redundant connections are de-duplicated.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
TLSCertFileEmpty string00

Description:

The certificate file used for the Relay Network if provided.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
TLSKeyFileEmpty string00

Description:

The key file used for the Relay network if provided.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
DNSBootstrapID<network>.algorand.network?backup=<network>.algorand.net&dedup=<name>.algorand-<network>.(network|net)0 (default was <network>.algorand.network)28

Description:

Specifies the names of a set of DNS SRV records that identify the set of nodes available to connect to.

For further information on the specifics of this value’s syntax, refer to DNS bootstrap reference implementation.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
FallbackDNSResolverAddressEmpty string00

Description:

Defines the fallback DNS resolver address used if the system resolver fails to retrieve SRV records.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
UseXForwardedForAddressFieldEmpty string00

Description:

Indicates whether the node should use the X-Forwarded-For HTTP Header when determining the source of a connection. Unless the proxy vendor provides another header field, it should be set to the string X-Forwarded-For.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
ForceRelayMessagesEmpty string00

Description:

Indicates whether the Network library should relay messages even if no NetAddress is specified.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
DNSSecurityFlags96 (default was 1)34

Description:

Instructs algod validating DNS responses.

Possible flag values are:

  • 0: Disabled.
  • 1: Validate SRV response.
  • 2: Validate relay names for addresses resolution.
  • 4: Validate telemetry and metrics names for addresses resolution.
  • 8: Validate TXT response.

Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
EnablePingHandlertrue66

Description:

Controls whether the gossip node responds to ping messages with a pong message.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
NetworkProtocolVersionEmpty string66

Description:

Overrides the Network protocol version (if present).


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
EnableGossipServicetrue3333

Description:

Enables the gossip network HTTP WebSockets endpoint. Its functionality depends on NetAddress, which must also be provided. This service is required to serve gossip traffic.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
EnableLedgerServicefalse77

Description:

Enables the Ledger serving service. This functionality depends on NetAddress, which must also be provided. This service is required for the Fast Catchup.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
EnableBlockServicefalse77

Description:

Controls whether to enable the block serving service. This functionality depends on NetAddress, which must also be provided. This service is required for the Fast Catchup.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
EnableGossipBlockServicetrue88

Description:

Determines whether the node serves blocks to peers over the gossip network. This service is essential for Relay Nodes and other nodes to request and receive block data, especially during Fast Catchup. For this to work, the node must have a NetAddress set, allowing it to accept incoming connections.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
DisableNetworkingfalse1616

Description:

Disables all the incoming and outgoing communication a node may perform. This is useful when we have a single-node Private Network, where no other nodes need to be communicated with. Features like Fast Catchup would be completely non-operational, rendering many node inner systems useless.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
EnableP2Pfalse3131

Description:

Enables the Peer-to-Peer Network. When both EnableP2P and EnableP2PHybridMode are set, EnableP2PHybridMode takes precedence.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
EnableP2PHybridModefalse3434

Description:

Turns on both Relay and Peer-to-Peer (Hybrid) Networking. Enabling this setting also requires PublicAddress to be set.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
P2PHybridNetAddressEmpty string3131

Description:

Sets the listen address used for P2P networking, if Hybrid Network is set.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
EnableDHTProvidersfalse3434

Description:

Enables the Distributed Hash Table (DHT). This feature allows the node to participate in a DHT-based network that advertises its available capabilities to other nodes.

For further details, refer to the Algorand P2P Network capabilities non-normative specification.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
P2PPersistPeerIDfalse2929

Description:

Writes the private key used for the node’s PeerID to the P2PPrivateKeyLocation. This is only used when EnableP2P is true. If the location flag is not specified, it uses the default location.


Parameter NameDefault ValueIntroduced in VersionLast Updated in Version
P2PPrivateKeyLocationEmpty string2929

Description:

Allows the user to specify a custom path to the private key used for the node’s PeerID. The private key provided must be an Ed25519 private key. This is only used when EnableP2P is set to true. If this parameter is not set, it uses the default location.