Skip to content

Networking

UDP and TCP messages

Nano is designed to use the minimum amount of computing resources possible by communicating via stateless messages that fit within a single UDP packet. UDP is used for traffic on the live network while connections via TCP are leveraged for bulk data transfer on the bootstrap network.

Network Details

Port Type Default Details
7075 UDP Enabled
  • Primary node activity port
  • Port configurable in config.json:node/peering_port
  • Binds to all adapters, unicast
  • Contents: Raw nano protocol datagrams
  • All standard ledger activity goes through this port
  • If blocked the node will not function
7075 TCP Enabled
  • Node bootstrapping server
  • Share port configuration in config.json:node/peering_port
  • Binds to all adapters, unicast
  • Contents: Raw nano protocol stream
  • Transmits the ledger to new nodes in bulk
  • If blocked other nodes will not be able retrieve the ledger from this node
7076 TCP Disabled
  • RPC server
  • Port configurable in config.json:rpc/port
  • Enable in config.json:rpc_enable
  • Binds to localhost by default for security reasons, configurable in config.json:rpc/address, unicast
  • Contents: Unencrypted HTTP requests containing JSON object bodies
  • Allows the node to be queried or controlled through HTTP requests
  • If blocked the node will not be able to be queried or controlled by HTTP

IPV4/IPV6 addressing

The system is built to only operate on IPv6 and uses IPv4-mapped IPv6 addresses to connect to IPv4 hosts.