I've noticed that if I don't open the correct ports on my computer and router, and then type status in the daemon, Monero will show 8+0 connections, meaning it has 8 connections where I'm getting data from other nodes, but no connections where nodes are gathering data from me. Basically, I understand that blocking the required ports results in no incoming connections.

My question: is it possible to mine with this 8+0 daemon? And if so, is the mining less efficient, or will the block solution be slower to spread to the P2P network, lessening the chance that my block solution will "win" and end up in the blockchain?


You are confused. The 8+0 does not mean this. The difference between the two types of connections are who initiated it: your daemon, or a peer. Data can flow in both directions, regardless of whether it was initiated locally or by a peer.

This also means that mining does not need incoming connections. It can work as well with or without.

Not allowing incoming connections makes the network fractionally more unstable. If you don't have incoming connections, there are less possible links between nodes, and the "depth" of network interconnectedness is less than it would otherwise be. Push to the extremes and you see it becomes easier to split the network in several parts, since you have less connections to sever.

As a last point, outgoing connections to not need open firewall ports. Incoming connections do. This might have been a mere typo though, but let's add this in case it's a real misconception.

  • Fixed the incoming/outgoing typo. – user4 Apr 17 '17 at 22:29
  • 1
    Actually, a good firewall will allow you to also close outgoing ports, so technically you do need an open outgoing port for a miner. However, by default most firewalls allow all outgoing traffic. – Quentin Skousen Apr 17 '17 at 22:36
  • As a side question, does the number of combined incoming/outgoing connections help your block solution to be the one that wins, given a competitive environment? – user4 Apr 18 '17 at 3:38
  • Yes, as your new block can reach more of the network a bit faster, ceteris paribus. – user36303 Apr 18 '17 at 7:20

No, you do not.

You might possibly need open ports if you are "running a node" (i.e., you try to run 'monerod'), and try to mine through that node.

If all you want to do is mining, though, I suggest you use a mining pool (see here for a list). In this case you definitely do not need any open incoming ports, since all you need is for your miner to connect to that pool (not the other way around). Check the docs on the pool, they'll point you to miners that work with their pools (and how to run those).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy