Monitoring mining status in pool

7 replies 471 views
Posts: 8 · Reputation: 123
#1Dec 12, 2022, 11:36 AM
I know this might sound like a total beginner question, but is there any way to check the hashes or candidate block headers that my BTC Antminer is sending to the pool? Can I just look at the traffic on my local network, or do I have to check with the pool to get this info? In the paper 'Hardening Stratum, the Bitcoin Pool Mining Protocol', they mention viewing this kind of traffic, like in Figure 4. How do you set up something like that? I'm pretty comfortable with the data side of things, but the networking part is where I struggle. I want to track the difficulty of the hashes my miners are producing, but I'd like to dig deeper than what most mining pools offer.
4 Reply Quote Share
coin_sigmaLegendary
Posts: 1275 · Reputation: 5553
#2Dec 12, 2022, 11:47 AM
I don't think you can monitor them by observing traffic. What do you want to achieve? Why not check it through the pool or access the miner's IP and go check the miner's status? Or you want to access your miner through API calls? I can't figure out what exactly your miner is but Bitmain units have API calls that you can use like requesting a summary of miner status.
2 Reply Quote Share
Posts: 14 · Reputation: 134
#3Dec 12, 2022, 03:47 PM
Stratum on its own is not secured and you can easily reconstruct the TCP going through from miner to pool server. That being said the Stratum V2 being pushed by Braiins would be encrypted while in transit but it is not a standard protocol as yet and doesn't look to be anytime soon. If you are looking at finding out shares being sent back to pool and the share diff etc, these can mostly be found on the miner's dashboard or via API and might be easier than sniffing and reconstructing packets.
3 Reply Quote Share
its_ninjaSenior Member
Posts: 269 · Reputation: 1259
#4Dec 12, 2022, 06:02 PM
The packets are simple text easy to read ... unless you firmware is hiding them by encrypting them.
4 Reply Quote Share
jake365Full Member
Posts: 214 · Reputation: 688
#5Dec 12, 2022, 09:11 PM
very easily, you simply need to place a tcp proxy inbetween your miner and the pool. i use this one all the time (https://voorloopnul.com/blog/a-python-proxy-in-less-than-100-lines-of-code/), you simply modify the host/port at the top, then the listening interface at the bottom.
3 Reply Quote Share
Posts: 22 · Reputation: 238
#6Dec 12, 2022, 09:18 PM
In my opinion that's not possible for cause they are connected through mining pools and that they cannot revealed data so easily unless they are solving unfolded data and that's the reason in future this might help you a lot. If not a tech person but still that's not fitting on my desk.
3 Reply Quote Share
Posts: 8 · Reputation: 123
#7Dec 14, 2022, 10:18 PM
following barrysty1e a proxy between the miner and pool seems to be working just fine and well. there is a multitude of stratum proxies and simple tcp proxies out there that seem able to do this
0 Reply Quote Share
colddiamondHero Member
Posts: 623 · Reputation: 2467
#8Dec 15, 2022, 06:48 AM
No need to do a proxy, wireshark https://www.wireshark.org/ works wonders you can monitor just about everything going on in your network and it can rebuild conversations between source <--> destination quite well. There are also some tools that require a bit more work that can give you more information but they do require a bit more work / knowledge of networking. Depending on the network switch you are plugged into you may have to change a few things to see all the data. -Dave
3 Reply Quote Share

Related topics