How To Mine Wownero With Xmrig Proxy

Started by jrswab, Jul 06, 2021, 04:56 PM

Previous topic - Next topic

jrswab

***This guide is a work in progress...***

## On the computer running Wownerod:
*I recommend using another computer on the same network as your miners. Having your wallet address and spend key in the config file on a VPS is insecure*

1. Create a server ( or use another computer ) to run Wownerod.
2. Download Xmrig-Proxy to that server/computer
3. Add `"spend-secret-key": "your-key-here",` to the pools section of the `config.json` file
    - There is no CLI parameter for the spend key at the time of writing.
    - Here is the full config.json template with added spend key section
4. Update the rest of the pools section:
 ```json
"pools": [
        {
            "coin": "wownero",
            "url": "127.0.0.1:34568",
            "user": "your wallet addres",
            "spend-secret-key": "your-key-here",
            "daemon": true
        }
],
```
5. Install tmux and run `tmux` (gnu screen works too)
6. Start Wownero: `./wownerod`
7. Open a new screen (`ctrl-b c` in tmux)
8. Start Xmrig-Proxy: `./xmrig-proxy`

## On Your Miner(s):
1. Updated the config file to point to your `xmrig-proxy`
```json
"pools": [
        {
            "url": "xmrig-proxy-ip:port-number",
            "rig-id": "rig-name"
        }
    ],
```
2.  Run Xmrig : `xmrig --spend-secret-key `

When configured correctly, your miners will receive jobs from Xmrig-Proxy and will show up in the output of xmrig.

## How to See Your Miner's Hashrate in Xmrig-Proxy
Quote from: "orklemerkle, post:25, topic:672"You can use the `custom-diff` property in your proxy's `config.json` to set a default difficulty level across all miners. (You might also want to set `"custom-diff-stats": true`.)

Alternatively, to set an individual miner's difficulty level, append `+diff` to its username (in your miner command-line or JSON). Replace `diff` with a number, minimum 100.

You'll want to adjust your difficulty a bit. Too low and you'll get too many shares, loading down your proxy's bandwidth and CPU; too high and you won't see enough shares, making your proxy's calculated hashrate imprecise. Aim for one share per miner every half-minute or so.

All that said, this should have no effect on your actual hashrate or how many blocks you get. It only affects how the proxy calculates it.

Happy Mining,
J. R.

wownerian

Edit: I got it working thanks a lot!!! Like you've experienced it's just not showing the hash rate on the xmrig proxy it just shows that the miner is connected!

wow4reedom

Thanks @jrswab for putting this guide together.  

I've followed the guide but have run in to the following error with my XMrig miner displaying:
"192168.0.47:34567 read error: 'end of file' " (see below)


Perhaps it's has to do with my setup.

**Server A:**
Internal IP 192.168.0.47, Ubuntu LTS 20.04 running Wownerod.
I've installed XMrig Proxy with URL set to 127.0.0.1:34568  (as per the guide)  
I have opened Port 34567 to this server (note the difference 34567 NOT 34568) to allow for external inbound traffic to Server A.

The Wownerod "Status" command displays the following:
    $ status
    Height: 332863/332863 (100.0%) on mainnet, not mining, net hash 40.59 MH/s, v19, 9(out)+33(in) connections, uptime 2d 5h 47m 56s

XMrig Proxy shows the following:
     * ABOUT        xmrig-proxy/6.13.0 gcc/9.3.0
     * LIBS         libuv/1.41.0 OpenSSL/1.1.1k
     * MODE         nicehash
     * POOL #1      127.0.0.1:34568 coin wownero
     * BIND #1      0.0.0.0:3333
     * BIND #2      [::]:3333
     * COMMANDS     hashrate, connections, verbose, workers
    [2021-07-07 21:13:33.678]  proxy    0.00 kH/s, shares: 0/0 +0, upstreams: 1, miners: 0 (max 0) +0/-0


**Laptop B:**
Internal IP 192.168.0.84, Windows PC running  XMrig 6.13.1 client
The configured URL to be  192.168.0.47:34568 via the Command line parameter:
xmrig.exe -o 192.168.0.47:34567  (plus added command line switches for secret spend key etc)
 
I have also tried swapping out the internal IP for external IP address, but I get the same error message: "Read Error: End of File"  

I'm a newbie to solo mining and to Ubuntu, can someone please assist with how I can resolve this 'read error' issue?
 

P.S. Sorry for the long comment/post as I wanted to share details of my network setup as there may be others with a similar setup encountering the same issue. Thanks in advance.

wownerian

In the xmrig proxy you should see bind # 1 showing port 3333 if it's still at default. So in that case for laptop B to connect to Server A I believe you'd need to put in 192.168.0.47:3333

jrswab

Quote from: "wow4reedom, post:3, topic:672""192168.0.47:34567 read error: 'end of file' "

It seems that you have the IP address entered incorrectly in the `config.json` file.

When that file is invalid json you'll see that `end of file` error.

jrswab

Quote from: "wownerian, post:4, topic:672"I believe you'd need to put in 192.168.0.47:3333

@wow4reedom, @wownerian is correct here as well.

wow4reedom

Hey @wownerian and @jrswab,
Many thanks for your help, all I did was swap out the following:
OLD: xmrig.exe -o 192.168.0.47:34567 (plus the switches for secret spend key etc...)
NEW:  xmrig.exe -o 192.168.0.47:3333 (plus the switches for secret spend key etc...)  

Viola... Success!!!  
I didn't touch the config.json file. I would never have guessed to change the port number to 3333.
 
I'm super happy that I'm able to solo mine on my Windows laptop to help secure and support this project with such an amazing helpful community. :smile:

Please confirm one last thing... If I'm having my laptop B point to Server A using port 3333, is it still  necessary to allow port forwarding to Server A via port 34567, or can I close that port?

jrswab

Quote from: "wow4reedom, post:7, topic:672"If I'm having my laptop B point to Server A using port 3333, is it still necessary to allow port forwarding to Server A via port 34567, or can I close that port?

You can close it. The only port that needs opened with the linked config example is `3333`.

Port `34567` is used for P2P connections I believe and thus you don't need to open that unless you want to have a public facing node.


233kun

I have a question.
Is it nessesary to run xmrig with `--spend-secret`?I tried running xmrig without `--spend-secret` and it ran normally

jrswab

Quote from: "233kun, post:10, topic:672"Is it nessesary to run xmrig with `--spend-secret`?

If you have it set in the pools section of the `config.json` file then you do not need to add it as a command line argument.

233kun

(post withdrawn by author, will be automatically deleted in 24 hours unless flagged)

233kun

I haven't set in the 'config.json',but it still works.i curious that could I mine WOW without setting '–spend-secret'

jrswab

What version of xmrig are you running?

wowario

make sure you are running latest version
you will need secret spend key to sign block header data otherwise the block will be rejected by the network