RealPath:
WebPath:
2016/11/26 13:15 (JST) 更新
管理 >>

接続ピア情報

Contents

接続されているピア数

> net.peerCount
6

接続されているピア詳細

> admin.peers
[{
    caps: ["eth/62", "eth/63"],
    id: "01c…164",
    name: "Geth/SnaiLiuS/v1.5.2-stable-c8695209/windows/go1.7.3", ← 相手の環境情報
    network: {
      localAddress: "xxx.xxx.xxx.xxx:30303", ← 自分のIP:PORT
      remoteAddress: "yyy.yyy.yyy.yyy:12438" ← 相手のIP:PORT
    },
    protocols: {
      eth: {
        difficulty: 63018992914562290000,
        head: "0x3f…8c",
        version: 63
      }
    }
}, {
    caps: ["eth/62", "eth/63"],
    id: "d54…103",
    name: "Geth/v1.4.11-stable/linux/go1.6.3", ← 相手の環境情報
    network: {
      localAddress: "xxx.xxx.xxx.xxx:30303", ← 自分のIP:PORT
      remoteAddress: "zzz.zzz.zzz.zzz:18333" ← 相手のIP:PORT
    },
    protocols: {
      eth: {
        difficulty: 62362915270625220000,
        head: "0x29…68",
        version: 63
      }
    }
......

ピアの手動追加

ピアノードAにピアノードBを手動で追加する。

ピアノードBにて、まずIPアドレスを取得。

$ ifconfig
....
inet bbb.bbb.bbb.bbb
....

 
ピアノードBにて、enode を取得。

> admin.nodeInfo.enode
"enode://f6c43307f679953…ccd09b3f11ce03e9@[::]:30303?discport=0"

 
[::] の部分をIPアドレスに差し替える
"enode://f6c43307f679953…ccd09b3f11ce03e9@bbb.bbb.bbb.bbb:30303?discport=0"
これがノードの識別子になる。

 
ピアノードAにて、以下を実行

> admin.addPeer("enode://f6c43307f679953…ccd09b3f11ce03e9@bbb.bbb.bbb.bbb:30303?discport=0")

これでピアノードAとピアノードBが接続された。

ノードの追加確認

ノードA側

> admin.peers
[{
    caps: ["eth/62", "eth/63"],
    id: "f6c43307f679953…ccd09b3f11ce03e9",
    name: "Geth/v1.5.3-unstable-2c802399/linux/go1.6.3",
    network: {
      localAddress: "aaa.aaa.aaa.aaa:52399",
      remoteAddress: "bbb.bbb.bbb.bbb:30303"
    },
    protocols: {
      eth: {
        difficulty: 16384,
        head: "0xfc1c84c52c7157755f8a4641fffda75e31e090981340797db560cc06338ddc24",
        version: 63
      }
    }
}]

ノードB側

> admin.peers
[{
    caps: ["eth/62", "eth/63"],
    id: "c24216bc80e29d2…a0fb45d0071bb6525bf389",
    name: "Geth/v1.5.3-unstable-0d9a8207/linux/go1.7.3",
    network: {
      localAddress: "bbb.bbb.bbb.bbb:30303",
      remoteAddress: "aaa.aaa.aaa.aaa:52399"
    },
    protocols: {
      eth: {
        difficulty: 16384,
        head: "0xfc1c84c52c7157755f8a4641fffda75e31e090981340797db560cc06338ddc24",
        version: 63
      }
    }
}]

ピアノード接続の解除

> admin.removePeer("enode://f6c43307f679953…ccd09b3f11ce03e9@bbb.bbb.bbb.bbb:30303?discport=0")

のようにすれば該当ノードとの接続は解除されます。

以下のように @ 以降の省略も可。

> admin.removePeer("enode://f6c43307f679953…ccd09b3f11ce03e9")