エーテル坊学習2-テストチェーンの使用


Gethディレクトリディレクトリのコマンドラインで実行:geth --testnet --syncmode "fast" --rpc --rpccorsdomain "*" --rpcapi "db,eth,net,web3,personal" consoleパラメータ説明:testnet:テスト環境syncmodeであることを指定:同期方式がfastであることを指定し、正式な環境でノードを起動するとデータが同期し、データを同期する過程は非常に長く、fastモードの大きさは約74 Gであり、国内ネットワークの原因で65ブロックが残っている間に引っかかり、65ブロックの状態になることが多い.このとき現在接続されているノードの数を見ることができ、0でなければ待つしかないので、0であれば再起動して試してみることができます.基本的に正式ノードの同期は1週間程度かかります.注意:同期方式は全部で3種類あり、fast->高速モードで、創世ブロックから現在の最新ブロックまでの価値のあるデータをダウンロードし、一般的に全ノードのデータよりずっと少ないです.full->全ノードのデータを同期します.light->以前のデータを同期せず、現在のデータのみを同期し、以前のデータを自分で調べることはできず、他の全ノードでクエリーしなければなりません.だから私たちは一般的に「fast」方式を使用します.rpc:rpcサービスrpccorsdomain:rpcが受け入れるドメイン名を開きます.私たちはIPまたはドメイン名でrpcapiにアクセスすることができます.rpcが受け入れるノードを実行させる方法のクラスを開きます.一部のノードはethとweb 3の2つのインタフェースしか提供していないので、呼び出す人もいます.メソッドは成功しませんconsole:コンソール

関連コマンド:


注意:コンソールにずっと同期して情報が印刷されていることを聞くかもしれませんが、どうやってコマンドに負けますか.実は彼らは影響しないで、あなたは直接命令を出して印刷の情報を気にしないでOKです.これを見るのが面倒な場合は、Gethディレクトリの下にcmdウィンドウを新規作成してgeth attachを実行することができます.http://127.0.0.1:8545またはgeth attachhttp://localhost:8545ああ、ここで命令に負けるとずいぶん爽やかになります.
同期の進行状況を表示するには、次の手順に従います.
> eth.syncing
false

注意:同期中の場合、現在同期中のブロック数と合計ブロック数を表示してブロック数を表示します.
> eth.blockNumber
2967555

注意:fastモードで初めて同期が完了しなかった場合、この値はずっと0であり、上記の2つの方法でこのノードが同期済みかどうかを判断することができます.すべての方法を印刷します.
> eth
{
  accounts: [],
  blockNumber: 0,
  coinbase: undefined,
  compile: {
    lll: function(),
    serpent: function(),
    solidity: function()
  },
  defaultAccount: undefined,
  defaultBlock: "latest",
  gasPrice: 18000000000,
  hashrate: 0,
  mining: false,
  pendingTransactions: [],
  protocolVersion: "0x3f",
  syncing: {
    currentBlock: 7499,
    highestBlock: 3114232,
    knownStates: 17600,
    pulledStates: 13684,
    startingBlock: 0
  },
  call: function(),
  contract: function(abi),
  estimateGas: function(),
  filter: function(options, callback, filterCreationErrorCallback),
  getAccounts: function(callback),
  getBalance: function(),
  getBlock: function(),
  getBlockNumber: function(callback),
  getBlockTransactionCount: function(),
  getBlockUncleCount: function(),
  getCode: function(),
  getCoinbase: function(callback),
  getCompilers: function(),
  getGasPrice: function(callback),
  getHashrate: function(callback),
  getMining: function(callback),
  getPendingTransactions: function(callback),
  getProtocolVersion: function(callback),
  getRawTransaction: function(),
  getRawTransactionFromBlock: function(),
  getStorageAt: function(),
  getSyncing: function(callback),
  getTransaction: function(),
  getTransactionCount: function(),
  getTransactionFromBlock: function(),
  getTransactionReceipt: function(),
  getUncle: function(),
  getWork: function(),
  iban: function(iban),
  icapNamereg: function(),
  isSyncing: function(callback),
  namereg: function(),
  resend: function(),
  sendIBANTransaction: function(),
  sendRawTransaction: function(),
  sendTransaction: function(),
  sign: function(),
  signTransaction: function(),
  submitTransaction: function(),
  submitWork: function()
}

