技術情報

Ethereumで複数ノードをつなげてプライベートネットワークを作ってみる

Ethereum

以前本Blog内にて各OS別Ethereumのインストール及び簡単な操作についてご紹介させて頂きました。今回は少しだけ進んで複数の端末から相互に接続し、プライベートネットワークを作ってみたいと思います。

前提

以降は端末2台による操作を想定し、それぞれ端末A/端末Bとします。また端末AはWindows、端末BはUbuntuを使用し作業を進めたいと思います。
※端末でOSを変えている事について深い意味はありません。せっかくなので前回までに学習した環境を使ってみます。

・端末A,BともにIPアドレスの取得を行います。
※今回は端末A:192.168.4.131 端末B:192.168.1.64とします。

・それぞれ端末にgethのインストールをします。
端末AのWindowsへのインストールについては以下以前の記事をご参照ください。

端末BのUbuntuへのインストールについては以下以前の記事をご参照ください。

・端末A,Bともにgethを実行するフォルダに以下内容にてgenesis.jsonを用意します。

・端末A,Bともにgethを実行するフォルダにtestフォルダを作成します。

gethの起動

まずはgethの起動を行います。複数ノードを接続する際は環境をあわせるため端末A、Bともに前提条件にて用意した同じファイル(genesis.json)を使用し起動します。

端末A,Bともに以下コマンドを実行します。

※–datadir:データ格納先

※–networkid:任意のネットワークID(1,2,3以外)
※–datadir:データ格納先
※–maxpeers:最大ピア数
※–nodiscover:ピアを自動接続させない

gethが起動されます。

ノード接続前確認

端末A,Bともに以下コマンドで接続数を確認して見ましょう。

双方とも接続数は0です。
また以下コマンドで接続ノード情報を確認して見ましょう。

双方とも接続情報はありません。

ノード接続

それではノードの接続に進みます。まずは端末A,Bそれぞれのノード情報を取得します。

端末A

端末B

端末A,B間ノードの接続を行います。
前述で取得したノード情報の”[::]”部分に前提条件で取得したIPアドレスを記述し、端末Aに対し端末Bのノード情報を端末B対し端末Aのノード情報をそれぞれ設定します。

端末A

端末B

ノード接続後確認

それぞれの端末で接続数、接続情報を確認して見ましょう。

端末A

端末B

端末A

端末B

双方端末の接続数が1、接続情報が設定されid及びremoteAddress等端末A,Bともに相手側の情報が見えるようになりネットワークが繋がりました!

まとめ

いかがでしたでしょうか。今回プライベートネットワークを構築するにあたり初めの一歩として2ノード接続を例にご紹介させて頂きましたが3、4ノードと拡張しさらに複数のノード接続が可能になるかと思います。
筆者もEthereumについては学習し始めたばかりでまだまだ入り口のご紹介となりますが、少しでもお役に立てたらと思います。

The following two tabs change content below.
naaak
新しいもの好きのエンジニア。現在のターゲットとしてBlockchain関連について勉強中。趣味は音楽、ツーリング。

Pickup post

  1. ブロックチェーンを活用した医薬品のデッドストック販売プラットフォーム PoC […
  2. ブロックチェーンの基本的な仕組み
  3. ブロックチェーンの技術:公開鍵暗号
  4. 【満席御礼】2018年3月1日開催 無料セミナー 《ブロックチェーンフェスティ…

Related post

  1. 技術情報

    超簡単なBlockchainプロトタイプを Golang で構築

    はじめにBlockchainの使い道や可能性として様々なユースケー…

  2. AWS Blockchain Templates

    技術情報

    【速習】AWS Blockchain Templatesを使ってHyperledger Fabric…

    tacckです。各クラウドでブロックチェーンの実行環境を構築するた…

  3. Blockchain 技術情報

    技術情報

    IBM bluemixで HyperLedger Fabricの環境を構築してみる

    6月上旬となり一年ですごしやすい日々が続くはずの北海道ですが、日々シラ…

  4. Blockchain 技術情報

    技術情報

    Raspberry Pi(ラズパイ)でEthereumを動かす

    はじめまして。IoT機器でブロックチェーンが世の中に偏在する世界を妄想…

  5. Ethereum

    技術情報

    Ethereum入門 – アカウントとマイニング

    前回はEthereumの概要についてお話しましたが、今回はUbuntu…

  6. Blockchain 技術情報

    技術情報

    DockerでHyperLedger Fabricの実行環境を構築する(v1.0.0-alpha向け…

    はじめまして。最近BlockChainを触り始めたzukaです。B…

Comment

  1. 本記事に対するコメントはまだありません

  1. 本記事に対するトラックバックはまだありません

最近の記事

  1. AWS Blockchain Templates

おすすめ記事

  1. ブロックチェーンの基本的な仕組み
  2. 【満席御礼】2018年3月1日開催 無料セミナー 《ブロッ…
  3. ブロックチェーンを活用した医薬品のデッドストック販売プラット…
  1. Aidemy 01

    トピックス/業界動向

    AIプログラミング学習サービスAidemy「ブロックチェーン実装×Python/…
  2. イベント情報

    イベント情報

    【参加無料】2018年1月24日 エンジニア向けブロックチェーン無料セミナー開催…
  3. whats-hyperledger

    ブロックチェーンとは

    Hyperledger入門 : Hyperledger(ハイパーレッジャー)って…
  4. ブロックチェーン用語集

    ブロックチェーン用語集

    P2P(ピア・ツー・ピア)
  5. Ethereum

    技術情報

    Ethereum入門 – アカウントとマイニング
PAGE TOP