Kryptomena
Obsah
Virtcoint
Provoz
GPU Model | Hashrate (Mh/s) | Power Consumption (W) |
---|---|---|
GTX 1050ti | ~15 Mh/s | 70 watts |
GTX 1060 3gb | ~22 Mh/s | 100 - 120 watts |
GTX 1060 6gb | ~27 Mh/s | 100 - 120 watts |
GTX 1070 | ~ 35 - 40 Mh/s | 150 watts |
GTX 1070ti | ~ 40 - 45 Mh/s | 180 - 250 watts |
GTX 1080 | ~ 45 - 50 Mh/s | 250 watts |
TCP porty
Používané porty:
- TCP 9171 # Netvork 1 pro Virtcoint p2pool - pro těžaře
- TCP 9346 # Netvork 1 pro Virtcoint p2pool - pro uzly
- TCP 9181 # Netvork 2 pro Virtcoint p2pool - pro těžaře
- TCP 9347 # Netvork 2 pro Virtcoint p2pool - pro uzly
- TCP 5888 # JSON-RPC server Vertcointu
- TCP 5889 # Vertcoin port pro připojení
Nastavení iptables:
sudo iptables -I INPUT 1 -j ACCEPT -p tcp --dport 9171 # Vertcoin p2pool first network - for the miner sudo iptables -I INPUT 1 -j ACCEPT -p tcp --dport 9181 # Vertcoin p2pool second network - for the miner sudo iptables -I INPUT 1 -j ACCEPT -p tcp --dport 9346 # Vertcoin p2pool first network - for the nodes sudo iptables -I INPUT 1 -j ACCEPT -p tcp --dport 9347 # Vertcoin p2pool second network - for the nodes sudo iptables -I INPUT 1 -j ACCEPT -p tcp --dport 5889 # Vertcoin sudo ip6tables -I INPUT 1 -j ACCEPT -p tcp --dport 9171 # Vertcoin p2pool first network - for the miner sudo ip6tables -I INPUT 1 -j ACCEPT -p tcp --dport 9181 # Vertcoin p2pool second network - for the miner sudo ip6tables -I INPUT 1 -j ACCEPT -p tcp --dport 9346 # Vertcoin p2pool first network - for the nodes sudo ip6tables -I INPUT 1 -j ACCEPT -p tcp --dport 9347 # Vertcoin p2pool second network - for the nodes sudo ip6tables -I INPUT 1 -j ACCEPT -p tcp --dport 5889 # Vertcoin
Nastavení nodu
Možnosti | |
---|---|
-version | Vypsat verzi a skončit |
-alertnotify=<cmd> | Spustit příkaz, když přijde relevantní upozornění nebo když dojde k opravdu dlouhému rozštěpení řetezce bloků (%s se v příkazu nahradí zprávou) |
-blocknotify=<cmd> | Spustit příkaz, když se změní nejlepší blok (%s se v příkazu nahradí hashem bloku) |
-assumevalid=<hex> | Pokud je tenhle blok v řetězci, tak předpokládat, že on i jeho následníci jsou platní, a potenciálně přeskočit ověřování jejich skriptů (0 = ověřovat vše, výchozí: b021f8f8d6abe508219975614fd55692e8e18e8857d821b76d85a551b87140e2, testnet: 69ab56f74d75afa90b65b1fe10df8adaf2769e2ba64df1e1dc99c4d6717e1a2a) |
-conf=<file> | Konfigurační soubor (výchozí: vertcoin.conf) |
-datadir=<dir> | Adresář pro data |
-dbcache=<n> | Nastavit velikost databázové vyrovnávací paměti v megabajtech (4 až 16384, výchozí: 450) |
-loadblock=<file> | Importovat při startu bloky z externího souboru blk000??.dat |
-maxorphantx=<n> | Držet v paměti nejvýše <n> nespojitelných transakcí (výchozí: 100) |
-maxmempool=<n> | Udržovat zasobník transakcí menší než <n> megabajtů (výchozí: 300) |
-mempoolexpiry=<n> | Nedržet transakce v zásobníku déle než <n> hodin (výchozí: 336) |
-persistmempool | Whether to save the mempool on shutdown and load on restart (default: 1) |
-blockreconstructionextratxn=<n> | Počet extra transakcí, které se mají držet v paměti pro účely rekonstrukce kompaktních bloků (výchozí: 100) |
-par=<n> | Nastavení počtu vláken pro verifikaci skriptů (-8 až 16, 0 = automaticky, <0 = nechat daný počet jader volný, výchozí: 0) |
-prune=<n> | Omezit nároky na úložný prostor prořezáváním (mazáním) starých bloků. Tato volba také umožní použít RPC volání pruneblockchain ke smazání konkrétních bloků a dále automatické prořezávání starých bloků, pokud je zadána cílová velikost souborů s bloky v MiB. Tento režim není slučitelný s -txindex ani -rescan. Upozornění: opětovná změna tohoto nastavení bude vyžadovat nové stažení celého řetězce bloků. (výchozí: 0 = bloky neprořezávat, 1 = povolit ruční prořezávání skrze RPC, >550 = automatické prořezávání bloků tak, aby byla udržena cílová velikost souborů s bloky, v MiB) |
-reindex-chainstate | Znovu vytvořit stav řetězce bloků z aktuálně indexovaných bloků |
-reindex | Při startu znovu vytvořit index řetězce bloků z aktuálních blk*.dat souborů |
-txindex | Spravovat úplný index transakcí, který je využíván rpc voláním getrawtransaction (výchozí: 0) |
Možnosti připojení: | |
-addnode=<ip> | Add a node to connect to and attempt to keep the connection open (see the `addnode` RPC command help for more info) |
-banscore=<n> | Práh pro odpojování zlobivých protějšků (výchozí: 100) |
-bantime=<n> | Doba ve vteřinách, po kterou se nebudou moci zlobivé protějšky znovu připojit (výchozí: 86400) |
-bind=<addr> | Poslouchat na zadané adrese. Pro zápis IPv6 adresy použij notaci [adresa]:port |
-connect=<ip> | Connect only to the specified node(s); -connect=0 disables automatic connections (the rules for this peer are the same as for -addnode) |
-discover | Zjistit vlastní IP adresu (výchozí: 1, pokud naslouchá a není zadáno -externalip nebo -proxy) |
-dns | Povolit DNS dotazy pro -addnode (přidání uzlu), -seednode a -connect (připojení) (výchozí: 1) |
-dnsseed | Query for peer addresses via DNS lookup, if low on addresses (default: 1 unless -connect used) |
-externalip=<ip> | Udej svou veřejnou adresu |
-forcednsseed | Vždy získávat adresy dalších protějšků přes DNS (výchozí: 0) |
-listen | Accept connections from outside (default: 1 if no -proxy or -connect) |
-listenonion | Automaticky v Toru vytvářet skryté služby (výchozí: 1) |
-maxconnections=<n> | Povolit nejvýše <n> protějšků (výchozí: 125) |
-maxreceivebuffer=<n> | Maximální velikost přijímacího bufferu pro každé spojení, <n>*1000 bajtů (výchozí: 5000) |
-maxsendbuffer=<n> | Maximální velikost odesílacího bufferu pro každé spojení, <n>*1000 bajtů (výchozí: 1000) |
-maxtimeadjustment | Maximální povolené seřizování času mediánem časů protějšků. Místní vnímání času může být ovlivněno protějšky, a to dopředu nebo dozadu až o toto množství. (výchozí: 4200 vteřin) |
-onion=<ip:port> | Použít samostatnou SOCKS5 proxy ke spojení s protějšky přes skryté služby v Toru (výchozí: -proxy) |
-onlynet=<net> | Připojovat se pouze k uzlům v <net> síti (ipv4, ipv6 nebo onion) |
-permitbaremultisig | Přeposílat ne-P2SH multisig (výchozí: 1) |
-peerbloomfilters | Umožnit filtrování bloků a transakcí pomocí Bloomova filtru (výchozí: 1) |
-port=<port> | Čekat na spojení na <portu> (výchozí: 5889 nebo testnet: 15889) |
-proxy=<ip:port> | Připojit se přes SOCKS5 proxy |
-proxyrandomize | Použít náhodné údaje pro každé proxy spojení. To umožní izolovat nesouvisející datové toky v Toru (výchozí: 1) |
-seednode=<ip> | Připojit se k uzlu, získat adresy jeho protějšků a odpojit se |
-timeout=<n> | Zadej časový limit spojení v milivteřinách (minimum: 1, výchozí: 5000) |
-torcontrol=<ip>:<port> | Ovládací port Toru, je-li zapnuté onion naslouchání (výchozí: 127.0.0.1:9051) |
-torpassword=<pass> | Heslo ovládacího portu Toru (výchozí: prázdné) |
-upnp | Použít UPnP k namapování naslouchacího portu (výchozí: 0) |
-whitebind=<addr> | Obsadit zadanou adresu a vždy vítat protějšky, které se na ni připojí. Pro zápis IPv6 adresy použij notaci [adresa]:port |
-whitelist=<IP address or network> | Vždy vítat protějšky připojující se z dané IP adresy (např. 1.2.3.4) či podsítě (CIDR zápis, např. 1.2.3.0/24). Lze zadat i vícekrát. Na vždy vítané protějšky se nevztahuje DoS klatba a jejich transakce jsou vždy přeposílány, i když už třeba jsou v transakčním zásobníku, což je užitečné např. pro bránu |
-maxuploadtarget=<n> | Pokusit se udržet odchozí provoz pod stanovenou hodnotou (v MiB za 24 hodin), 0 = bez omezení (výchozí: 0) |
Možnosti peněženky: | |
-disablewallet | Nenačítat peněženku a vypnout její RPC volán |
-keypool=<n> | Nastavit zásobník klíčů na velikost <n> (výchozí: 1000) |
-fallbackfee=<amt> | Sazba poplatku (v VTC/kB), která se použije, pokud nebude k dispozici dostatek dat pro automatický odhad poplatku (výchozí: 0.0002) |
-discardfee=<amt> | The fee rate (in VTC/kB) that indicates your tolerance for discarding change by adding it to the fee (default: 0.0001). Note: An output is discarded if it is dust at this rate, but we will always discard up to the dust relay fee and a discard fee above that is limited by the fee estimate for the longest target |
-mintxfee=<amt> | Poplatky (v VTC/kB) menší než tato hodnota jsou považovány za nulové pro účely vytváření transakcí (výchozí: 0.00001) |
-paytxfee=<amt> | Poplatek (v VTC/kB), který se přidá ke každé odeslané transakci (výchozí: 0.00) |
-rescan | Přeskenovat při startu řetězec bloků na chybějící transakce tvé pěněženky |
-salvagewallet | Pokusit se při startu zachránit soukromé klíče z poškozeného souboru s klíči |
-spendzeroconfchange | Utrácet i ještě nepotvrzené drobné při posílání transakcí (výchozí: 1) |
-txconfirmtarget=<n> | Pokud paytxfee není nastaveno, platit dostatečný poplatek na to, aby začaly být transakce potvrzovány v průměru během n bloků (výchozí: 6) |
-walletrbf | Posílat transakce se zapnutým plným RBF (= replace-by-fee) (výchozí: 0) |
-upgradewallet | Převést při startu peněženku na nejnovější formát |
-wallet=<file> | Udej název souboru s peněženkou (v rámci datového adresáře) (výchozí: wallet.dat) |
-walletbroadcast | Transakce z peněženky rozesílat (výchozí: 1) |
-walletnotify=<cmd> | Spustit příkaz, když se objeví transakce týkající se peněženky (%s se v příkazu nahradí za TxID) |
-zapwallettxes=<mode> | Smazat všechny transakce peněženky a při startu obnovit pouze relevantní části řetězce bloků pomocí -rescan (1 = ukládat transakční metadata, např. majitele účtu a informace o platebním požadavku, 2 = mazat transakční metadata) |
Možnosti ZeroMQ oznamování: | (jen Win) |
-zmqpubhashblock=<address> | Zapnout oznamování hashů bloků na adrese <address> |
-zmqpubhashtx=<address> | Zapnout oznamování hashů transakcí na adrese <address> |
-zmqpubrawblock=<address> | Zapnout oznamování surových bloků na adrese <address> |
-zmqpubrawtx=<address> | Zapnout oznamování surových transakcí na adrese <address> |
Možnosti ladění/testování: | |
-uacomment=<cmt> | Připojit komentář k typu klienta |
-debug=<category> | Tisknout ladicí informace (výchozí: 0, zadání <category> je volitelné). Pokud není <category> zadána nebo je <category> = 1, bude tisknout veškeré ladicí informace. <category> může být: net, tor, mempool, http, bench, zmq, db, rpc, estimatefee, addrman, selectcoins, reindex, cmpctblock, rand, prune, proxy, mempoolrej, libevent, coindb, qt, leveldb. |
-debugexclude=<category> | Exclude debugging information for a category. Can be used in conjunction with -debug=1 to output debug logs for all categories except one or more specified categories. |
-help-debug | Zobrazit všechny možnosti ladění (užití: --help -help-debug) |
-logips | Zaznamenávat do ladicích výstupů i IP adresy (výchozí: 0) |
-logtimestamps | Připojit před ladicí výstup časové razítko (výchozí: 1) |
-maxtxfee=<amt> | Horní hranice pro celkový poplatek (v VTC) za jednu transakci z peněženky nebo jednu surovou transakci; příliš nízká hodnota může zmařit velké transakce (výchozí: 0.10) |
-printtoconsole | Posílat stopovací/ladicí informace do konzole místo do souboru debug.log |
-shrinkdebugfile | Při spuštění klienta zmenšit soubor debug.log (výchozí: 1, pokud není zadáno -debug) |
Možnosti výběru řetězce: | |
-testnet | Použít testovací řetězec |
Možnosti přeposílání: | |
-bytespersigop | Ekvivalent bajtů za každý sigop v transakcích – pro účely přeposílání a těžení (výchozí: 20) |
-datacarrier | Přeposílat a těžit transakce nesoucí data (výchozí: 1) |
-datacarriersize | Maximální velikost dat v transakcích nesoucích data, se kterou jsme ochotni je ještě přeposílat a těžit (výchozí: 83) |
-mempoolreplacement | Povolit výměnu transakcí v transakčním zásobníku (výchozí: 1) |
-minrelaytxfee=<amt> | Poplatky (v VTC/kB) menší než tato hodnota jsou považovány za nulové pro účely přeposílání, těžení a vytváření transakcí (výchozí: 0.001) |
-whitelistrelay | Přijímat přeposílané transakce obdržené od vždy vítaných protějšků, i když transakce nepřeposíláme (výchozí: 1) |
-whitelistforcerelay | Vynutit přeposílání transakcí od vždy vítaných protějšků (tj. těch na bílé listině), i když porušují místní zásady pro přeposílání (výchozí: 1) |
Možnosti vytváření bloku: | |
-blockmaxweight=<n> | Nastavit maximální váhu bloku pro BIP141 (výchozí: 3996000) |
-blockmaxsize=<n> | Set maximum BIP141 block weight to this * 4. Deprecated, use blockmaxweight |
-blockmintxfee=<amt> | Nastavit nejnižší akceptovatelný poplatek (v VTC/kB) pro transakce, které mají být zahrnuty do nových bloků. (výchozí: 0.00001) |
Možnosti RPC serveru: | |
-server | Akceptovat příkazy z příkazové řádky a přes JSON-RPC |
-rest | Přijímat veřejné REST požadavky (výchozí: 0 |
-rpcbind=<addr>[:port] | Bind to given address to listen for JSON-RPC connections. This option is ignored unless -rpcallowip is also passed. Port is optional and overrides -rpcport. Use [host]:port notation for IPv6. This option can be specified multiple times (default: 127.0.0.1 and ::1 i.e., localhost, or if -rpcallowip has been specified, 0.0.0.0 and :: i.e., all addresses) |
-rpccookiefile=<loc> | Místo pro autentizační cookie (výchozí: adresář pro data) |
-rpcuser=<user> | Uživatelské jméno pro JSON-RPC spojení |
-rpcpassword=<pw> | Heslo pro JSON-RPC spojení |
-rpcauth=<userpw> | Uživatelské jméno a zahašované heslo pro JSON-RPC spojení. Pole <userpw> má formát: <UŽIVATELSKÉ_JMÉNO>:<SŮL>$<HAŠ>. Pomocný pythonní skript je přiložen v share/rpcuser. Klient se pak už připojuje normálně pomocí páru argumentů rpcuser=<UŽIVATELSKÉ_JMÉNO>/rpcpassword=<HESLO>. Tuto volbu lze použít i vícekrát |
-rpcport=<port> | Čekat na JSON-RPC spojení na <portu> (výchozí: 5888 nebo testnet: 15888) |
-rpcallowip=<ip> | Povolit JSON-RPC spojení ze specifikovaného zdroje. Platnou hodnotou <ip> je jednotlivá IP adresa (např. 1.2.3.4), síť/maska (např. 1.2.3.4/255.255.255.0) nebo síť/CIDR (např. 1.2.3.4/24). Tuto volbu lze použít i vícekrát |
-rpcserialversion | Nastaví serializaci surových transakcí nebo bloků, jak jsou vraceny v méně povídavém módu: ne-segwit (0) nebo segwit (1) (výchozí: 1) |
-rpcthreads=<n> | Nastavení počtu vláken pro servisní RPC volání (výchozí: 4) |
Možnosti UI: | (jen Win) |
-choosedatadir | Zvolit při startu adresář pro data (výchozí: 0) |
-lang=<lang> | Nastavit jazyk, například „de_DE“ (výchozí: systémové nastavení) |
-min | Nastartovat minimalizovaně |
-rootcertificates=<file> | Nastavit kořenové SSL certifikáty pro platební požadavky (výchozí: -system-) |
-splash | Zobrazit startovací obrazovku (výchozí: 1) |
-resetguisettings | Vrátit všechny volby měněné v GUI na výchozí hodnoty |
Instalace
Jednoduchý skript pro zprovoznění celého nodu včetně P2Pool je k dispozici na https://github.com/sjexoq/vertcoin-p2pool-install.sh Bohužel je potřeba pár změn před spuštěním.
Prvně doinstalujeme potřebné balíčky a vlastní skript (root):
apt-get install ssh open-vm-tools mc net-tools htop apt-get install sudo lsb-release sudo -i cd /tmp apt-get install curl curl "https://raw.githubusercontent.com/sjexoq/vertcoin-p2pool-install.sh/master/install.sh" > install.sh
Následně spustíme instalační skript, který při prvním dotazu přerušíme Ctrl-C.
sh install.sh
Po přerušení provedeme drobné úpravy:
Upravit skript aby akceptoval aktuální verzi Debianu 9. Jinak je vyžadavaná verze 8.
sed -i "s/check_major_release = 8/check_major_release -ge 8/" /tmp/install.sh
Pro instalaci GUI rozhraní zadáme:
sed -i "s/ --without-gui//" /usr/src/vertcoin-p2pool-install.sh/debian/resources/prep.sh
Pro zachování původního web rozhraní poolu zadáme:
sed -i "s/rm -rf \/usr\/src\/p2pool-vtc\/web-static/mv -rf \/usr\/src\/p2pool-vtc\/web-static.old/" /usr/src/vertcoin-p2pool-install.sh/debian/resources/prep.sh
Drobné úpravy:
#sed -i "s/\/root\/.vertcoin\/vertcoin.conf\//\/home\/vertcoin\/vertcoin.conf/" /usr/src/vertcoin-p2pool-install.sh/debian/resources/prep.sh sed -i "s/minrelaytxfee=0.00001/minrelaytxfee=0.0001/" /usr/src/vertcoin-p2pool-install.sh/debian/resources/prep.sh
sh install.sh
Pokud vše probíhá jak má, tak jseme následně dotázáni:
- zda chceme provést instalaci (i) nebo upgrade (u)
- zda chceme omezit přístup na ssh (y)
- Maximální počet příchozích spojení na P2Pool
- Maximální počet odchozích spojení z P2Pooly
- pro jakou síť pool vytváříme 1 (>100MH/s) or 2 (<100MH/s)
- Adresu peněženky pro zasílání polatků
- Výše poplatků za těžbu na poolu v %
- Výše daru z poolu v %
Následně je spuštěna vlastní instalace.
Na konec můžeme ještě odnovit původní a doinstalovat alternativní web rozhraní pro statistiku poolu:
mv -rf /usr/src/p2pool-vtc/web-static.old /usr/src/p2pool-vtc/web-static/old cd /usr/src/p2pool-vtc/web-static git clone https://github.com/johndoe75/p2pool-node-status.git chown vertcoin:vertcoin -R /usr/src/p2pool-vtc/web-static/p2pool-node-status git clone https://github.com/hardcpp/P2PoolExtendedFrontEnd.git chown vertcoin:vertcoin -R /usr/src/p2pool-vtc/web-static/P2PoolExtendedFrontEnd cd ~
Pro spuštění poolu pro obě sítě vetcoinu (pro těžaře z menším i z větším výkonem) je potřeba po instalaci ještě uprav soubor /etc/init.d/p2pool
/sbin/runuser -l vertcoin -c '/usr/bin/screen -L -S p2pool1 -m -d /usr/bin/python /usr/src/p2pool-vtc/run_p2pool.py --max-conns 40 --outgoing-conns 8 --net vertcoin -a "adresa_peneženky" --irc-announce --p2pool-port 9346 -f 1 --give-author 1 --bitcoind-address 127.0.0.1 --bitcoind-rpc-port 5899 --bitcoind-p2p-port 5889 vertcoinuser "heslo_k_nodu"' /sbin/runuser -l vertcoin -c '/usr/bin/screen -L -S p2pool2 -m -d /usr/bin/python /usr/src/p2pool-vtc/run_p2pool.py --max-conns 40 --outgoing-conns 8 --net vertcoin2 -a "adresa_peneženky" --irc-announce --p2pool-port 9347 -f 1 --give-author 1 --bitcoind-address 127.0.0.1 --bitcoind-rpc-port 5899 --bitcoind-p2p-port 5889 vertcoinuser "heslo_k_nodu"' sleep 5 echo "p2pool network 1 started with PID of $(ps fax | grep p2pool1 | grep -v grep | head -1 | awk '{print $1}')" echo "p2pool network 2 started with PID of $(ps fax | grep p2pool2 | grep -v grep | head -1 | awk '{print $1}')"
Odkazy
Litecoin
Pro instalaci jsem zvolil samostatné téma Install Litecoin