なんかMonacoinを使ったサービス(今のところfaucetを考えている)を作ってみようかなーと思い、テスト用のネットワーク testnetを構築してみた。
(Linux環境でmonacoind/monacoin-qtがインストールされていることを前提とする)
専用ディレクトリを作りmonacoin.confを置く
testnet用のディレクトリを作成する。
$ mkdir test1 $ mkdir test2
そのあとhttps://github.com/freewil/litecoin-testnet-boxやhttps://github.com/xrobau/litecoin-testnet-boxを参考にしてtest1,test2にmonacoin.confを作っておく。
test1/monacoin.conf
testnet=1 irc=0 dnsseed=0 upnp=0 port=19100 rpcport=19101 server=1 rpcuser=admin1 rpcpassword=123
test2/monacoin.conf
testnet=1 irc=0 dnsseed=0 upnp=0 listen=0 connect=127.0.0.1:19100 port=19110 rpcport=19111 server=1 rpcuser=admin2 rpcpassword=123
起動
$ ./monacoind -datadir=test1 -daemon $ ./monacoind -datadir=test2 -daemon
とするか、GUIなら
$ ./monacoin-qt -datadir=test1 & $ ./monacoin-qt -datadir=test2 &
としてmonacoinを起動させる。
採掘
初期状態ではtestnet上にMONAが全く流通していない状況なので、
$ ./monacoind -datadir=test1 setgenerate true (GUIの場合はデバッグコンソールからsetgenerate true)
するか、
$ ./minerd --algo scrypt --url http://127.0.0.1:19101 --user admin1 --pass 123
などminerを使って採掘する必要がある。最低120ブロック以上採掘しないと有効化されないので、CPUMinerだと結構時間かかって辛いかも。この記事を書いている今でも採掘中(まだ半分も掘れていない)。
120ブロック以上採掘後はMONAを煮るなり焼くなりすればよろしい。
補足
mainnet(本番用)はウォレットアドレスが"M"から始まるが、testnetは"m"か"n"*1から始まる。
アドレス形式の確認はtestnetアドレスも考慮しておくといいかも(getinfoしてtestnet:trueであればtestnetアドレスの形式で確認するなど)。