口座残高の表示:
> eth.getBalance("0xedf21069693886b60f56a51dae075e7385e4b959")
10800000000000000000

注:この数はまだ大きいと思いますが、実は彼はあまり以太坊を持っていません.インタフェースの戻りはすべて「」単位なので、10の18回は1 ethです.
> net
{
  listening: true,
  peerCount: 2,
  version: "3",
  getListening: function(callback),
  getPeerCount: function(callback),
  getVersion: function(callback)
}

注意:peerCountでは、現在のノードと他の2つのノードが接続ノードの構成情報を確立していることがわかります.
> admin
{
  datadir: "C:\\Users\\jk\\AppData\\Roaming\\Ethereum\\testnet",
  nodeInfo: {
    enode: "enode://363bbf6581acbfea6ee05f0de397277be3275e3df955b2a7c736a2bb2cbca4d6964d46b0a410efc0fc339872d3be61b82c9978fe2f965f9520efd2de36f2c9e3@10.192.93.219:30303",
    id: "363bbf6581acbfea6ee05f0de397277be3275e3df955b2a7c736a2bb2cbca4d6964d46b0a410efc0fc339872d3be61b82c9978fe2f965f9520efd2de36f2c9e3",
    ip: "10.192.93.219",
    listenAddr: "[::]:30303",
    name: "Geth/v1.8.11-stable-dea1ce05/windows-amd64/go1.10.2",
    ports: {
      discovery: 30303,
      listener: 30303
    },
    protocols: {
      eth: {
        config: {...},
        difficulty: 1048576,
        genesis: "0x41941023680923e0fe4d74a34bdac8141f2540e3ae90623718e47d66d1ca4a2d",
        head: "0x41941023680923e0fe4d74a34bdac8141f2540e3ae90623718e47d66d1ca4a2d",
        network: 3
      }
    }
  },
  peers: [{
      caps: ["eth/62", "eth/63", "par/1", "par/2", "pip/1"],
      id: "94c15d1b9e2fe7ce56e458b9a3b672ef11894ddedd0c6f247e0f1d3487f52b66208fb4aeb8179fce6e3a749ea93ed147c37976d67af557508d199d9594c35f09",
      name: "Parity/v1.9.2-beta-0feb0bb-20180201/x86_64-linux-gnu/rustc1.23.0",
      network: {
        inbound: false,
        localAddress: "192.168.199.137:62201",
        remoteAddress: "192.81.208.223:30303",
        static: false,
        trusted: false
      },
      protocols: {
        eth: {...}
      }
  }, {
      caps: ["eth/63"],
      id: "a147a3adde1daddc0d86f44f1a76404914e44cee018c26d49248142d4dc8a9fb0e7dd14b5153df7e60f23b037922ae1f33b8f318844ef8d2b0453b9ab614d70d",
      name: "geth-eth-monitor/uiuc-ropsten-0(research-scan.sprai.org)/v1.7.3-stable-70f500ca/linux-amd64/go1.9.1",
      network: {
        inbound: false,
        localAddress: "192.168.199.137:62449",
        remoteAddress: "72.36.89.11:30303",
        static: false,
        trusted: false
      },
      protocols: {
        eth: {...}
      }
  }],
  addPeer: function(),
  clearHistory: function(),
  exportChain: function(),
  getDatadir: function(callback),
  getNodeInfo: function(callback),
  getPeers: function(callback),
  importChain: function(),
  removePeer: function(),
  sleep: function github.com/ethereum/go-ethereum/console.(*bridge).Sleep-fm(),
  sleepBlocks: function github.com/ethereum/go-ethereum/console.(*bridge).SleepBlocks-fm(),
  startRPC: function(),
  startWS: function(),
  stopRPC: function(),
  stopWS: function()
}

鉱夫の方法:
> miner
{
  getHashrate: function(),
  setEtherbase: function(),
  setExtra: function(),
  setGasPrice: function(),
  start: function(),
  stop: function()
}