Ethereum mining proxy
Go HTML CSS JavaScript Shell
Clone or download


Ethereum mining proxy with web-interface.

Proxy feature list:

  • Rigs availability monitoring
  • Keep track of accepts, rejects, blocks stats
  • Easy detection of sick rigs
  • Daemon failover list


Building on Linux


  • go >= 1.4
  • geth

Export GOPATH:

export GOPATH=$HOME/go

Install required packages:

go get
go get
go get
go get
go get


go build -o ether-proxy main.go

Building on Windows

Follow this wiki paragraph in order to prepare your environment. Install required packages (look at Linux install guide above). Then compile:

go build -o ether-proxy.exe main.go

Building on Mac OS X

If you didn't install Brew, do it. Then install Golang:

brew install go

And follow Linux installation instructions because they are the same for OS X.


Configuration is self-describing, just copy config.example.json to config.json and specify endpoint URL and upstream URLs.

Example upstream section

"upstream": [
    "pool": true,
    "name": "",
    "url": "",
    "timeout": "10s"
    "name": "backup-geth",
    "url": "",
    "timeout": "10s"

In this example we specified mining pool as main mining target and a local geth node as backup for solo.

With "submitHashrate": true|false proxy will forward eth_submitHashrate requests to upstream.


./ether-proxy config.json


ethminer -F http://x.x.x.x:8546/miner/5/gpu-rig -G
ethminer -F http://x.x.x.x:8546/miner/0.1/cpu-rig -C

Pools that work with this proxy

Pool owners, apply for listing here. PM me for implementation details.


Currently it's solo-only solution.

  • Report block numbers
  • Report luck per rig
  • Maybe add more stats
  • Maybe add charts


Thanks to a couple of dudes who donated some Ether to me, I believe, you can do the same.


The MIT License (MIT).