5

With Bitcoin and Ethereum in the news so much I started to look into peer to peer networks more. My question is, do most of the people running full Bitcoin or Ether nodes have to open port 8333 to the public internet? Or is it possible to use something like UDP hole punching to make them work without this extra step.

i.e. does the average Bitcoin enthusiast who installs the program on his work computer get a real accessible TCP ip and port other people can access? Or, it almost always involves configuring a router to say port 8333 goes to that specific computer. Same question for home computers since they have NAT systems as well these days.

1 Answers1

4

Cryptocurrency products use the following TCP ports (not UDP):

  • Bitcoin : 8333
  • Bitcoin Testnet : 18333
  • Litecoin: 9333
  • Dash: 9999
  • Dogecoin: 22556
  • Ethereum: 30303

This port is only used for full nodes which do validations of transactions and blocks for Internet clients, but are not required for non-validating lightweight clients.

Full nodes are defined as:

full node is a program that fully validates transactions and blocks. Almost all full nodes also help the network by accepting transactions and blocks from other full nodes, validating those transactions and blocks, and then relaying them to further full nodes.

Most full nodes also serve lightweight clients by allowing them to transmit their transactions to the network and by notifying them when a transaction affects their wallet. If not enough nodes perform this function, clients won’t be able to connect through the peer-to-peer network—they’ll have to use centralized services instead.

When Bitcoin Core starts, it establishes 8 outbound connections to other full nodes so it can download the latest blocks and transactions. If you just want to use your full node as a wallet, you don’t need more than these 8 connections—but if you want to support lightweight clients and other full nodes on the network, you must allow inbound connections.

Some products use Universal Plug and Play (uPnP) to automatically open this port in the router. Most (but not all) routers do support it, otherwise manual configuration of the router is required to open the port and Port Forward it to the computer on which the node is running.

The port can usually also be configured as another number for most of the products by local configuration. This requires using Port Forwarding on the router to transmit the known external port to the locally configured one on the computer.

References :

harrymc
  • 498,455